在中學(xué)物理電路知識(shí)中,用簡易電路圖表示電路的實(shí)際連接情況,而在單片機(jī)硬件連接上,我們則用原理圖來表示單片機(jī)的引腳與開發(fā)板板上的芯片等相關(guān)硬件的引腳通過電路板上的覆銅線兩者相連。
1.回顧
單片機(jī)入門往往是從點(diǎn)亮一盞燈開始,我們在中學(xué)時(shí)做物理電路實(shí)驗(yàn)用電池點(diǎn)亮燈泡時(shí),只是隨便將電燈泡+電阻+開關(guān)+電池通過導(dǎo)線連成回路接通開關(guān)就可以點(diǎn)亮了。
中學(xué)點(diǎn)燈電路圖
2.電壓表示
在電子電路中,我們都是采用發(fā)光二極管(LED)來發(fā)揮它在單片機(jī)應(yīng)用中的作用,LED引腳有正負(fù)極之分,接反則不亮。在單片機(jī)原理圖中,我們習(xí)慣用“丁”字型圖標(biāo)加注釋“+5”來表示此處的電壓有5V,用長短不一樣的四杠直線的圖標(biāo)來表示此處的電壓為0V,又或者說此處接地,此圖標(biāo)也可加標(biāo)注“GND”來表示。
3.點(diǎn)燈實(shí)踐
我們準(zhǔn)備好一盞LED和一個(gè)1K規(guī)格的色環(huán)電阻,在你的開發(fā)板上找到引出來的兩個(gè)引腳(5V,GND),5V那端接LED 正極,LED負(fù)極接GND,這時(shí)的電路連接情況為: 5V端口→電阻→LED正極→LED負(fù)極→GND端口,燈就被點(diǎn)亮了。
燈被點(diǎn)亮
4.點(diǎn)燈原理
因?yàn)長ED正極電壓高,負(fù)極電壓低,產(chǎn)生壓差并且電路是接通狀態(tài)就會(huì)有電流流過LED驅(qū)動(dòng)它發(fā)光,電阻的作用是為了限流防止LED被燒壞。如果我們把GND端口換成去接5V端口會(huì)發(fā)現(xiàn)燈不亮,這是因?yàn)長ED正負(fù)極兩端電壓一樣,沒有壓差就沒有電流經(jīng)過也就點(diǎn)不亮燈。
燈無法點(diǎn)亮
5.單片機(jī)引腳點(diǎn)燈原理
巧的是,單片機(jī)的引腳IO端口可以通過程序燒寫進(jìn)去來控制此引腳是想變成5V電壓還是0V電壓。
而通過此電路接法: 5V→電阻→LED正極→LED負(fù)極→單片機(jī)IO端口 就可以控制LED的亮滅了。在《手把手教你學(xué)51單片機(jī)》文檔的2.3節(jié)有詳細(xì)講解。
此外要說明的是單片機(jī)的引腳電壓有且只有兩種狀態(tài):高電平(5V)或低電平(0V),在程序中又用1來表示高電平,用0表示低電平。
燈受單片機(jī)引腳控制亮滅
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會(huì)寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個(gè)爬蟲的Python編程課程
只會(huì)語法寫不出代碼?手把手帶你寫100個(gè)編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程