小系統,指的是的用少的元件組成的單片機可以工作的系統。一般在設計小系統的時候分為這四種必要的電路,分別是1、電源供電電路;2、單片機復位電路;3、時鐘振蕩電路;4、程序的下載接口電路。這次基于我們研發的WiFi小車51核心控制板的小系統原理圖來講一下51單片機的小系統。
WiFi小車51核心控制板使用的單片機是STC15W4K32S4系列單片機,這個系列單片機為寬電壓單片機,指的是工作電壓寬它的工作電壓可為2.5V-5.5V,為了方便大家使用我們選擇了與多核心實驗箱同款的單片機IAP15W4K61S4,具有4K的SRAM和61KB的Flish程序存儲空間,帶有8路PWM其中包含6路15位的PWM和2路CCP,4個串行通信接口,5個內部定時器和8路10位的ADC通道。這款單片機是可以直接在線對程序進行仿真調試的,方便開發和學習。
電源供電電路對于一個完整的電子產品來講,首先面臨的問題就是系統的供電,所以電源是整個系統平穩運行的基礎。在設計的時候會在單片機每個電源引腳旁邊放上一個濾波電容來保障輸入到單片機電源引腳的電壓是穩定的,若單片機的時鐘頻率較高,建議這處的電容設置成0.01uF;若單片機的時鐘頻率較低,建議設置為0.1uF。
復位電路的作用是給單片機復位,使單片機恢復到起始狀態程序從頭開始執行,好比電腦在使用過程中出現了死機的情況,按下重啟按鍵電腦內部程序從頭開始運行。單片機也一樣,當單片機在工作過程中也會受到環境等因素出現程序跑飛的現象。從單片機的數據手冊上得知復位電路的工作原理是在需要復位的時候給單片機的復位引腳輸入兩個機器周期以上的復位信號。這個復位信號分兩種,一種是高電平復位,一種是低電平復位。如下圖這兩種復位電路左側為低電平復位電路,右側是高電平復位。具體選用那種就需要看所使用的單片機是那種復位電路,原理都是一樣的只是復位信號不同,而51單片機常用的是低電平復位信號。
由圖中可以看出來這兩種復位電路是由電容和電阻串聯構成的,不同的是我們考慮電容在直流中為短路的情況下單片機的復位引腳所接入的電平信號不一樣。高電平復位電路中復位引腳接的是低電平信號,反之低電平復位電路引腳接高電平。復位電路通電之后由于電容要進行充電所以RST端的電壓并不是突變的,如在高電平復位電路中,系統一上電RST腳將會出現一段時間的高電平,而且這個高電平持續的時間是由復位電路的RC值決定的,所以選用合適的組合的RC值就可保證單片機能夠可靠的復位。通常會選用0.1uF的電容和10K歐姆的電阻值,在工作電壓是5V的情況下電容充滿電的時間大概為1ms,這1ms的充電時間遠大于了單片機的兩個機器周期。在這兩種復位電路中還包含了自動復位電路和手動復位電路,復位電路在系統上電的時候會完成一次復位,除此之外可以通過復位電路上的按鍵來實現手動復位,手動復位的原理是按下按鍵后將電容器兩端短路直接將復位信號輸入到RST引腳來實現復位。
時鐘震蕩電路:前面的電源電路比較好理解,但是什么事時鐘電路呢?它的作用是什么呢?其實時鐘震蕩電路在單片機中的作用就像是人的心臟一樣,每時每刻都不斷的跳動著,所以時鐘電路是是為單片機內部各部分正常的工作提供驅動力。WiFi小車上的時鐘震蕩電路如下圖所示。
經常的我們的震蕩電路使用石英晶體振蕩器作為單片機的時鐘源,如果有時鐘信號的時候也可以直接輸入到TXAL1引腳。如果使用無源晶振的話在單片機的XTAL1和XTAL2腳接上一個石英晶體震蕩器,它在通電的時候會產生特定的頻率的震蕩,后通過電路可以輸出一個頻率穩定的時鐘信號來驅動單片機工作。
時鐘電路還要用到兩個電容C1,C2。這兩個電容和內部電路共同組成一定頻率的震蕩,電容起固定頻率的作用。一般在設計的時候要注意是晶振、外部電容器與單片機之間的走線要盡量短,如果線太長,會使它對干擾變得非常敏感,而且還會給振蕩器增加寄生電容。
在WiFi小車控制板上用的單片機其實內部自帶了一個RC振蕩器作為時鐘源來 ,但是它也可以使用外部晶振。一般RC振蕩器容易發生溫漂,使時鐘精度受到影響,所以我們在這里依然使用了外部的石英晶體振蕩器作為時鐘振蕩電路了。
還有一個部分就是單片機下載程序的接口,這個就根據使用不同型號的單片機和不同的下載方式來決定的。WiFi小車51核心控制板中使用的單片機是可以使用串口進行下載和仿真的,所以需要留出一個串口作為下載程序的接口,這個引出的下載口除了可以下載程序外,還是普通的串口,可以向普通的串口一樣做串口通信使用。
有了這四種電路單片機就可以穩定的工作啦,我們在WiFi小車上接上我們的RGBLED燈、超聲波測距、電機驅動電路、按鍵等外圍設備,就可以用單片機控制和通信啦!