《單片機原理》課程設計說明書簡易數(shù)字時鐘
《《單片機原理》課程設計說明書簡易數(shù)字時鐘》由會員分享,可在線閱讀,更多相關《《單片機原理》課程設計說明書簡易數(shù)字時鐘(17頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、武漢理工大學《單片機原理》課程設計說明書 課程設計任務書 學生姓名: 專業(yè)班級: 自動化0607 指導教師: 工作單位: 武漢理工大學自動化學院 題 目: 簡易數(shù)字時鐘 初始條件: 用C語言編寫程序,實現(xiàn)簡易數(shù)字時鐘的功能。 要求完成的主要任務: (1)簡易數(shù)字時鐘能實現(xiàn)時、分、秒的數(shù)字顯示; (2)可以對時鐘、分鐘進行調(diào)節(jié)并且校正。 時間安排: 周次 具體時間 設計內(nèi)容 第一周 4月6日 指導老師就課程設計內(nèi)容、設
2、計要求、設計進度安排、評分標準等作具體介紹。強調(diào)課程設計期間紀律要求。 學生確定選題,明確設計內(nèi)容及要求。 4月7日~8日 根據(jù)選題查閱資料,完成方案的初步設計,繪制程序流程草圖。 4月9日 中期檢查及答疑(向指導老師闡述設計思路,并解釋程序流程圖)。 4月11日 根據(jù)中期檢查意見修改程序流程圖,編寫程序代碼。 第二周 4月12日 程序調(diào)試、修改。 4月13日 指導老師檢查程序運行效果,并就結果進行評分。 4月14~15日 學生撰寫課程設計說明書。 4月18日 上交課程設計說明書,以及答辯。 指導教師簽名: 年
3、 月 日 系主任(或責任教師)簽名: 年 月 日 摘 要 近幾年,單片機在各個領域得到廣泛的應用。從工業(yè)到人們的日常生活,大部分的科技產(chǎn)品都是通過單片機來控制。在它問世之前,自動控制設備不能被廣泛的應用,這是因為控制設備的體積龐大,耗電量大,價格昂貴。在第一臺微處理器成功研制不久,第一個單片機就問世了。因為其小巧的體積,低功耗,以及高效的性能,單片機受到了大家的歡迎。 今天,單片機成為了解決低復雜度,中等復雜度控制問題的傳統(tǒng)選擇。文章介紹了單片機在定時方面的基本功能。生活中,我們發(fā)現(xiàn):時間的準確顯得格外的重要。 我們選擇
4、的方法是單片機開發(fā)設計使用的傳統(tǒng)方法,通過本次設計,可以了解整個單片機開發(fā)的流程。文章首先介紹了單片機的基本知識,然后同時給出了框圖,流程圖等。論文涵蓋了從需求分析,系統(tǒng)設計,編程,原理圖等產(chǎn)品開發(fā)的基本過程。 關鍵詞:單片機,軟件仿真,原理圖 Abstract Single Chip Microcomputer has achieved a immemse popularity in all fileds in recent years.From industry to people’s common lives,most
5、 of technical applications are controlled by SCM. Before it appeared,the automatic devices could’t be widely used because of their huge size ,large quantity of power cost and high price.The first SCM appeared as soon as the first MCU(MicroController Unit) was successfully developed.Due to its small
6、size,low power cost and high performance,it has been welcomed by people. Nowadays, SCM has been selected as a traditional solution for lowormedium complexity problems about devices controlling.This essay shows a basic application of SCM in timing for people’s life. Time accuracy is a vital fact
7、or that effects the results. The approach we choose is the common way for SCM developing from which we can get an acknowledge about the SCM develop flowing process.The paper first introduces knowledge on 51 serial SCM,then At it also shows block diagrams,flowing process diagrams and so on. It pres
8、ents the process including requirement analysis ,system design,SCM programming ,program emulation , which forms a complete procedure for product manufacture。 Key words: SCM,software emulation,schemetic 目錄 1單片機的基本知識 5 1.1數(shù)碼管動態(tài)顯示原理 5 1.2鍵盤掃描原理 6 2程序說明和流程圖 6 2.1程序說明 6
9、 2.2流程圖 8 3程序設計 9 4實驗仿真和驗證 13 5心得體會 14 6參考文獻 15 簡易數(shù)字時鐘 1單片機的基本知識 1.1數(shù)碼管動態(tài)顯示原理 圖1數(shù)碼管顯示原理圖 如圖1數(shù)碼管顯示原理圖所示,使用LED顯示器時,要注意是共陰還是共陽,要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對數(shù)字或字符進行編碼。七段數(shù)碼管加上一個小數(shù)點,共計8段。因此為LED顯示器提供的編碼正好是一個字節(jié)。我們用的是共陰LED顯示器,根據(jù)電路連接圖顯示16進制數(shù)的編碼已列在下表。 0x3f , 0x06 , 0x5b
10、 , 0x4f , 0x66 , 0x6d , 0 1 2 3 4 5 0x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c , 6 7 8 9 A B 0x39 , 0x5e , 0x79 , 0x71 , 0x00 C D E F 無顯示 動態(tài)顯示的特點是將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管有效,由另一位控制顯示碼值。選亮數(shù)碼管采用動態(tài)掃描顯示。所謂動態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應的位選,利用發(fā)光管的余輝和
11、人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在顯示。動態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時應略小于靜態(tài)顯示電路中的。我們這里正是利用的數(shù)碼管動態(tài)顯示來完成顯示功能。 1.2鍵盤掃描原理 鍵盤分編碼鍵盤和非編碼鍵盤,鍵盤上閉合鍵的識別由專用的硬件編碼器實現(xiàn),并產(chǎn)生按鍵編碼號或鍵值的稱為編碼鍵盤,如計算機鍵盤。而靠軟件編程來識別的稱為非編碼鍵盤,在單片機組成的各種系統(tǒng)中,用的最多的是非編碼鍵盤,也有用到編碼鍵盤的,我們這里用的就是非編碼鍵盤。如圖2鍵盤圖所示,當按鈕按下時;端口會變成低電平,我們設計一段掃描程序來判斷那個端口是低電平來判斷是否有按鍵按下。 圖2鍵盤圖
12、 2程序說明和流程圖 2.1程序說明 此實時時鐘的設計與實現(xiàn),主要采用了6只LED數(shù)碼管,加Atmega128單片機,包括顯示模塊,運算模塊和校時模塊三大功能模塊。 顯示模塊: 用Atmega128控制,用數(shù)碼管的顯示功能來設計。顯示部分硬件用六只LED為顯示管,這些LED發(fā)光二極管的陰極是互相連接在一起的,所以稱為共陰極數(shù)碼管。通過在這8只發(fā)光二極管的陽極加+5 V或0 V的電壓使不同的二極管發(fā)光,形成不同的數(shù)字。該模塊主要是將運算模塊和校時模塊運算出來的十進制表示的時位、分位和秒位數(shù)值,并通過6只數(shù)碼管顯示出來。該模塊實現(xiàn)的硬件是7seg-mpx6-ca單元,采用軟件譯碼,即在程
13、序中設置一個段選碼表。CPU直接往LED輸出八段代碼,省去了硬件譯碼器。A0~A3作為8段數(shù)據(jù)輸出口到達各LED。只要做到每送一次段選碼時也送一次位掃描碼,并且每送一次位掃描碼后,位碼中的0右移一位作為下一次的位掃描碼,即可實現(xiàn)由左向右使6只LED依次出現(xiàn)數(shù)字顯示。 運算模塊: 該模塊的主要功能是對時、分、秒的運算,并把運算出的最終結果存到事先已經(jīng)開辟的內(nèi)存單元里,以便顯示模塊即時地顯示出來。該模塊可以細分為秒定時模塊和運算模塊。延時程序實現(xiàn)延時功能,由于CPU運算模塊中的指令消耗一定的時間,所消耗的時間可以用來延時。當演示完成后才能讓秒單元內(nèi)的數(shù)值加1。在主程序里,必須對秒、分和時的單元
14、內(nèi)的數(shù)值進行判斷,當秒加到60時,分必須加1 、秒清零;當分加到60時,時加1、分清零。當時加到24時,直接清零。然后轉到調(diào)用處。 校時模塊: 該模塊主要功能是修改時、分、秒內(nèi)存單元的數(shù)值。每按一次鍵,對應的顯示值便加1。分、 秒加到59后變?yōu)?0;小時加到23后再按鍵即變?yōu)?0.再調(diào)校時均不向上一單位進位(例如分加到59后變?yōu)?0;但小時不發(fā)生改變)。 2.2流程圖 1.主函數(shù) 開始 初始化( 定時器、顯示區(qū)、輸入輸出、計數(shù)單元等) 初始化時,分,秒并在秒上自加一位 秒計數(shù)到60 Y
15、
N
分鐘自加一位,秒鐘歸零
分鐘到60
Y
N
時鐘自加一位,分鐘歸零
鍵盤輸入
Y
N
修改分鐘,小時
調(diào)用顯示子程序
2.顯示子程序
開始
初始化數(shù)據(jù),定義輸入輸出
確定數(shù)碼管的位選
顯示數(shù)據(jù)
調(diào)用延時
對隨后的5個數(shù)碼管同樣操作,給不同的位選信號
返回主函數(shù)
3程序設計
#include
16、3 unsigned char led_table[26]= //數(shù)碼管段碼表 { 0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xF8,/*7*/ 0x80,/*8*/ 0x90,/*9*/}; unsigned int m; unsigned char m6,m5,m4,m3,m2,m1; void display() {DDRE=0XFF; DDRB=0XFF; PORT
17、E=0X00; PORTB=0Xff; PORTE|=BIT(0); PORTB=led_table[m6]; delay(3); PORTB=0XFF; PORTE=0X00; PORTE|=BIT(1); PORTB=led_table[m5]-0X80; delay(2); PORTB=0XFF; PORTE=0X00; PORTE|=BIT(2); PORTB=led_table[m4]; delay(2); PORTB=0XFF; PORTE=0X00; PORTE|=BIT(3); PORTB=led_table[m3]-0X80; delay
18、(2);
PORTB=0XFF;
PORTE=0X00;
PORTE|=BIT(4);
PORTB=led_table[m2];
delay(2);
PORTE=0X00;
PORTB=0X00;
PORTE|=BIT(5);
PORTB=led_table[m1];
delay(2);}
void delay(int m)
{ int i,j;
for(i=0;i 19、F;
DDRF=0X00;
PORTD=0X00;
DDRD=0XFF;
PORTD=0XFF;
while(1)
{m6=m/100000;
m5=m%100000/10000;
m4=m%10000/1000;
m3=m%1000/100;
m2=m%100/10;
m1=m%10;
m++;
if(m2==5&&m1==9)
{m+=100;
m-=59;}
if(m3==9&&m4==5&&m1==9&&m2==5)
{m+=10000;
m-=5900;}
for(q=0;q 20、<10;q++)
{ display();
PINF==0X00;
if(PINF==0X01)
{m=m+100;
delay(50);}
if(PINF==0X02)
{m=m-100;
delay(50);}
if(PINF==0x04)
{m=m+10000;
delay(50);}
if(PINF==0X08)
{m=m-10000;
delay(50);}
}}}
4實驗仿真和驗證
我們跟據(jù)試驗原理設計了仿真圖,將程序在Iccv7中運行后,將生成的HEX檔加載、運行,來看是否能實 21、現(xiàn)我們要求的功能,并看是否有錯誤。如圖3實驗仿真圖所示,這與我們想要的結果是一致的??梢娢覀兊某绦蚴钦_的,并且能夠實現(xiàn)我們想要的功能。
圖3實驗仿真圖
5心得體會
通過本次實驗,能初步理論聯(lián)系實際、應用C語言、能簡單設計出程序、并且能通自己的調(diào)試進行修改。
課程設計是培養(yǎng)學生綜合運用所學知識、發(fā)現(xiàn)、提出、分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程.隨著科學技術發(fā)展的日新日異,計算機已經(jīng)成為當今社會生活工作中空前活躍的領域, 在生活中可以說得是無處不在?;仡櫰鸫舜螁纹瑱C 22、原理課程設計,至今我仍感慨頗多。的確,從選題到定稿、從理論到實踐,在整整兩星期的日子里,可以說得是苦多于甜,但是可以學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如 23、說如何對程序的初始進行編程,如何利用流程方塊圖……通過這次課程設計之后,一定把以前所學過的知識重新溫故。
這次課程設計終于順利完成了,在設計中遇到了很多思路、編程問題,最后在劉教瑜老師的辛勤指導和同學的幫助下,終于游刃而解。
6參考文獻
[1]《微機原理與接口技術》 主編:周佩玲 彭虎 傅忠謙 出版社:電子工業(yè)出版社2007
[2]《微機原理與接口技術學習指導》 主編:周佩玲 彭虎 傅忠謙 出版社:電子工業(yè)出版社2007
[3]《計算機高級應用》 主編:章工榮 出版社:高等教育 2004
[4]《計算機程序設計基礎》 主編:李文成 出版社:科學出 24、版社 2007
[5]《C語言高級程序設計及其講解》 主編:張錦程 出版社:機械工業(yè)出版社 2000
本科生課程設計成績評定表
姓 名
江勇峰
性 別
男
專業(yè)、班級
自動化專業(yè)自動化0607
課程設計題目:簡易數(shù)字時鐘
課程設計答辯或質(zhì)疑記錄:
1. 數(shù)字鐘的原理實現(xiàn)過程?
答:設計中用到 89 C51 單片機的部分功能:包括內(nèi)部定時器、程序中斷、串口通信等。用一個六位的共陽極八段顯示器,通過一個輸入/輸出口作為顯示器數(shù)據(jù)發(fā)送端,顯示時鐘數(shù)字;另一個輸入/輸出口的六位作為顯示器各位的片選信 25、號,另一個輸入/輸出口作為鍵盤擴展口使用,進行按鍵設置。
2. 如何進行時鐘數(shù)字顯示?
答:時鐘數(shù)字顯示涉及到兩個操作:發(fā)數(shù)據(jù)和改片選信號。先發(fā)片選,再發(fā)數(shù)據(jù),單片機一個輸入/輸出口作為顯示器數(shù)據(jù)發(fā)送端;另一個輸入/輸出口的六位作為顯示器各位的片選信號。
3.怎樣做到時鐘的校時設置?
答:通過編程,當設置端口接入低電平時,相應的顯示器數(shù)據(jù)發(fā)送端的數(shù)據(jù)就自增1,再通過uchar code table1向數(shù)碼顯示管送入數(shù)據(jù),按一次鍵,數(shù)據(jù)自增1,至滿進制在向高位加1,可以達到校時效果。
成績評定依據(jù):
序號
評定項目
評分成績
1
選題合理、目的明確(10分)
2
設計方案正確,具有可行性、創(chuàng)新性(20分)
3
設計結果可信(25分)
4
態(tài)度認真、學習刻苦、遵守紀律(15分)
5
設計報告的規(guī)范化、參考文獻充分(不少于5篇)(10分)
6
答辯(20分)
總分
最終評定成績(以優(yōu)、良、中、及格、不及格評定)
指導教師簽字:
年 月 日
17
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年六年級數(shù)學下冊6整理和復習2圖形與幾何第7課時圖形的位置練習課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習2圖形與幾何第1課時圖形的認識與測量1平面圖形的認識練習課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習1數(shù)與代數(shù)第10課時比和比例2作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊4比例1比例的意義和基本性質(zhì)第3課時解比例練習課件新人教版
- 2023年六年級數(shù)學下冊3圓柱與圓錐1圓柱第7課時圓柱的體積3作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊3圓柱與圓錐1圓柱第1節(jié)圓柱的認識作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊2百分數(shù)(二)第1節(jié)折扣和成數(shù)作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊1負數(shù)第1課時負數(shù)的初步認識作業(yè)課件新人教版
- 2023年六年級數(shù)學上冊期末復習考前模擬期末模擬訓練二作業(yè)課件蘇教版
- 2023年六年級數(shù)學上冊期末豐收園作業(yè)課件蘇教版
- 2023年六年級數(shù)學上冊易錯清單十二課件新人教版
- 標準工時講義
- 2021年一年級語文上冊第六單元知識要點習題課件新人教版
- 2022春一年級語文下冊課文5識字測評習題課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習4數(shù)學思考第1課時數(shù)學思考1練習課件新人教版