




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、單片機原理與應用單片機原理與應用專題課件專題課件二、項目資訊二、項目資訊數碼管基礎知識數碼管基礎知識1.數碼管常用封裝數碼管常用封裝2011年3月16日32. 數碼管的分類數碼管的分類(1)(1)尺寸尺寸n0.30.8寸n1.02.3寸n3.0寸以上(2)(2)內部連接方式內部連接方式n共陽極(Common Anode)n共陰極(Common Cathode)二、項目資訊二、項目資訊數碼管基礎知識數碼管基礎知識3.3.數碼管內部結構圖數碼管內部結構圖二、項目資訊二、項目資訊數碼管基礎知識數碼管基礎知識共陽:共陽: comcom端接高電平,段碼輸入高電平亮。端接高電平,段碼輸入高電平亮。共陰:共
2、陰: comcom端接低電平,段碼輸入低電平亮。端接低電平,段碼輸入低電平亮。共陰極共陰極(CC)(CC)共陽極共陽極(CA)(CA)2011年3月16日54.4.數碼管的字形碼數碼管的字形碼數碼管顯示原理:要顯示某個字形,需將此字形對應的筆段點亮,因而要送不同的電平組合數據至數碼管引腳,該數據稱為字形碼或段碼。筆段筆段dpdpg gf fe ed dc cb ba a共陽極共陽極1 10 01 1 0 00 01 10 00 0共陰極共陰極0 01 10 01 11 10 01 11 1數據位數據位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0“2 2”的段碼:共陽極:的段
3、碼:共陽極:0 xA40 xA4、共陰極:、共陰極:0 x5B0 x5B二、項目資訊二、項目資訊數碼管基礎知識數碼管基礎知識數字數字共陽極七段碼共陽極七段碼共陰極七段碼共陰極七段碼0 00 xc00 xc00 x3f0 x3f1 10 xf90 xf90 x060 x062 20 xa40 xa40 x5b0 x5b3 30 xb00 xb00 x4f0 x4f4 40 x990 x990 x660 x665 50 x920 x920 x6d0 x6d6 60 x820 x820 x7d0 x7d7 70 xf80 xf80 x070 x078 80 x800 x800 x7f0 x7f9 9
4、0 x900 x900 x6f0 x6f4.4.數碼管的字形碼表數碼管的字形碼表二、項目資訊二、項目資訊數碼管基礎知識數碼管基礎知識1.1.數碼管靜態顯示原理圖分析數碼管靜態顯示原理圖分析P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7STC89C52abcdefgdpcom 5V470R8共陽連接方式: 對于共陽極數碼管其公共端接電源,每個數碼管的段碼、DP分別與P0.0P0.7相連。通過PO輸出不同的數據組合,即可在數碼管上顯示不同的數字。 靜態顯示方式,每一個數碼管都需要單獨占用一個單片機P口。二、項目資訊二、項目資訊數碼管靜態顯示數碼管靜態顯示10011111低電平點亮
5、相應筆段“1”的段碼為0XF91.1.數碼管靜態顯示原理圖分析數碼管靜態顯示原理圖分析共陰連接方式: 對于共陽極數碼管其公共端接地,每個數碼管的段碼、DP分別與P2.0P2.7相連。通過P2輸出不同的數據組合,即可在數碼管上顯示不同的數字。二、項目資訊二、項目資訊數碼管靜態顯示數碼管靜態顯示P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7STC89C52abcdefgdpcom470R801100000高電平點亮相應筆段“1”的段碼為0X06位驅動段驅動P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.
6、6P0.7P2.7P2.6P2.5P2.4P2.3P2.28位共陽極數碼管模塊相同的段驅動端都并聯在一起。com7com8P2.1P2.02 2、單片機學習開發板數碼管連接圖、單片機學習開發板數碼管連接圖二、項目資訊二、項目資訊數碼管靜態顯示數碼管靜態顯示3 3、在單片機學習開發板顯示一個數字、在單片機學習開發板顯示一個數字二、項目資訊二、項目資訊數碼管靜態顯示數碼管靜態顯示位驅動段驅動P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.2com7com8P2.1P
7、2.00100100111111110位驅動P2口輸出“11111110”段驅動P0口輸出“5”的段碼“10010010B”#include #include main()main() P2=0XFE; P2=0XFE; P0=0X92; P0=0X92; while(1);while(1); /接通公共端電源接通公共端電源/送數碼管段碼送數碼管段碼 在單片機學習開發板上最右邊右邊的數碼管上顯示數字“5”5”二、項目資訊二、項目資訊數碼管靜態顯示數碼管靜態顯示 在右邊第3個數碼管上循環顯示數字09,每個數據顯示1秒鐘,請畫出程序流程圖并編寫程序在實驗板上實現上述要求功能。4.4.數碼管靜態顯示
8、程序設計練習數碼管靜態顯示程序設計練習 思考:如何在右邊思考:如何在右邊2 2個數碼管上顯示個數碼管上顯示1 1個個2 2位數呢?如顯示位數呢?如顯示6868。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示1 1、單片機學習開發板數碼管內部結構圖、單片機學習開發板數碼管內部結構圖四位一體共陰型四位一體共陰型四位一體共陽型四位一體共陽型四位一體數碼管四位一體數碼管位驅動段驅動P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.28位共陽極數碼管模塊相同的段驅動端
9、都并聯在一起。com7com8P2.1P2.02 2、單片機學習開發板數碼管連接圖、單片機學習開發板數碼管連接圖二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示3.數碼管動態顯示原理圖數碼管動態顯示原理圖多個數碼管相同的段連在一起,共1個IO口。各數碼管的公共端通過獨立的IO口,控制與電源或地接通。如學習開發板原理圖所示: 位驅動段驅動P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.2com7com8P2.
10、1P2.00100100111111110二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示4.數碼管動態顯示程序設計數碼管動態顯示程序設計 如何在右邊如何在右邊2 2個數碼管上顯示個數碼管上顯示1 1個個2 2位數呢?如顯示位數呢?如顯示6868。 程序流程圖程序流程圖#include #include main( )main( ) while(1) while(1) P2=0XFE;/ P2=0XFE;/第第1 1個數碼管接通電源個數碼管接通電源 P0=0 x80;/ P0=0 x80;/輸出個位輸出個位8 8的七段碼的七段碼 Delay(1000);Delay(1000); P2=0X
11、FD;/ P2=0XFD;/第第2 2個數碼管接通電源個數碼管接通電源 P0=0 x82;/ P0=0 x82;/輸出十位輸出十位6 6的段碼的段碼 Delay(1000); Delay(1000); 程序代碼程序代碼二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示5.5.數碼管動態顯示原理數碼管動態顯示原理 在上述的程序示例中大家看到了什么效果?現在我們把延時間改成在上述的程序示例中大家看到了什么效果?現在我們把延時間改成5ms5ms看一下有什么效果?為什么?(實驗演示)看一下有什么效果?為什么?(實驗演示)n 數碼管動態電路一般將幾個數碼管(學習開發板是8個)相同的筆段引腳并聯在一起,
12、相同筆段共用IO口。各數碼管的位選端(公共端)通過一個獨立的IO口控制,由數碼管的位選來控制哪一位數碼管有效。n 所謂動態掃描顯示就是輪流向各位數碼管送出字形碼(段碼)和相應的位選數據,只要各個數碼管之間的切換速度比較快,利用發光管的余輝和人眼視覺暫留作用,使人感覺好像幾個數碼管同時都在顯示。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示6.6.數碼管動態顯示練習數碼管動態顯示練習 在實驗板上8個數碼管顯示20121201,要求顯示穩定無明顯閃爍感,畫出程序流程并編寫程序上機調試。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示7.7.數碼管顯示方法比較數碼管顯示方法比較(1 1)在
13、靜態顯示靜態顯示 單片機只送一次數據至數碼管即可保持字形的顯示單片機只送一次數據至數碼管即可保持字形的顯示優點:程序簡單,不占用優點:程序簡單,不占用CPUCPU時間時間缺點:硬件復雜,缺點:硬件復雜,占用單片機占用單片機IO多,顯示位數較多時需要使用鎖存器,硬件多,顯示位數較多時需要使用鎖存器,硬件成本高成本高(2 2)動態顯示)動態顯示單片機不斷掃描數碼管,分時送出數據,利用單片機不斷掃描數碼管,分時送出數據,利用“視覺暫留視覺暫留”的現象進行顯示的現象進行顯示優點:硬件簡單,占用單片機優點:硬件簡單,占用單片機IOIO少、硬件成本低少、硬件成本低缺點:程序復雜,需缺點:程序復雜,需單片機
14、單片機不斷掃描數碼管,極大占用不斷掃描數碼管,極大占用CPUCPU時間時間二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示思考:如何在數碼管上顯示一個變量思考:如何在數碼管上顯示一個變量的值?例如有一個整形變量。的值?例如有一個整形變量。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示(1)在上次課的思考題:如何在數碼管上顯示一個整形變量的值?)在上次課的思考題:如何在數碼管上顯示一個整形變量的值? 要實現上述功能,在顯示程序中,每個數碼管的顯示數據肯定不能賦一個常量值。對于1個整形變量y我們可以通過前面學習的運算符和表達式可以求出每1位數的值(如個位為y%10,十位數為y%100/1
15、0,依次類推),但怎么得到它的七段碼呢? 在實際中常用查表的方法來實現。8 8、C51C51數組的使用數組的使用(2 2)什么是表?怎么查表?)什么是表?怎么查表? 表是在存儲器中開辟的一組地址連續的存儲空間,用來存放一些數據的集合,查表就是以一定方式找到數據集合中所需的數據。在C51中,表是以數組的形式來實現,以數組下標的進行數據元素的查找。(3 3)數組的定義與引用)數組的定義與引用 相關知識見C51專題PPT的數組部分。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示(4 4)數組應用舉例)數組應用舉例 編寫程序在數碼管上顯示一個5位整型變量題目分析:題目分析: (1)將數碼管09的
16、段碼定義成一個表(數組形式存儲09段碼)(2)通過表達式計算出每位的數值(3)用每位的數值作為數組下標,查表得到每位的數值的段碼(4)動態掃描顯示每位數據8 8、C51C51數組的使用數組的使用程序流程圖程序流程圖二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示#include #include code unsigned char SEGMENT10=0 xc0,0 xf9,code unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;0 xa4,0 xb0,0 x99,0
17、 x92,0 x82,0 xf8,0 x80,0 x90;main(main() ) int y;int y;y=20123;y=20123;while(1)while(1) P2=0 xfe;P2=0 xfe;P0=SEGMENTy%10;P0=SEGMENTy%10;Delay(5);Delay(5);P2=0 xfd;P2=0 xfd;P0=SEGMENTy%100/10;P0=SEGMENTy%100/10;Delay(5);Delay(5);P2=0 xfb;P2=0 xfb;P0=SEGMENTy%1000/100;P0=SEGMENTy%1000/100;Delay(5);Del
18、ay(5);P2=0 xf7;P2=0 xf7;P0=SEGMENTy%10000/1000;P0=SEGMENTy%10000/1000;Delay(5);Delay(5);P2=0 xef;P2=0 xef;P0=SEGMENTy/10000;P0=SEGMENTy/10000;Delay(5);Delay(5); (5 5)源程序)源程序上述程序每位顯示都是三個語句,上述程序每位顯示都是三個語句,可以使用循環語句對程序進行優化!可以使用循環語句對程序進行優化!二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示()優化后的源程序()優化后的源程序#include #include cod
19、e unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,code unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;0 x82,0 xf8,0 x80,0 x90;code unsigned char SELECT8=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;code unsigned char SELECT8=0 xfe,0 xfd,0 xfb,0 xf7
20、,0 xef,0 xdf,0 xbf,0 x7f;main()main() int y=20123,x;int y=20123,x;char i;char i;while(1)while(1) x=y;x=y;for(i=0;i5;i+)for(i=0;i5;i+) P2= SELECTi;P2= SELECTi;P0=SEGMENTx%10;P0=SEGMENTx%10;Delay(5);Delay(5);x/=10;x/=10; 二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示8 8、課堂練習、課堂練習已知有已知有3 3個變量個變量y,m,dy,m,d分別存放當天的日期,請編寫程序在分
21、別存放當天的日期,請編寫程序在8 8個數碼上顯個數碼上顯示出來。示出來。其中其中y y為為4 4位整型變量,位整型變量,m m、d d為二位字符型變量。為二位字符型變量。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示9 9、數碼管顯示函數編寫 在實際項目中,可能有多地方需要顯示,所以我們可以把顯示部分單獨編寫成一個函數,要顯示的內容通過參數傳遞來實現。 本函數涉及我們前面所學的帶參數的函數定義、調用及靜態變量相關知識,在這里不再重復,請大家見C51專題PPT函數部分和變量的存儲類型。(1 1)函數功能任務分析:已知有3個變量y,m,d分別存放當天的日期,其中y為4位整型變量,m、d為二位
22、字符型變量。顯示的數據在3個變量中,所以函數需要三個形參,該函數不需要返回值。二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示課堂練習回顧:課堂練習回顧:已知有已知有3個變量個變量y,m,d分別存放當天的日期,請編寫程序在分別存放當天的日期,請編寫程序在8個數碼上顯個數碼上顯示出來。示出來。其中其中y為為4位整型變量,位整型變量,m、d為二位字符型變量。為二位字符型變量。把上述課練堂習題改成函數形式實現。把上述課練堂習題改成函數形式實現。9 9、數碼管顯示函數編寫二、項目資訊二、項目資訊數碼管動態顯示數碼管動態顯示Display(int y,char m,char,d)Display(in
23、t y,char m,char,d) static char num=0;/num static char num=0;/num表示表示8 8個數碼管序號,值為個數碼管序號,值為0-70-7 P2=0 xff;/ P2=0 xff;/消影消影 switch(num)switch(num) case 0:P0=SEGMENTd%10;break;case 0:P0=SEGMENTd%10;break;case 1:P0=SEGMENTd/10;break;case 1:P0=SEGMENTd/10;break;case 2:P0=SEGMENTm%10;break;case 2:P0=SEGME
24、NTm%10;break;case 3:P0=SEGMENTm/10;break;case 3:P0=SEGMENTm/10;break;case 4:P0=SEGMENTy%10;break;case 4:P0=SEGMENTy%10;break;case 5:P0=SEGMENTy%100/10;break;case 5:P0=SEGMENTy%100/10;break;case 6:P0=SEGMENTy%1000/100;break;case 6:P0=SEGMENTy%1000/100;break;case 7:P0=SEGMENTm/1000;break;case 7:P0=SEGMENTm/1000;break; P2=SELECTnum;/ P2=SELECTnum;/開位顯示開位顯示 num+; num+; num%=8;/ num%=8;/8個數碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版房屋租賃的安全協議
- 車輛獎勵協議
- 個人社保代繳合同二零二五年
- 公司股東出資合作協議書二零二五年
- 2025年員工三級安全培訓考試試題及答案【易錯題】
- 短信推廣借款合同
- 房屋拆遷勞務協議書
- 2025日常安全培訓考試試題答案突破訓練
- 2025公司管理人員安全培訓考試試題4A
- 電子監控系統采購協議
- 2025年東北三省三校二模聯考語文試卷
- 保密知識題庫含答案
- 共享農場合同標準文本
- 醫院建設項目智能化專項工程技術要求
- 2024年中國銀行招聘考試真題
- 管理學基礎-形考任務三-國開-參考資料
- 2024-2025學年北師大版七年級數學上冊期末復習壓軸題12個(84題)含答案
- 2023年北京市大興區小升初數學模擬試卷(含答案)
- 2025年河南交通職業技術學院單招職業技能測試題庫審定版
- 第二十一章傳導熱療法講解
- 2025年河南職業技術學院高職單招語文2018-2024歷年參考題庫頻考點含答案解析
評論
0/150
提交評論