STC15F2K60S2應(yīng)用筆記
之前在猶豫做機(jī)器人到底是用單片機(jī)控制還是ARM芯片,現(xiàn)在終于決定了,由于好多傳感器的電源電壓都是5V的,信號(hào)接受也是5V,于是決定部分傳感器由單片機(jī)控制,然后在與ARM控制器進(jìn)行通訊,將單片機(jī)與ARM控制器結(jié)合起來。但是不知為何,在設(shè)計(jì)單片機(jī)控制模塊的時(shí)候在對(duì)單片機(jī)型號(hào)進(jìn)行選型時(shí),也許是想嘗試新技術(shù)——選擇了2012年才開始供貨的STC15F2K60S2,其中有幾個(gè)原因:
1. 它的存儲(chǔ)容量大,考慮到之前用到的STC8952單片機(jī),flash才有8K,移植一個(gè)ucousII都不夠。
2. 不用外接晶振電路和復(fù)位電路,這將節(jié)省了電路板的空間。
3. 接口豐富,因?yàn)樾枰cARM進(jìn)行通訊,STC15F2K60S2有兩個(gè)獨(dú)立串口。
4. 有PWM控制輸出模塊,4個(gè)中斷,完全滿足機(jī)器人的電機(jī)驅(qū)動(dòng)和傳感器的控制。
5. 一般都是LQFN-44封裝,小指指甲那么大的面積,很容易手工焊接。
選定單片機(jī)型號(hào)后,把電路板設(shè)計(jì)好后,等到我去成都的電子元器件交易市場(chǎng)——城隍廟的時(shí)候,問了好多家店,都沒有這系列的芯片,原因是這塊芯片太新了,店家們都還沒有開始供貨。沒辦法,只有到淘寶上買,很便宜6.5元/片,我權(quán)衡了一下買了三片。剛拿到后就開始打算焊到板子上,這種貼片式封裝的我還是第一次焊,不過看過牛人焊過貼片式的芯片,無非就是先把引腳對(duì)齊;加焊錫固定并大量上錫;在用扁平的電烙鐵將焊錫除去,OK!
焊好后,因?yàn)槲抑坝蠸TC-ISP下載模塊,USB接口的,但是我按原理圖接上,TXD——RXD的原則,在www.stcmcu.com下載最新的STC-ISP(V6.33),這軟件改變的很多,增加了很多工具,對(duì)于開發(fā)人員很方面,就連延時(shí)函數(shù)都不用自己調(diào)試,直接給你生成匯編或者C代碼。STC15F2K60S2系列單片機(jī)集成開發(fā)環(huán)境還是keil,原來的keil中沒有STC系列單片機(jī)型號(hào),在新建工程時(shí)是不能選擇的,不過可以選擇Intel系列的代替,或者可以通過STC-ISP(V6.33)在keil庫(kù)中增加型號(hào),如下所示:
將下載線把單片機(jī)與PC連接之后,我下載程序時(shí),界面總是停在“正在檢測(cè)目標(biāo)單片機(jī)”(單片機(jī)完全斷電),可是并沒有像之前我下載到STC89C52一樣出現(xiàn)“握手連接,請(qǐng)上電”的提示,為了這個(gè)問題,我糾結(jié)了一天,懷疑是我的電路設(shè)計(jì)錯(cuò)了?引腳連接錯(cuò)了?單片機(jī)買到假貨了?一天的時(shí)間,我終于下載進(jìn)去了,首先給大家看看手冊(cè)上有說明:
我已經(jīng)把單片機(jī)冷啟動(dòng)了,這個(gè)問題不存在。于是在檢測(cè)目標(biāo)單片機(jī)的時(shí)候,我無意間給單片機(jī)上電,天哪!!程序居然下進(jìn)去了,而且是秒下,看到板子上的器件開始正常工作了,當(dāng)時(shí)驚喜萬分,這下可以開始后面的工作了。