我想這是我出過的,最通俗易懂,同時還詳細的教程


簡介:基于STC8G2K64S4單片機的51單片機開發(fā)板。

用它,既可以學(xué)習(xí)全部的單片機基礎(chǔ)知識,又可以拓展出很多的產(chǎn)品級項目。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

學(xué)單片機就必須要有一個單片機開發(fā)板,道理很簡單:如果你要學(xué)車,你只看如何開車的視頻教程,而不去親自上車,那估計一萬年也學(xué)不會。

那什么樣的開發(fā)板,適合新手呢?

1.一定要可以學(xué)習(xí)和實操全部的單片機基礎(chǔ)知識。

這些基礎(chǔ)知識包含:

IO口、PWM、定時器、ADC模數(shù)轉(zhuǎn)換、串口通信、I2C通信、SPI通信、并口通信、看門狗、低功耗電源管理等。

宏晶STC51單片機無疑是最適合的,它非常簡單,網(wǎng)上資料超級豐富,特別適合初學(xué)者。

2.除了學(xué)到上面的基礎(chǔ)知識外,還可以在開發(fā)板上做一些項目出來。

好多人拿普通開發(fā)板學(xué)習(xí)以后,感覺都學(xué)會了,卻又還感覺什么都做不了。

一個人感覺也就算了,偏偏是幾乎所有人都是這樣的感覺,你說奇怪不奇怪?

究其原因,就是缺少項目的操練。

在實際應(yīng)用中,你做的系統(tǒng),首先外觀上要整潔。

也不能有太多線繞來繞去,否則不但穩(wěn)定性差,也不是個好產(chǎn)品。

考慮到以上兩點。

我們試著設(shè)計出一款,可以完美解決以上兩個問題的單片機開發(fā)板。

教學(xué)正式開始?。?/strong>

基礎(chǔ)知識拓展

就上面提到的兩點,我再展開說說[無辜笑]

Ⅰ、基礎(chǔ)知識板塊

1、IO口

IO口是輸出輸出口。

單片機歸根結(jié)底,耍的就是IO,作為初學(xué)者,IO口是開啟新世界的鑰匙,必學(xué)!

輸入口學(xué)習(xí)

作為“輸入口”,“按鍵”更適合初學(xué)者學(xué)習(xí)。

因為按鍵在教我們理解引腳的輸入時,功不可沒!

不論“觸摸”多么占據(jù)社會的風(fēng)潮,按鍵是必須放到開發(fā)板上的。

放多少個呢?多了浪費,少了不夠,我們就放3個按鍵到開發(fā)板吧,可以實現(xiàn)大部分的電子項目了。

輸出口學(xué)習(xí)

作為“輸出口”學(xué)習(xí),沒有比“LED”更適合初學(xué)者的了。

多少初學(xué)者,因為點亮一個LED,而興奮不已。

為了增加趣味性,這里我們使用紅黃綠3種顏色,3個LED。

既可以實現(xiàn)3LED的流水燈,又可以模仿紅綠燈系統(tǒng)的運行過程,熟悉C語言的執(zhí)行流程。

2、PWM脈寬調(diào)制

PWM輸出,也是初學(xué)者必須掌握的一種知識,可用于呼吸燈、電機控制舵機控制等場合。

利用上面的LED,可以做呼吸燈實驗,這個是利用調(diào)PWM的占空比實現(xiàn)的。

再來一個調(diào)頻!加一個無源蜂鳴器。

記住,是無源的,咱不要有源的。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

無源于有源的區(qū)別

無源蜂鳴器配合PWM,可以輸出do ri mi fa so la xi音調(diào),制作音樂不是夢!

總結(jié)

用IO口模擬PWM,可以增加初學(xué)者對PWM原理的理解。

模擬PWM后,單片機恐怕再不能干其它事情,所以,如果單片機有硬件PWM,那就完美了…

先學(xué)模擬PWM理解原理,再使用硬件PWM做更多項目。

3、定時器、UART串口、看門狗

這幾項內(nèi)容,是普通單片機的標(biāo)配,當(dāng)然STC單片機本身有。

4、ADC模數(shù)轉(zhuǎn)換

萬物互聯(lián),傳感器大爆發(fā)。

ADC作為一種可以把模擬電壓轉(zhuǎn)換成數(shù)字電壓的外設(shè),越來越需要

所以我們還需要找一款自帶ADC外設(shè)的單片機。

用ADC做什么實驗學(xué)習(xí)呢?

可以給我們的產(chǎn)品中加一個鋰電池,用ADC來測量電池電壓。

開發(fā)板加鋰電池,這個主意不錯,可以讓我們的開發(fā)板制作更多移動便攜項目。

5、I2C口

以前,我們學(xué)習(xí)I2C通信,總是喜歡用24C02來教學(xué)。

但是,STC單片機本身已經(jīng)自帶EERPOM,再在電路中接一個24C02,總感覺哪里不妥。

不如,我們找一款I(lǐng)2C通信的其它芯片。

選3軸加速度傳感器吧,有了它,不僅可以學(xué)習(xí)I2C通信,還可以給我們帶來更多的無限創(chuàng)意。

6、SPI口

考慮到產(chǎn)品的趣味性,這個開發(fā)板,我們必須帶一個屏幕。

屏幕上要顯示漢字,那就必須要一顆存儲容量足夠大的外部FLASH芯片,用來存放漢字的字模。

這里我們選擇SPI口通信的25Q64,8M容量,可以放好幾種不同字體、不同像素大小的字庫。

7、并口通信

以上提到的UART串口、I2C口、SPI口,都是串行通信的典范。

幾乎所有的外部傳感器和物聯(lián)網(wǎng)通信模塊,都使用這3種其中的一種。

為了讓初學(xué)者更好地理解串行通信和并行通信的區(qū)別,我們必須要加一個并行通信的器件。

我們選擇8位并行通信的液晶屏,12864就是8位并行通信。

不過,12864和彩色液晶屏比起來,效果差了點

8位并口驅(qū)動的彩色TFT,接線方法和12864一模一樣。

學(xué)習(xí)同樣的知識,不如來個效果好的吧。

常見的開發(fā)板上配的TFT,是2.4英寸、2.8英寸、3.2英寸,它們的分辨率都是240*320,都是普通的正視屏,稍微歪著看,就“走色了”。

這種效果的屏幕,做產(chǎn)品已經(jīng)不被人接受。

就好像你用了固定硬盤后再用機械硬盤的感覺是一樣的。

320*240的分辨率,對51單片機來說,其實已經(jīng)很吃力了,我們就不追求更高分辨率的屏幕了。

但是,我們知道,在同樣的分辨率下,越小的屏幕,越清晰,效果越好

所以,我們從這一點入手,選擇2.0英寸的屏幕。

這次,必須要選擇IPS多角度屏。

這種屏,才是我們現(xiàn)在人們可以接受的。

我們既然要在開發(fā)板上做項目,那就必須做成產(chǎn)品級的。

8、低功耗電源管理

這個就不必多說了,低功耗就是電子產(chǎn)品的趨勢。

所以,我們需要單片機帶低功耗管理單元,以方便初學(xué)者學(xué)習(xí)。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

以上呢,就是我們對開發(fā)板的要求。

總結(jié)一下我們這次準(zhǔn)備做的項目思路。

我們選擇STC最新推出的STC8G2K64S4,作為開發(fā)板的主控芯片。

這款單片機,帶10位ADC、硬件PWM、硬件I2C、硬件SPI、4個UART串口、5個16位定時器、低功耗管理單元。

簡直是為初學(xué)者量身定制的單片機。

Ⅱ、產(chǎn)品板塊

普通開發(fā)板,考慮到開發(fā)需求,會把所有的引腳都用排針引出,又不能被屏幕擋住,所以做的個頭比較大。

但是,用排針引出的那些引腳,絕大多數(shù)都已經(jīng)被開發(fā)板上的芯片使用了,很少有人在使用這些引腳連接外部模塊。

其實,我們只需要引出開發(fā)板上芯片沒有使用過的單片機引腳就可以。

而且呢,我們可以把排針或者排母放到電路板的一面,把液晶屏放到電路板的另一面。

這樣就可以縮小電路板的體積,更加地貼近實際的產(chǎn)品。

另外,開發(fā)板上引出的引腳,要有普通IO、PWM口、UART串口、I2C口、SPI口、ADC模數(shù)轉(zhuǎn)換口。

以方便連接更多的外部傳感器和通信模塊。

Ⅲ、最后的補充

鋰電池要拔下來,再配個充電器?

不不不,那是古老的電子產(chǎn)品。

我們給開發(fā)板上加一個鋰電池充電芯片就可以了,比如TP4056。

再加一個USB轉(zhuǎn)TTL芯片CH340,實現(xiàn)程序下載和串口通信。

STC程序下載麻煩,需要強制開發(fā)板斷電和上電?

不要緊,我們給他加一個按鍵電源開關(guān),只需輕輕一點,就可以實現(xiàn)下載,還能當(dāng)做復(fù)位按鍵,一舉兩得。

實物展示

綜合以上考慮因素,開發(fā)板的原理圖就出爐了。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

做好PCB。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

打印個3D外殼上去。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

實測,3D打印的外殼,不耐摔??!

只要掉在地上,摔爛的幾率非常大!

不要問我是怎么知道的…

既然要做產(chǎn)品級,我們還是找個模具廠做殼吧,雖然有點貴,但模具做出的殼子,手感和質(zhì)量都是非常OK的,也是非常瘦的…

背面的那些引腳,不如再把引腳名稱加上去,方便我們連接外部模塊。

如下所示:

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

因為背面外殼空間有限,只能寫它的IO引腳名稱。

那些復(fù)用的引腳名稱,就看下面這張圖。

我要的UART、I2C、SPI等,應(yīng)有盡有。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

開發(fā)板做好了,當(dāng)然還要做好對應(yīng)的例程代碼,用于學(xué)習(xí)。

首先,針對全部基礎(chǔ)知識,做好基礎(chǔ)例程。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

基礎(chǔ)例程學(xué)完了,那總得做點項目吧?來,應(yīng)用例程也做好。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

想知道應(yīng)用例程和實際產(chǎn)品相差多大?來,上圖。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

附件下載

可以參考一下,或者找我發(fā)“51單片機”。

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

1單片機8個花樣流水燈程序匯編語言,51單片機24位花樣流水燈編程?"

PCB走線圖


如果你喜歡這個文章或者覺得非常有用,歡迎點贊、轉(zhuǎn)發(fā)、關(guān)注一下~

更多推薦:

1.自制 | 迷你示波器,10M采樣

2.10塊錢的DIY | 自制充電寶

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 sumchina520@foxmail.com 舉報,一經(jīng)查實,本站將立刻刪除。

相關(guān)新聞

聯(lián)系我們

聯(lián)系我們

400-9010-860

在線咨詢:點擊這里給我發(fā)消息

微信:85018612

商夢建站客服

工作時間:周一至周六

9:00-18:30,節(jié)假日休息

關(guān)注微信
關(guān)注微信
分享本頁
返回頂部