久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 19911|回復(fù): 11
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)一些簡單應(yīng)用的詳細(xì)教程與源程序下載

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
實(shí)驗(yàn)1 點(diǎn)亮第一盞燈
實(shí)驗(yàn)2 跑馬燈
實(shí)驗(yàn)3 呼吸燈
實(shí)驗(yàn)4 鍵盤掃面
實(shí)驗(yàn)5 定時(shí)器
實(shí)驗(yàn)6 外部中斷
實(shí)驗(yàn)7 串口通信
實(shí)驗(yàn)8 LCD1602
實(shí)驗(yàn)9 內(nèi)置AD
實(shí)驗(yàn)10 內(nèi)置EEPROM
實(shí)驗(yàn)11 AT2402(外部EEPROM)
實(shí)驗(yàn)12 PWM輸出
實(shí)驗(yàn)13 利用PWM做DA輸出
實(shí)驗(yàn)14 PCA定時(shí)器
實(shí)驗(yàn)15 溫度計(jì)DS18B20
實(shí)驗(yàn)16 SPI總線
實(shí)驗(yàn)17 蜂鳴器
實(shí)驗(yàn)18 LCD12864_并行方式
實(shí)驗(yàn)19 LCD12864_串行方式
實(shí)驗(yàn)20 μCOS系統(tǒng)

教程目錄:


STC12系列單片機(jī)是基于8051內(nèi)核的單時(shí)鐘/機(jī)器周期的增強(qiáng)型單片機(jī),指令代碼完全兼容傳統(tǒng) 8051,但速度快 8~12 倍。內(nèi)部集成 MAX810專用復(fù)位電路,2 路 PWM,8 路高速10 位 A/D 轉(zhuǎn)換(25 萬次/秒),針對電機(jī)控制和強(qiáng)干擾場合。詳細(xì)的STC 12 系列單片機(jī)簡介請參見 STC官方提供的芯片手冊。 開發(fā)板選用的單片機(jī)型號是 STC  12C5A60S2,這款芯片內(nèi)部幾乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊,非常適合初學(xué)者使用。下面來了解一下該款單片機(jī)內(nèi)部結(jié)構(gòu)中值得初學(xué)者注意的地方:

總結(jié)下來,STC 12 系列單片機(jī)片內(nèi)包含多種模塊,初學(xué)者可以通過該款單片機(jī)學(xué)會使用數(shù)據(jù)采集和控制中的常用模塊,為日后學(xué)習(xí)其他系列的單片系統(tǒng)鋪路。
使用本技術(shù)手冊,需要一定的 C 語言基礎(chǔ),還有硬件調(diào)試基礎(chǔ)。有了這些基礎(chǔ),在接下來的學(xué)習(xí)中,讀者會發(fā)覺單片機(jī)的入門更加的得心應(yīng)手。
本手冊正是根據(jù)STC 12 系列單片機(jī)的特點(diǎn),結(jié)合實(shí)例逐一介紹其功能,并附上我們?yōu)樵撻_發(fā)板編寫的例程中重要部分的解釋,希望能為讀者提供進(jìn)入單片機(jī)世界捷徑。我們會不定期對手冊進(jìn)行勘誤和更新,讀者若發(fā)現(xiàn)本手冊中有不完善或錯(cuò)誤的地方,歡迎向我們提出您寶貴的意見,我們會根據(jù)您的意見對手冊進(jìn)行修改。

第一章  硬件結(jié)構(gòu)
1.1 BlueSkyC51開發(fā)板簡介
BlueSkyC51開發(fā)板是一款迷你型的開發(fā)板,其外觀尺寸只有 8.5cm*7cm,如圖1.1.1。板載模塊如圖 1.1.2。


圖 1.1.2   BlueSkyC51 板載模塊介紹

這款 BlueSkyC51 開發(fā)板的設(shè)計(jì)考慮到成本和功能兩個(gè)方面,結(jié)合實(shí)際使用 的經(jīng)驗(yàn),務(wù)求給讀者提供多種模塊和通訊協(xié)議的學(xué)習(xí)機(jī)會,BlueSkyC51 開發(fā)板 上的資源如下:
(1)STC 12C5A60S2,PDIP-40;
(2)1 個(gè)電源指示燈;
(3)8 個(gè) LED;
(4)1 個(gè) IIC 接口的 EEPROM 芯片,24C02,容量 256 字節(jié);
(5)1 個(gè)單總線控制的 DS18B20 溫度傳感器;
(6)1 個(gè)蜂鳴器;
(7)4*4 矩陣鍵盤;
(8)1 個(gè) MiniUSB 接口、PL2303,用于程序下載、串口通信和供電;
(9)1 組 5V 電源接口;
(10) 1 個(gè)復(fù)位按鈕;
(11) 1 個(gè) 1602 液晶接口和液晶;
(12) 1 個(gè) 12864 液晶接口;
(13) 4 組 I/O 口的引出擴(kuò)展口;
(14) 1 個(gè)電源開關(guān)。

接下來將詳細(xì)介紹 BlueSkyC51 開發(fā)板的各個(gè)部分。
1.2              BlueSkyC51 開發(fā)板硬件詳解
1.2.1               MCU
BlueSkyC51 開發(fā)板選擇的是 STC 12C5A60S2 作為 MCU。它內(nèi)部集成 MAX810 專用復(fù)位電路,2 路 PWM,8 路高速 10 位 A/D 轉(zhuǎn)換(25 萬次/秒),幾 乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊,因此我們選擇它作為開發(fā)板的MCU。MCU 部分原理圖如圖 1.2.1.1。



1.2.2  LED

BlueSkyC51 開發(fā)板上共有 8 個(gè) LED,它們是共陽極連接,陰極分別接在 P0 的 8 個(gè) I/O 口上。但開發(fā)板中不直接將 VCC 接上,而是當(dāng)讀者需要使用LED 做 實(shí)驗(yàn)的時(shí)候通過跳線帽將 VCC 與排阻公共端接上。這樣做主要是因?yàn)閮蓚(gè)液晶 接口使用了 P0.5、P0.6、P0.7 作為控制端,而且讀者在開發(fā)板外部擴(kuò)展功能時(shí)會使用到 P0 口,這時(shí)我們可以拔掉跳線帽,LED 就不會產(chǎn)生影響。該部分電路原 理圖如圖 1.2.2.1。


1.2.3 AT24C02 IIC 接口 EEPROM
BlueSkyC51 開發(fā)板上帶有 AT24C02,它是使用 IIC 協(xié)議的 EEPROM,容量2048K 字節(jié),足夠讀者進(jìn)行普通的應(yīng)用。讀者也可以選擇更大容量的芯片,但芯 片必須兼容 24C02~24C512 全系列的 EEPROM。該部分電路原理圖如圖 1.2.3.1。


1.2.4  DS18B20 單總線溫度傳感器
BlueSkyC51 開發(fā)板上帶有 DS18B20 溫度傳感器,它使用單總線協(xié)議,數(shù)據(jù) 引腳(18B20_DQ)通過跳線帽與 MCU 的 P1.1 連接。要使用該模塊只需要將跳線 帽接上即可。該部分電路原理圖如圖 1.2.4.1。


1.2.5  蜂鳴器
BlueSkyC51 開發(fā)板上帶有 1 個(gè)蜂鳴器,它通過跳線帽與 MCU 的 P1.4 連接。 要使用該模塊只需要將跳線帽接上即可。該部分電路原理圖如圖 1.2.5.1。

1.2.6 4*4 矩陣鍵盤
BlueSkyC51 開發(fā)板上帶有 4*4 的矩陣鍵盤,它們分兩組連接到 MCU 的
P3.0~P3.3 和 P3.4~P3.7 上。該部分電路原理圖如圖 1.2.6.1。


1.2.7   USB 串口、PL2303、電源
BlueSkyC51 開發(fā)板上帶有 1 個(gè) USB 串口和 PL2303,它們結(jié)合起來僅需要 一條 USB 線即可作為程序下載、代碼調(diào)試和供電使用。開發(fā)板同時(shí)提供 5V 電 源引出排針,方便使用者沒有外部 5V 電源時(shí)使用。
該部分電路原理圖如圖 1.2.7.1。


1.2.8  1602 液晶接口
BlueSkyC51 開發(fā)板上帶有 1602 液晶接口,其接口分配如圖 1.2.8.1 所示, 第三章第 8 節(jié) LCD1602 實(shí)驗(yàn)中將會詳細(xì)介紹液晶的使用方法,這里不詳細(xì)敘述。


1.2.9  12864 液晶接口
BlueSkyC51 開發(fā)板上帶有12864 液晶接口,其接口分配如圖 1.2.9.1 所示,

至此,BlueSkyC51 開發(fā)板上的硬件就介紹完畢,通過以上介紹希望幫助讀者對開發(fā)板有更深入的了解和更好地進(jìn)行下面的軟件設(shè)計(jì)。


第二章 開發(fā)環(huán)境及程序下載

本章將結(jié)合一個(gè) STC 12C5A60S2 的 KEIL 實(shí)例,圖文并茂的給大家介紹 Keil uVision3 軟件的使用。并簡單介紹 uVision3 的一些使用技巧,希望通過這章的內(nèi) 容,能讓一個(gè)生手變成熟手。至少能自己利用 uVision3 編寫 STC 12C5A60S2 的 代碼,并在 STC 12C5A60S2 上跑起來。


2.1 uVision3簡介

uVision3 源自德國的 KEIL 公司,uVision3  集成了業(yè)內(nèi)最領(lǐng)先的技術(shù), uVision3 集成開發(fā)環(huán)境與 RealView 編譯器, 自動(dòng)配置啟動(dòng)代碼,集成Flash 燒寫模塊,強(qiáng)大的 Simulation 設(shè)備模擬,性能分析等功能,與 ARM 之前的工具 包 ADS 等相比,uVision4 編譯器的最新版本可將性能改善超過 20%。



2.2 新建 uVision3工程

首先,按照 BlueSkyC51 配套資料提供的安裝方法安裝好 Keil uVision3 軟件。 接下來打開 uVision3 軟件,再點(diǎn)擊“工程”->“新建工程”,如下圖 2.2.1。



圖 2.2.1    新建 uVision3 工程


彈出對話框,如圖 2.2.2。


圖 2.2.2  保存工程對話框

新建一個(gè)文件夾 Test,然后把工程名字設(shè)為 test 點(diǎn)擊保存。彈出選擇器件的 對話框,選擇開發(fā)板使用的 MCU 芯片。上面介紹開發(fā)板上 MCU的簡介的時(shí)候 說過 BlueSkyC51 開發(fā)板選擇的 MCU 是 STC 公司生產(chǎn)的 STC 12C5A60S2,但細(xì) 心的讀者會發(fā)現(xiàn)器件的對話框里找不到這款芯片。

在這里筆者要跟大家說明一下原因,提供給我們器件型號選擇的是安裝目錄(這里假設(shè)是 C:\Keilc51)下的 UV3 文件夾內(nèi)的 UV3.cdb 這個(gè)文件。我們可以 到 STC 的官方網(wǎng)站:stcmcu點(diǎn)com上下載一個(gè) STC 官方提供的 UV3.cdb(BlueSkyC51 開發(fā)板資料中已提供),把原來的這個(gè)文件備份后用新下 載的文件將其覆蓋。再按照上面步驟新建工程后就會發(fā)現(xiàn)在 STC 12C5A16S2 Series 目錄下有我們需要的 STC 12C5A60S2 型號選擇了,如圖 2.2.3。 本節(jié)具體操作請參照教學(xué)視頻。



圖 2.2.3  器件選擇界面(1)

而經(jīng)筆者測試,若不更換 UV3.cdb,在原來的器件中也可以選擇 Atmel 公司 的 AT89c52 這款芯片來代替,如圖 2.2.4。這是因?yàn)檫@兩款芯片都兼容傳統(tǒng)的 8051 內(nèi)核,因此指令集大致相同,但筆者建議還是選擇官方提供的標(biāo)準(zhǔn)器件較為妥當(dāng)。

圖 2.2.4  器件選擇界面(2)


選擇好器件后就按下“確定”按鈕,uVision3 會彈出一個(gè)對話框,詢問是否加載啟動(dòng)代碼到當(dāng)前工程下面,這里選擇“是”。如下圖 2.2.5。
圖 2.2.5   提示界面

啟動(dòng)代碼是一段和硬件相關(guān)的匯編代碼,在上面點(diǎn)擊了是以后,uVision3 就 把啟動(dòng)代碼 STARTUP.A51 加入到了剛剛新建的工程下面.如圖2.2.6。

圖 2.2.6   工程初步建立

到這里,就可以開始編寫代碼了。這時(shí)需要新建一個(gè)存放即將編寫的代碼的

C 文件,點(diǎn)擊菜單欄“文件”->“新建”,或(新建)按鈕,這時(shí)文本編輯界 面變成剛剛新建的文件的內(nèi)容。當(dāng)然,里面什么代碼都沒有。


接著,按“文件”->“保存”或(保存)按鈕,這時(shí)會彈出一個(gè)保存文 件的對話框,保存文件名為 test.c(文件名可以任意取,但后綴一定要.c),再按 “保存”,如圖 2.2.7。




圖 2.2.7  文件保存對話框

接著把 test.c 這個(gè)文件添加到工程中,接著可以雙擊 Project Workplace 中的 Target 1 目錄下的 Source Group 1 目錄,彈出文件選擇對話框,選擇剛才創(chuàng)建的 test.c,按 add,即可把它添加到工程中。然后按 Close 關(guān)閉對話框。如圖 2.2.8。


圖 2.2.8   將文件添加到工程

點(diǎn)擊(Option for Target)按鈕,選擇“輸出”選項(xiàng)卡,把“創(chuàng)建 HEX 文 件”選項(xiàng)勾上,這是因?yàn)槲覀兙帉懙拇a編譯后需要生成 HEX 文件才能下載到 單片機(jī)里執(zhí)行。若讀者想把執(zhí)行文件輸出到你想要的目錄可以按“選擇目標(biāo)路徑” 選擇目錄,默認(rèn)是輸出在工程所在的文件夾。如圖2.2.9。



圖 2.2.9   設(shè)置輸出屬性

設(shè)置好輸出屬性后,若我們已經(jīng)在 test.c 中輸入了我們想要代碼且代碼正確 的話,按下(編譯)按鈕后就會在工程所在目錄下生成一個(gè)test.hex 文件,

這個(gè)就是要下載到單片機(jī)上的文件。

2.3程序下載

我們通過 STC-ISP 這個(gè)軟件(BlueSkyC51 開發(fā)板資料中已提供)把編譯生 成的 hex 文件下載到單片機(jī)中,下面來為大家詳細(xì)介紹操作方法。

打開 STC-ISP4.86 后界面如圖 2.3.1。

圖 2.3.1  STC-ISP 界面


第一步:MCU Type 選擇 STC12C5A60S2,如圖 2.3.1 中①;


第二步:點(diǎn)擊“打開程序文件”,選擇要下載到單片機(jī)的 hex 文件,按確定,如圖 2.3.1 中②;


第三步:最高波特率選擇 115200,最低波特率選擇 1200,如圖 2.3.1 中③;


第四步:利用 USB 線將單片機(jī)和 PC 接上,并安裝好 PL2303 驅(qū)動(dòng)后 PC 就會找到相應(yīng)串口,至于串口號可以查看設(shè)備。右鍵點(diǎn)擊“我的電腦”->“管 理”->“設(shè)備管理器”,點(diǎn)開“端口”目錄下,會出現(xiàn)“Profilic USB-to-Serial Comm Port (COM*)”(*號為串口號),這是就可以在 STC-ISP 的“COM” 選項(xiàng)后選擇對應(yīng)的串口號了,如圖 2.3.2,圖 2.3.1 中④;


第五步:點(diǎn)擊“Download/下載”,等進(jìn)度條讀取完畢,即為下載完畢,如圖 2.3.1⑤。
另外,如果讀者想點(diǎn)擊“Download/下載”按鈕后讓 STC-ISP 自動(dòng)幫你載入 更新后的程序文件,請把“每次下載前重新調(diào)入已打開在緩沖區(qū)的文件,方便調(diào) 試使用”這個(gè)選項(xiàng)勾上。如果讀者想每次在 Keil uVision3 中按下編譯后讓 STC-ISP 自動(dòng)調(diào)入代碼并向單片機(jī)發(fā)送下載命令,請把“當(dāng)目標(biāo)代碼發(fā)生變化后自動(dòng)調(diào)入 文件,并立即發(fā)送下載命令”選項(xiàng)勾上。


圖 2.3.2   查看端口設(shè)備


本節(jié)具體操作請參照教學(xué)視頻。

至此,第二部分開發(fā)環(huán)境及程序下載軟件 STC-ISP 介紹完畢,希望讀者通 過這章的閱讀能掌握開發(fā)環(huán)境 Keil uVision3 和下載軟件 STC-ISP的基本使用方 法,接下來是軟件設(shè)計(jì)實(shí)例.




全部資料51hei下載地址(詳細(xì)教程+源程序,代碼注釋很詳細(xì),閱讀方便,以后可直接應(yīng)用在您的項(xiàng)目中):

Blue_Sky_C51 配套例程.rar (782.01 KB, 下載次數(shù): 115)
BlueSkyC51不完全手冊V2.0.pdf (3.81 MB, 下載次數(shù): 37)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏9 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2018-3-21 03:03 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

板凳
ID:45457 發(fā)表于 2018-3-21 08:39 | 只看該作者
好資料,51黑
回復(fù)

使用道具 舉報(bào)

地板
ID:392113 發(fā)表于 2018-8-31 20:11 | 只看該作者

好資料,51黑
回復(fù)

使用道具 舉報(bào)

5#
ID:526650 發(fā)表于 2019-5-14 22:15 | 只看該作者

好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

6#
ID:538517 發(fā)表于 2019-5-15 02:37 來自手機(jī) | 只看該作者
感謝樓主,適合收藏
回復(fù)

使用道具 舉報(bào)

7#
ID:438874 發(fā)表于 2019-7-1 16:57 | 只看該作者

感謝樓主,適合收藏
回復(fù)

使用道具 舉報(bào)

8#
ID:64765 發(fā)表于 2019-7-3 20:23 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

9#
ID:577549 發(fā)表于 2019-7-4 07:49 來自手機(jī) | 只看該作者
感謝樓主分享,很厲害的樣子嗯
回復(fù)

使用道具 舉報(bào)

10#
ID:630070 發(fā)表于 2019-11-1 14:20 | 只看該作者
厲害,試了試學(xué)會了不少
回復(fù)

使用道具 舉報(bào)

11#
ID:836596 發(fā)表于 2020-10-30 12:04 | 只看該作者
好資料,51黑
回復(fù)

使用道具 舉報(bào)

12#
ID:1004223 發(fā)表于 2022-2-6 21:38 | 只看該作者

好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久国产精品首页 | 亚洲国产日本 | 欧美成人久久 | 久久久久久久久精 | 日本久久久久久久久 | 日韩黄色av | 国产大学生情侣呻吟视频 | 亚洲一区二区三区免费在线观看 | 久久偷人| 不卡在线视频 | 我想看一级黄色毛片 | 日本成人福利视频 | 久久精品免费 | 精品视频网 | 久久高清精品 | av中文字幕网站 | 欧美性久久 | 日本黄色激情视频 | 久久夜视频 | 国产伦精品一区二区三区照片91 | 视频一区二区在线观看 | 国产亚洲一区在线 | 国产乱码精品一品二品 | 欧美成人影院在线 | 午夜欧美一区二区三区在线播放 | 一区二区三区在线免费观看 | 日韩国产在线 | 亚洲欧美一区二区三区国产精品 | 亚洲视频二区 | 亚洲午夜精品 | 黄视频在线网站 | 精精国产xxxx视频在线播放7 | 在线观看视频91 | 欧美精品在线免费 | 国产高清精品一区二区三区 | 热久久999| 啪啪av| 成人av高清 | 免费观看a级毛片在线播放 黄网站免费入口 | 成人性生交大免费 | 成人福利电影 |