日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

單片機最小系統制作教程

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2009-8-19

一、確定任務
開發單片機最小系統
二、任務分析:
該系統具有的功能:
1)具有2LED數碼管顯示功能。
2)具有八路發光二極管顯示各種流水燈。
3)可以完成各種奏樂,報警等發聲音類實驗。
4)具有復位功能。
三、功能分析
1)兩位LED數碼管顯示功能,我們可以利用單片機的P0口接兩個數碼管來現這個功能;
2)八路發光二極管顯示可以利用P1口接八個發光二極管實現這個功能;
3)各種奏樂、報警等發聲功能可以采用P2.0這個引腳接一蜂鳴器來實現。
4)利用單片機的第9腳可以設計成復位系統,我們采用按鍵復位;利用單片機的1819腳可以設計成時鐘電路,我們利用單片機的內部振蕩方式設計的。
四、設計框圖

五、硬件電路設計
根據本系統的功能,和單片機的工作條件,我們設計出下面的電路圖。

六、元件清單的確定:
數碼管:共陰極2只(分立)
電解電容:10UF的一只
30PF
的電容2
220
歐的電阻9
4.7K
的電阻一只
1.2K
的電阻一只
4.7K
的排阻一只,
12MHZ
的晶振一只
有源5V蜂名器一只
AT89S51
單片機一片
常開按鈕開關1
緊鎖座一只(方便芯取下來的,綠色的)
發光二極管(5MM紅色)8
萬能板電路版15*17CM
S8550
三極管一只
4
5V電池盒一只,導線若干。
七、硬件電路的焊接
按照原理圖把上面的元件焊接好,詳細步驟省略。

八、相關程序編寫
針對上面的電路原理圖,設計出本系統的詳細功能:
1)、第一個發光二極管點亮,同時數碼管顯示“1”
2)、第二個發光二極管點亮,同時數碼管顯示“2”
3)、依次類推到第八個發光二極管點亮,同時數碼管顯示“8”
以上出現的是流水燈的效果
4)、所有的發光二極管滅了,同時數碼管現實“0”
5)、數碼管顯示“1”
6)、數碼管顯示“2……”直到“9ABCDEFY”
7)、蜂鳴器發出九聲報警聲后重復上面所有步驟。

8)程序如下:

ORG 0000H;偽指令,定義下面的程序代碼(機器代碼)從地址為0000H的單元存放。
LJMP START
;跳轉到標號為START的地方去執行。
ORG 0030H
;偽指令,定義下面的程序代碼(機器代碼)從地址為0030H的單元存放。
START:MOV P1,#0FEH
;點亮第一個發光二極管。
CLR P2.7
;送低電平到第一個數碼管,開啟數碼管。
CLR P2.6
;送低電平到第二個數碼管,開啟數碼管。
MOV P0,#06H
;讓數碼管顯示“1”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0FDH
;點亮第二個發光二極管。
MOV P0,#5bH
;讓數碼管顯示“2”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0FBH
;點亮第三個發光二極管。
MOV P0,#4fH
;讓數碼管顯示“3”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0F7H
;點亮第四個發光二極管。
MOV P0,#66H
;讓數碼管顯示“4”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0EFH
;點亮第五個發光二極管。
MOV P0,#6dH
;讓數碼管顯示“5”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0DFH
;點亮第六個發光二極管。
MOV P0,#7dH
;讓數碼管顯示“6”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#0BFH
;點亮第七個發光二極管。
MOV P0,#07H
;讓數碼管顯示“7”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#7FH
;點亮第八個發光二極管。
MOV P0,#7fH
;讓數碼管顯示“8”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P1,#00H
;滅了所有的發光二極管。
MOV P0,#3FH
;讓數碼管顯示“0”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#06H
;讓數碼管顯示“1”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#5bH
;讓數碼管顯示“2”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#4fH
;讓數碼管顯示“3”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#66H
;讓數碼管顯示“4”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#6dH
;讓數碼管顯示“5”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7dH
;讓數碼管顯示“6”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#07H
;讓數碼管顯示“7”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“8”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#6fH
;讓數碼管顯示“9”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“A”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“b”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“C”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“d”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“E”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“F”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV P0,#7fH
;讓數碼管顯示“Y”
LCALL DELAY
;調用延時子程序,起到延時的目的。
MOV R4
#9;送蜂鳴器的報警次數。
LOOP:SETB P2.0
;不發聲
LCALL DELAY
;調用延時子程序,起到延時的目的。
CLR P2.0
;發聲。
LCALL DELAY
;調用延時子程序,起到延時的目的。
DJNZ R4,LOOP
;發聲九次后向下執行。
SETB P2.0
;關閉發聲
LJMP START
;跳轉到標號為START處執行,循環本程序。
DELAY
MOV R7#200;這是延時子程序。
D1
MOV R6#200
D2
MOV R5#200
D3
DJNZ R5D3
DJNZ R6
D2
DJNZ R7
D1
RET
;延時子程序返回指令。
END
;結束偽指令。
九、利用KEIL C51 軟件對上面的程序進行調試和編譯,產生*.HEX文件,以便用編程器寫入單片機芯片中。
十、編程器的使用:用編程器把電腦里生成的*.HEX文件寫到芯片中。
十一、產品調試:通上4.5V(三節電池)的電源,可以調試本系統,如果沒有錯誤就可以正常工作了。

(以上程序在調試是會提示錯誤,錯誤原因正在調查中)

Tags:單片機,最小系統,制作  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 定远县| 泸定县| 宣化县| 龙里县| 绿春县| 宁陕县| 定日县| 红原县| 芜湖县| 仲巴县| 义马市| 喀喇沁旗| 六枝特区| 尉氏县| 吉木乃县| 西乡县| 嵊州市| 秦皇岛市| 遵义县| 大安市| 汤阴县| 武威市| 兴国县| 监利县| 加查县| 太白县| 庆安县| 顺昌县| 福建省| 株洲县| 江口县| 梁平县| 九龙坡区| 宜君县| 龙川县| 宜春市| 额敏县| 思茅市| 颍上县| 伽师县| 贵南县|