久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

單片機原理及接口技術課程設計指導書

時間:2019-05-15 09:23:26下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《單片機原理及接口技術課程設計指導書》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《單片機原理及接口技術課程設計指導書》。

第一篇:單片機原理及接口技術課程設計指導書

長 沙學院

課程設計指導書(部)

級單片機原理及接口技術機電工程系機械設計制造及其自動化

年月日 課程設計名稱系專班

課程名稱:《單片機原理及接口技術》課程設計

課程編號:JX010146

主 筆 人:程立志

主 審 人:許焰

1、課程設計的目的通過《單片機原理及接口技術》課程設計,使學生初步具備以下能力:

1.1、加深對《單片機原理及接口技術》所學知識的理解;

1.2、掌握單片機內部資源的使用方法和步驟;

1.3、掌握單片機應用的環節和步驟;

1.4、進一步熟悉在proteus軟件里進行硬件設計和編程調試;

1.5、能使用匯編語言或C語言編程環境Keil編寫程序、編譯、仿真和修改程序;

1.6、能初步判斷分析單片機系統的簡單故障;

1.7、能對自己的實踐工作進行總結,具備編寫實習報告書能力;

1.8、初步具備辯證思維和邏輯分析的能力;

1.9、培養學生熱愛科學,實事求是的學風和創新意識、精神,合作精神。

2、課程設計的題目

單片機的應用領域非常廣泛,就其基本的控制原理和實現方法無外乎是對一些常見的如:距離或位移(米)、重量(千克)、時間(秒)、電流或電壓(安培)、溫度(開爾文)、等物理量進行測量控制,鑒于單片機當前的應用狀態和學員對其應掌握的程度,本次課程設計題目的設定主要是以貼近現實生活為主,提出了一些在教學、工業控制和科研等領域基本常見的課題,其目的是要讓學員們拓寬視野,著重體會其學習基本的原理及控制編程基礎的重要性,以期達到培養學員們的興趣和今后再學習的愿望。

2.1、;LED流水燈控制設計:

拓展:廣告燈的左移右移控制設計;汽車尾燈模擬控制設計;城市景觀燈的控制設計;…

2.2、電子日歷、數字鐘設計:

拓展:智能晨起系統控制設計;智能全自動洗衣機控制設計;秒表/時鐘計時器控制設計;…

2.3、數字溫度計的控制設計:

拓展:新生兒恒溫箱監控系統設計;多點溫度的控制設計;傳導系數測量儀的應用設計;…

2.4、16×16 點陣LED漢字顯示設計:

拓展:機場、車站、碼頭、商場、銀行、政務等公共服務場所信息指示牌設計;…

2.5、1602液晶顯示屏顯示設計:

拓展:機場、車站、碼頭、商場、銀行、政務等公共服務場所信息指示牌設計;…

2.6、128×64點陣LED漢字顯示設計:

拓展:機場、車站、碼頭、商場、銀行、政務等公共服務場所信息指示牌設計;…

2.7、直流電機控制設計:

拓展:傳送帶單控與順序控制設計;電子裝配生產線部件移動控制設計;多層電梯控制設計;…

2.8、步進電機控制設計:

拓展:機械手動作行程控制設計;安防監控自動尋跡云臺的控制設計;條碼打印機的控制設計;…

2.9、AD/DA轉換控制設計:

拓展:簡易數字電壓表設計;簡易數字壓力計設計;吊車懸臂角度的控制設計;超聲波測距器的設計…

2.10、邏輯算法控制設計:

拓展:搶答器控制設計;交通燈設計;多層電梯控制設計;4×4 矩陣鍵盤計算器設計…

2.11、遙控設計:

拓展:無線電遙控升降系統控制設計、紅外遙控升降系統控制設計、紅外遙控多路開關控制設計;…

2.12、PWM方式控制設計:

拓展:直流電機調速控制設計;城市立交橋景觀帶的控制設計;…

2.14、電子琴設計;

拓展:報警發生器控制設計;函數信號發生器的設計;

3、課程設計內容(主要技術關鍵的分析、解決思路和方案比較等)

要求學生根據所選課題,結合實際工程應用情況參照以下幾例給出的具體實現功能和控制參數完成課題的設計任務書。

3.1、簡易數字電壓表的設計

利用MCS-51系列單片機設計簡易數字電壓表測量0~5v的8路輸入電壓值,并在四位LED數碼管上輪流顯示或單路選擇顯示。測量最小分辨率為0.019V,測量誤差約為±0.02V

3.2、秒表/時鐘計時器的設計

秒表/時鐘計時器要求使用六位LED數碼顯示管顯示時、分、秒,以24(小時)計時方式。使用按鍵開關可實現時分調整、秒表/時鐘功能轉換功能。

3.3、電子日歷的設計

電子日歷上能顯示陽歷年,月,日,星期,時,分,秒和陰歷年、月,使用按鍵開關可實現調整。

3.4、超聲波測距器的設計

設計一個超聲波測距器,可以應用于汽車倒車、建筑施工工地以及一些工業現場的位置監控,也可用于如液位、井深、管道長度的測量等場合。要求測量范圍在0.10-4.00m,測量精度1cm,測量時與被測物體無直接接觸,能夠清晰穩定地顯示測量結果。

3.5、DS18B20數字溫度計的設計

利用89C51單片機、DS18B20溫度傳感器,制作數字溫度計。要求測溫范圍為-50~110℃,精度誤差在0.1℃以內,LED數碼管直接顯示測量溫度值。

3.6、1602液晶顯示屏設計

設計一個室內用1602液晶顯示屏,要求在目測條件下LED顯示屏個點亮度均勻、充足,可顯示圖形和文字,顯示圖形或文字應穩定、清晰無串擾。圖形或文字顯示有靜止、移入移出等顯示方式。

3.7、六路數字搶答器的設計

1)、搶答器同時供6名選手或6個代表隊比賽,分別用6個按鈕S0 ~ S5表示。

2)、設置一個系統清除和搶答控制開關S,該開關由主持人控制。

3)、搶答器具有鎖存與顯示功能。即選手按動按鈕,鎖存相應的編號,并在LED數碼管上顯示,同時揚聲器發出報警聲響提示。選手搶答實行優先鎖存,優先搶答選手的編號一直保持到主持人將系統清除為止。

4)、搶答器具有定時搶答功能,且一次搶答的時間由主持人設定(如30秒)。當主持人啟動“開始”鍵后,定時器進行減計時,同時揚聲器發出短暫的聲響,聲響持續的時間0.5秒左右。

5)、參賽選手在設定的時間內進行搶答,搶答有效,定時器停止工作,顯示器上顯示選手的編號和搶答的時間,并保持到主持人將系統清除為止。

6)、如果定時時間已到,無人搶答,本次搶答無效,系統報警并禁止搶答,定時顯示器上顯示00。

3.8、機械手動作行程控制

1)、設“單步”、“單程”、“往返”、“連續”4個按鈕及4個鍵值燈;

2)、設“左上”、“左下”、“右上”、“右下”4個電磁位置開關及4個指示燈。

3)、設“左上”為初始位置,根據不同的選擇按鈕,驅動相應的(3臺)直流電機正反轉,完成相應的行程動作。

3.9、三層樓電梯呼叫控制

1)、第一層只設“上”、第二層設“上”、“下”、第三層只設“下”共四個按鈕;

2)、每層都設一個電磁位置開關,轎廂上下指示燈;共享一臺直流電機正反轉。

3)、電梯轎廂內設“1”、“2”、“3”三個樓層鍵及鍵位指示燈,轎廂上下指示燈,開關門指示燈,電梯根據當前層位和樓層選擇按鈕的先后順序,決定向上或向下,電機以正反轉時延2秒完成層間動作。

3.10、16×16 點陣LED漢字顯示設計。

1)、點陣顯示漢字“長沙大學機電系”;

2)、實現自定義滾動效果,如左滾屏,有滾屏,上、下卷簾等。

單片機的應用系統隨著用途不同,它們的硬件和軟件結構差別很大,但系統設計的方法和步驟基本上是相同的。一般包括總體設計、硬件設計、軟件設計、仿真調試、固化程序、應用系統獨立運行等步驟。

課程設計由于時間安排、學生水平、實驗條件等諸方面的限制,僅要求學生完成仿真調試即可,同時根據實際情況,在試驗箱上調試通過。

由于設計時間緊迫,不要在完成全部設計后再編寫設計說明書。而應在設計過程中逐步完成。一開始不可能設計出滿意的主程序框圖。因此,總體設計部分在完成全部設計任務后再寫。而硬件部分和軟件部分可以在設計過程同步完成。

4、注意事項

4.1、充分調研相關文獻,針對課題需要進行系統詳細的論證,不能盲目生搬硬套,嚴謹抄襲;

4.2、以小組為單位(原則上是3人一組),小組內成員分工明確,各司其職,按照所分配的任務在規定的時間內合理的完成好。

4.3、課程設計報告要包括:設計功能要求,設計控制參數,硬件電路設計(元件選型,硬件電路布局),系統程序的設計(注意總結出現的問題、疑難以及解決的方法和思路,對以后的借鑒作用等),調試及性能分析,課程設計小結、控制源程序清單等;圖包括設計方案框圖、硬件原理圖(要求有描述)、程序流程圖等。

第二篇:《單片機原理與接口技術》課程設計教學大綱

《單片機原理與接口技術》課程設計教學大綱

課程編號:

課程英文名稱:Course Design of Micro-controller Principle and Interface Technology 學時數:18

學分數:1 使用層次和專業:本科

電氣工程及其自動化、電子信息工程、機械設計制造及其自動化等專業

一、課程設計的性質、目的

《單片機原理及接口技術》課程設計是在基本學完該課程之后,綜合運用所學單片機知識,完成一個單片機應用系統設計,從而加深對單片機軟硬知識的理解,獲得初步的應用經驗,為走出校門從事單片機應用的相關工作打下基礎。

通過該課程設計,主要達到以下目的:

1、鞏固和加深對單片機原理和接口技術知識的理解,使學生增進對單片機系統的感性認識,加深對單片機理論方面的理解,為順利完成畢業設計打下基礎。

2、使學生掌握對單片機的內部功能模塊的應用,如定時器/計數器、中斷、片內外存貯器、I/O口和串行口通訊等,進一步深化和鞏固所學基礎理論、專業知識及實驗技能,培養學生綜合運用所學專業知識分析問題和解決問題的能力。

3、培養學生根據課題需要選學參考書籍、查閱手冊和文獻資料的能力,了解與課題有關的硬件元器件的工程規范,能按課程設計任務書的要求編寫課程設計說明書,學會方案論證的比較方法,初步掌握工程設計的基本方法,能正確反映設計和實驗成果,能用計算機繪制電路圖和流程圖。使學生了解和掌握單片機應用系統的軟、硬件設計過程、方法及實現,提高學生的技術應用能力,為以后設計和實現單片機應用系統打下良好基礎。

4、這一環節對掌握常用儀器、儀表的正確使用方法,學會軟、硬件的設計和調試方法,掌握單片機技術在生產實踐中的應用,提高學生的工程實踐能力、動手能力、創新能力,使學生樹立正確的人生觀,養成嚴謹、踏實的工作作風。

二、課程設計的內容

課程設計主要內容包括:理論設計、調試及寫出總結報告等,其中理論設計又包括選擇總體方案、硬件系統設計和軟件系統設計。硬件設計包括單元電路、選擇元器件及計算參數等;軟件設計包括模塊化層次結構圖、程序流程圖等。程序設計是課程設計的關鍵環節,通過調試,進一步完善程序設計,使之達到課題所要求的指標,使理論設計更接近于 1

實際產品。課程設計的最后要寫出設計總結報告,把理論設計內容,調試的過程及性能指標的測試結果進行全面的總結,把實踐內容上升到理論高度。

以下8個設計題目每組學生可任選一項: 題目一 智能交通燈控制系統設計

1、設計要求

(1)用發光二極管模擬交通信號燈,用按鍵開關模擬車輛檢測信號。

(2)A、B兩車道交叉組成十字路口,A是主車道,B是支道。正常情況下,A、B兩車道輪流放行,A放行50s,B放行30s,各含5s警告時間。

(3)交通繁忙時,該系統應有手受控開關緩解交通擁擠狀況,其中一車道放行期間,另一車道繁忙,可通過開關獲得15s放行時間。

(4)有緊急車輛通過時,另需一開關設置兩車道均禁止通行20s。

2、主要功能模塊

智能交通燈控制系統主要功能模塊包括電源電路、單片機主控電路、按鍵控制電路和道路顯示電路組成。根據具體情況選擇合適型號的單片機,發光二極管,開關等硬件設備進行設計。

題目二 溫度控制系統設計

1、設計要求

(1)用單片機控制一個由1kw電爐加熱的電烤箱,最高溫度不超過120℃。(2)電烤過程恒溫控制,溫度可通過系統設置,誤差不超過±2℃。(3)實時顯示溫度和設置溫度,顯示精確為1℃。

(4)溫度超出設置溫度±5℃時發超限報警,對升溫和降溫過程不作要求。

2、主要功能模塊

溫度控制系統的主要功能模塊包括溫度測量(溫度傳感器、放大器、ADC轉換器)、溫度控制(光電隔離、驅動電路、可控硅電路、電爐)、溫度給定(按鍵)、溫度顯示和報警等幾部分。根據具體情況選擇合適型號的單片機,溫度傳感器、ADC轉換器等硬件設備進行設計。

題目三 點陣LED電子顯示屏的設計(第8章)

1、設計要求

(1)設計4個16×16的LED電子顯示屏,能穩定、清晰地顯示圖形或文字。(2)圖形或文字顯示通過編程能實現靜止、左移和右移等多種顯示方式。

(3)采用動態掃描方式,保證在目測條件LED顯示屏可亮度均勻地顯示圖形和文字,并且穩定、清晰、無串擾。

2、主要功能模塊

LED電子顯示屏系統的主要功能模塊包括單片機主控模塊、16×16的點陣顯示、行驅動電路、列驅動電路、譯碼電路幾部分。根據具體情況選擇合適型號的單片機等硬件設備進行設計。題目四 密碼鎖設計

1、設計要求

(1)要求密碼鎖可以設置8位密碼,每位密碼值范圍為1~8,用戶可以自行設定和修改密碼。

(2)若輸入的8位開鎖密碼不正確,則報警5s,連續錯3次要報警1分鐘,報警期間輸入密碼無效;輸入的8位開鎖密碼完全正確才能開鎖,開鎖時有1s提示音

(3)鎖內有備用電池,內部上電復位時才能設置或修改密碼;電磁鎖的電磁線圈每次通電5s,然后恢復初態;密碼鍵盤上只允許有8個密碼按鍵,密碼設定完畢后要有2s的提示音。

2、主要功能模塊

密碼鎖系統主要功能模塊包括主控模塊、按鍵掃描模塊、蜂鳴器、電源電路、復位電路、晶振電路、驅動電路幾部分。根據具體情況選擇合適型號的單片機,三極管等硬件設備進行設計。

題目五 LED點陣顯示電子鐘設計

1、設計要求

(1)時鐘的顯示由LED點陣構成。

(2)能正確顯示時間,上電顯示為12點,時間能夠由按鍵調整。(3)誤差小于1s。

2、主要功能模塊

LED點陣顯示電子鐘系統主要功能模塊包括主控模塊、LED點陣掃描模塊、電子鐘模塊組成。其中電子鐘由顯示電路、行驅動電路、列驅動電路、按鍵電路和復位電路、晶振電路、驅動電路幾部分組成。根據具體情況選擇合適型號的單片機,鎖存驅動器、譯碼器等硬件設備進行設計。題目六 智能搶答器設計

1、設計要求

(1)設計一個智力競賽搶答器,可同時供8名選手或8個代表隊參加比賽,分別使用一個按鈕,編號從0~7。

(2)設置一個控制開關,用來控制系統的清零和搶答開始。

(3)搶答器具有數據鎖存功能、顯示功能和聲音提示功能。搶答開始后,有選手按動搶答按鈕,鎖存對應編號,并在LED數碼管上顯示選手的編號,同時燈亮且伴隨聲音提示。同時鎖存電路,禁止其他選手搶答,顯示編號一直保持到系統清零。

2、主要功能模塊

智能搶答器系統主要功能模塊包括主控模塊、復位電路、電源電路、選手按鍵、控制開關按鈕,聲音提示和數碼顯示等部分組成。根據具體情況選擇合適型號的單片機,蜂鳴器、數碼管等硬件設備進行設計。題目七 比賽記分牌設計

1、設計要求

(1)啟動時顯示為0分,計分范圍為0~100分。(2)得分時加上相應的分數,失分時剪去相應的分數。(3)刷新分數的按鍵按下時,伴隨提示音。

2、主要功能模塊

比賽記分牌系統主要功能模塊包括單片機主控模塊、顯示模塊、按鍵模塊、電源模塊等部分組成。根據具體情況選擇合適型號的單片機,蜂鳴器、數碼管等硬件設備進行設計。題目八 學習型紅外線遙控器設計

1、設計要求

(1)適用于編碼式紅外線遙控型家用電器。(2)可遙控多臺家用電器。(3)具有一個學習/控制復用鍵。

(4)可通過一個設備選擇鍵和各個功能控制鍵實現對多臺設備的常用功能的學習和控制。(5)成本低,抗干擾能力強。

2、主要功能模塊

學習型紅外線遙控器控制系統主要功能模塊包括單片機主控模塊、紅外接收及發射電路、復位電路、按鍵及狀態指示電路等部分組成。根據具體情況選擇合適型號的單片機、一體化紅外遙控接收器等硬件設備進行設計。

三、課程設計的要求

1、課程設計的組織形式:將班級分成若干組,每組3~5人,自行分工完成一個題目。

2、課程設計流程:

(1)審題、查閱相關資料,確定系統總體方案;

(2)完成硬件設計,畫出硬件設計原理圖(包括設備模塊選擇、搭接線路、計算參數等)

(3)根據所完成的任務、硬件原理圖繪制系統軟件框圖,編制程序;

(4)系統調試,認真客觀地記錄和觀察實驗結果,對實驗結果進行深入的分析,寫出實驗心得;

(5)撰寫課程設計報告及答辯。

3、課程設計報告的編寫要求:(1)設計任務書一份;

(2)硬件設計原理圖一份(A4圖紙);(3)設計模塊說明;(4)軟件調試說明;

(5)實驗結果分析(包括硬件設計和軟件調試分析)。

四、成績考核方式

1、硬件設計成績(20%);

2、軟件設計成績(20%);

3、實驗調試(40%);

4、實驗報告和平時成績(20%)。

五、教材和參考文獻

1、推薦教材

[1]楊居義.單片機課程設計指導.清華大學出版社.2009年9月.[2]李海濱.單片機技術課程設計與項目實例.中國電力出版社.2009年10月.2、教學參考書

[1]付家才.單片機實驗與實踐.高等教育出版社.2006年3月.[2]李廣第.單片機基礎.北京航空航天大學出版社.2005年9.[3]朱珍.單片機原理.石油工業出版社.2001年6.[4]胡錦.單片機技術實用教程.高等教育出版社

2004.6.[5]薛鈞義.微機控制系統及應用.西安交通大學出版社.2003年2.[6]彭介華.電子技術課程設計指導.高等教育出版社.1999年10月.大綱制定人:李娜、吳澤、趙忠彪

大綱審定人:白政民

修訂日期:2012.3

第三篇:單片機課程設計指導書

單片機課程設計指導書

一、設計內容及步驟

1、方案設計

先要明確設計任務的要求,根據設計任務及要求,確定設計所要實現的具體功能,例如“流水燈”具體怎么“流”、有幾種“花樣”、如何操作、等等。這是一項見仁見智的工作,沒有統一的要求,各人可根據自己的理解自行設計。

2、硬件電路設計

設計能使單片機工作并實現所需功能的基本硬件電路,包括選擇和確定元器件的規格、參數。

3、軟件程序設計

單片機由于內存小、速度低,因此一般不用高級語言編程而多用匯編語言編程,這樣軟件程序和硬件電路就要有嚴格的對應關系。單片機電路的功能主要是由軟件程序實現的,因此硬件電路比較簡單而軟件程序相對復雜,軟件程序設計是整個課程設計的難點和重點。

4、燒寫調試程序

由于軟件程序一般都比較復雜,設計時難免會有考慮不周的問題,或是有一些疏漏,而這些問題或疏漏僅憑在紙上的分析是很難發現的,因此軟件程序設計好后還要經過運行調試,才能知道所設計的軟件程序能否實現之前確定的功能。這個過程往往要經過多次反復才能最終達到目的。一般先用計算機仿真進行調試,成功后再把程序寫到單片機中并制作實際電路進行驗證。

二、設計方法及要求

1、方案設計

首先要完整、準確地理解設計任務(雖然課程設計只是做個電路模型進行一下驗證演示,但設計時要假象是設計一個實用的產品),然后通過必要的調研、分析,綜合考慮各方面的因素,定出一個具體的設計目標。

例如,可先把自己當作用戶,從用戶的角度考慮這個“產品”應該具備哪些功能、怎樣操作使用比較方便,同時又安全可靠;再從廠家的角度,結合實際的客觀條件,考慮怎樣既能滿足用戶的基本需求,又能最大限度地降低生產成本。

因此設計目標不要追求盡善盡美,但也不能過于簡單,要從實際出發,用足用夠給定的硬件條件,充分開發可以用軟件實現的功能以使整體功能最大化。

2、硬件設計

硬件設計包括確定電路的結構組成、繪制電氣原理圖、確定元器件的規格參數。

由于是課程設計,多數題目采用最小系統即可,如果要求高一點,還要考慮抗干擾措施、電路的功耗、數據的斷電保護、元器件的來源和性價比等。

最小系統基本上是一種固定的模式,需要設計的就是合理分配單片機的資源,分配、確定輸入輸出端口用途,這沒有固定的模式,只要符合單片機的端口功能和性能就行。例如,輸入輸出應優先采用P1口,還要注意各口作輸出口時帶負載的能力,即高電平時所能輸出的最大電流,或低電平時允許灌入的最大電流,以及高阻態時所能承受的最高電壓。原則上輸出口所接負載的電流消耗不能超過輸出口允許進出的最大電流值,最好是讓輸出口通過緩沖驅動器(例如三極管)帶負載而不是直接帶負載,以免造成單片機的損壞。

硬件結構應結和應用軟件一并考慮,若某種功能既可以用硬件實現,也可以用軟件實現,應優先選擇用軟件實現,以盡可能地簡化硬件結構。

3、軟件設計

軟件設計要結合功能設計和硬件設計進行,或者說在做功能設計和硬件設計時就要對軟件設計有所考慮,即那些功能應由軟件完成。

設計軟件不要一來就急于用指令寫程序,要先做總體規劃設計,明確軟件要實現的功能是什么,分那些步驟、按什么順序來實現設計的功能,畫出程序的流程圖。程序的流程也就是單片機的工作過程,從通電工作開始,程序的第一步做什么,后面又做什么??;怎樣結束,等等。由于單片機是靠程序進行工作的,程序怎么規定它就怎么做,程序沒有規定它就無法工作,很死板。因此設計程序流程時要作仔細、周全的考慮,只要出現所設計的“產品”在正常操作使用過程中可能出現的任何一種情況,都要讓單片機知道該如何應對處理,否則就會出現死機無法工作的情況。

程序的流程是編寫程序的綱領、指導、前提,有了正確的程序流程,就容易編寫出正確的程序,單片機也才能實現所設計的功能。俗話說,磨刀不誤砍柴工,所以構思、設計程序的流程要給予高度的重視,要花大的氣力,有時一次兩次難以考慮周全,可能需要反反復復地進行多次。

如果整個流程實現一個總體功能,則流程的每一分支或步驟即可看成是一個子功能。對于比較復雜的功能,則子功能下還可再分解出孫功能,即總體功能畫一個流程圖,再針對較大的子功能畫細致的流程圖。總之流程圖畫的越細致,程序越容易編寫。

流程設計好后,也不要就急于寫具體的程序,因為那樣寫程序缺乏條理,很容易出錯,而且可讀性差,難以發現和糾正錯誤。因此寫程序前還應對程序的編寫結構進行認真的規劃設計。

程序的結構總體上可分為兩大部分,即主程序和子程序(或中斷程序)。主程序可按程序的功能分塊、分段進行編寫,每塊、每段完成一個特定的功能。如果某一塊或段在主程序中需多次出現,應把它作為子程序,以減少整個程序的長度。

程序設計的重點在于搭建程序的框架,框架搭成,工作就完成了大半,剩下的就是填充框架。填充框架不一定要自己去一條一條地想該用什么指令,可根據某一塊或某一段程序的功能,尋找具有相同功能的現成的程序塊、段去填充,對于一些“通用”的程序段,例如按鍵消抖程序、延時程序等,應優先采用成熟的“標準”程序,這樣既可減少工作量,又可減少出錯。事實上,程序設計大多數時候就是用一些零散、成熟的程序快(段)拼湊成一個自己所需的完整程序。

程序運行中,可能需要在不同的功能模塊間進行跳轉,這就需要在跳轉的入口處加上標號。為便于閱讀,在符合指令的語法規則的前提下,標號應能簡要地反映該段程序的功能,例如采取常見的英文縮寫或漢語拼音縮寫(通常是縮寫單字拼音的首字母)。

運用跳轉指令時要注意避免進入死循環。若不可避免進入死循環,或有意要進入死循環,除復位外,最好能有其他退出死循環的措施。

單片機程序的運行離不開單片機的內存,因此編寫程序前還應充分了解所用單片機的內存情況,尤其是要搞清楚那些具有特定用途的特殊內存的用途、位置及長度,同時還要搞清楚所用程序指令(包括常數表格)以及依程序流程產生的各項數據要占用的存儲空間,編寫程序前,要合理地分配利用內存空間,注意不要占用特殊內存。

最后,為了便于以后(以及其他人)對程序的閱讀、分析,所編寫的程序應該條理清楚,程序各塊、段、條的功能作用明確,在一些重要、關鍵或用意不是很明確的指令后最好加以注釋。

三、設計報告的內容及要求

1、方案設計說明

從總體上概括介紹所設計項目的構成、功能及操作使用方法,詳細說明該方案是怎么設計出來的。

2、硬件設計說明

畫出完整、規范的電路圖,說明單片機I/O口分配使用的情況以及為何這樣分配使用,分析介紹電路的工作原理,介紹電路中主要元器件在電路中的作用以及他們的規格或參數是怎樣確定的。

3、軟件設計說明

1)說明軟件設計的思路,介紹軟件的總體功能,畫出完整、規范的程序的流程圖;

2)介紹程序的總體框架結構,即整個程序由哪些模塊構成,各模塊的功

能是什么,其中又包含哪些子功能,等等,從總體上說明整個程序的執行及工作過程;

3)以一些重要或關鍵的程序段為例,說明該段程序的功能、作用和編寫

思路;

4)列出完整的程序清單,重要、關鍵或難以理解用意的模塊、語句要加

以注釋;

4、制作調試說明

介紹制作調試的過程、結果,以及在過程中出現的問題和解決問題的方法。

5、操作使用說明

介紹所設計“產品”的操作及使用方法。

6、總結說明

介紹本次課程設計的收獲、體會或經驗教訓,要求客觀、具體。

? 報告不要盲目追求篇幅,只要能說清楚問題即可,不必大量拷貝或摘抄資

料文獻。正文采用宋體四號字,若用手寫,要求字跡工整。

四、進度安排

本課程設計共兩周的時間,按10個工作日算,進度安排如下:

? 明確設計任務,調研、查閱資料,構思、確定總體方案,用兩天時間; ? 設計硬件電路,設計軟件功能,畫程序流程圖,用一天時間;

? 設計程序結構,編寫程序,用兩天時間;

? 通過計算機仿真驗證調試程序,用一天時間;

? 制作硬件電路,用一天時間;

? 通過硬件電路驗證調試程序,用一天時間;

? 撰寫設計報告,驗收設計成果,用兩天時間。

五、成績評定

及格標準如下:

1、按期完成設計并提交設計報告和交驗根據設計制作的實物,出勤良好;

2、報告的內容、格式符合要求,能反映設計過程的實際情況,設計制作的實物的功能和性能基本能達到設計任務的要求。

? 在及格的基礎上,根據設計成果的質量酌情評定為優秀、良好或中等。? 不交設計報告或報告的內容大部分是抄來的,以及不交驗設計制作的實物

或用別人的實物來交驗,出勤很少,將判為不及格。

第四篇:《單片機原理及接口技術》課程設計報告——多通道秒表定時器(DOC)

《單片機原理及接口技術》

課程設計報告

課程設計名稱:多通道秒表定時計數器設計

院 系:自動控制與機械工程學院

專業:電氣工程及其自動化

班級:2012級電氣二班

姓名:黃瑞

學號:201204170209

時間:2014年6月

目錄

一、課程設計目的和要求.....................................................................................................3

1、設計的目的.................................................................................................................3

2、設計的要求.................................................................................................................3

(1)總體要求.........................................................................................................3(2)具體要求.........................................................................................................4(3)設計提示.........................................................................................................4

二、設計的步驟和思路.........................................................................................................5

1、設計的步驟.................................................................................................................5

2、設計的思路.................................................................................................................5

三、硬件的設計.......................................................................................................................6

1、信號輸入電路.............................................................................................................7

2、數碼管的驅動模塊的電路.........................................................................................7

3、LED燈的驅動模塊電路............................................................................................8

四、軟件設計...........................................................................................................................8

1、單片機選擇.................................................................................................................8

2、系統軟件設計分析.....................................................................................................9

3、主要功能實現的程序...............................................................................................10(1)通道號的設置...............................................................................................10(2)定時值的設置...............................................................................................11

五、調試說明.........................................................................................................................12

1、未啟動仿真時,初始狀態:...................................................................................13

2、開始啟動仿真后:...................................................................................................13

3、通過按下K2切換至一、二、三、四通道和定時值的設置:............................14

4、定時時間到后對應通道號LED燈點亮:.............................................................15 六

心得體會.........................................................................................................................16

七、致謝.................................................................................................................................17 八、參考文獻.......................................................................................................................17

九、附錄.................................................................................................................................18

一、課程設計目的和要求

1、設計的目的

單片機課程作為獨立的教學環節,是自動化及相關專業集中實踐性環節系列之一,是學習完〈〈單片機原理與接口技術〉〉課程后,并在進行相關課程設計基礎上進行的一次綜合聯系。

單片機課程設計過程中,我們通過查閱資料,接口設計、程序設計、安裝調試等環節,完成一個基于MCS-51系列單片機,涉及多種資源應用,并具有綜合應用功能的小應用課程設計,不但使我們能熟練掌握課堂上所學知識,而且還能使我們在設備和軟件方面得到較全面的提高和鍛煉,也提高了我們運用綜合知識解決實際的能力。

課程設計以學生認知為主體,充分調動學生的積極性,重視學生自學能力的培養,根據具體課題安排時間確定課題的設計、編程和調試內容,分團隊開展課程設計活動,按時完成每部分工作。堅持獨立完成,實現課題規定的各項指標,并寫出設計報告。

要求學生自己查閱資料和充分利用所學知識,根據所要設計系統所要達到的功能,劃分軟硬件功能、選擇器件、編寫相關程序,用Proteus 在計算機上繪圖并用Keil進行程序邊編寫進行防真,再對整個系統做調試運行,培養學生在遇到問題時能進行獨立、系統、認真的思考,并進一步培養學生在團隊中的合作精神,不斷調試修改,直至達到設計的要求和取得滿意的效果,最后編寫系統說明書,其內容包括系統的功能介紹,使用范圍,主要性能指標,使用方法,注意事項等。

2、設計的要求

(1)總體要求

本次課程設計主要以軟件仿真為主,在為期兩周的工程實踐中,將占據主要時間,要求完成的任務主要包括以下幾點:

(1)獨立完成設計任務;

(2)繪制系統硬件總框圖;(3)繪制系統原理電路圖;

(4)制定編寫設計方案,編制軟件框圖,完成詳細完整的程序清單和注釋;(5)制定編寫調試方案,編寫課程設計任務書;(6)寫出設計工作小結。(2)具體要求

該課程設計要求基于AT89C51設計一個4位的LED數碼管作為“4通道的秒表定時器”。

1設計使顯示時間為0~99秒;

2當各通道定時時間到時,點亮對應的LED燈; 3設計一個具有4個按鍵的鍵盤:

K1:“設置”/“定時啟動”; K2:“通道”/“定時設置”; K3:“加一”; K4:“減一”;

4設計每到一秒鐘有聲音或LED提示提醒功能,可通過按鈕打開及關閉該提醒功能。(3)設計提示

(1)用6為7段LED數碼管作為顯示設備,最高為顯示通道號,低2位顯示時間。

(2)可采用定時器,定時時間100ms。(3)參考Protuse仿真效果圖

圖1-1 Protuse仿真效果圖

二、設計的步驟和思路

1、設計的步驟

(1)制定相應的設計方案;

(2)硬件的初步設計;

(3)選擇設計所用元器件和參數;(4)在Proteus 7.5中設計和連接電路圖;(5)軟件的初步設計;(6)編寫程序實現其功能;(7)在keil_v4中進行調試運行;(8)硬件和軟件聯合調試。

2、設計的思路

為使數碼管同時顯示通道號和定時值(0~99秒),選用4位7段LED數碼管,當定時時間到時點亮對應的LED燈,課程中我們選用LED-BLUE燈,并設計有四位按鍵的鍵盤,分別為K1、K2、K3、K4來控制定時啟動/停止、通道號和定時時間的切換設置、通道號/定時時間加

一、通道號/定時時間減一。通過這四個按鍵來控制整個電路的運行、LED燈的點亮和數碼管的顯示。具體控制如下:(1)通道號為1~4,對應LED燈為LED1~LED4,執行程序前可任意選擇通道號;定時值可在0~99S內任意設置;

(2)當程序運行初始化化后,如果K2按下,則切換至通道號的設置,通過K3、K4來增加或減小通道號;當選擇好通道號后如果按下K2則切換至定時值的設置,通過K3、K4來增加或減小定時值;當定時值設置好之后按下K1則程序執行所選通道的秒表定時;當定時時間到時,對應通道的LED燈點亮;

(3)當程序運行初始化后直接按下K3、K4進行定時時間的設置,通過K3、K4

來增加或減小定時值;當設置好之后按下K1后直接執行一通道的秒表定時;當定時時間到時,對應通道的LED燈點亮;

(4)當程序運行初始化后直接按下K3、K4進行定時時間的設置,通過K3、K4來增加或減小定時值;當設置好之后按下K2則切換至通道號的設置,通過K3、K4來增加或減小通道號;當設置好后按下K1則執行對應通道的定時;當定時時間到時,對應通道的LED燈點亮;

(5)當程序運行初始化后直接按下K3、K4進行定時時間的設置,通過K3、K4來增加或減小定時值;當設置好之后按下K2則切換至通道號的設置,通過K3、K4來增加或減小通道號;當設置好后按下按下K2則又切換至定時時間的設置,通過K3、K4來增加或減小定時值;依次可不斷循環通道號和定時時間的切換設置,直至達到自己所想要的定時時間,此時按下K1則執行對應通道的秒表定時,當定時時間到時點亮對應的LED燈。

三、硬件的設計

硬件電路設計框圖如下圖所示,主要由:4個按鍵的鍵盤、AT89C51單片機、數碼管、4個LED燈。

根據硬件系統電路設計框圖,對各部分模塊的原理進行分析,編寫個子模塊程序,最終將其組合。

圖3-1硬件電路設計框圖

1、信號輸入電路

獨立式按鍵就是各按鍵相互獨立,每個按鍵各接入一根輸入線,一根輸入線上的按鍵工作狀態不會影響其他輸入線上的工作狀態。因此,通過檢測輸入線的電平狀態可以很容易判斷哪個按鍵按下了。獨立式按鍵電路配置靈活,軟件簡單。但每個按鍵需要占用一個輸入口線,在按鍵數量較多時,需要較多的輸入口線且電路結構復雜,故此種鍵盤適用于按鍵較少或操作速度較高的場合。

圖3-2鍵控電路

消除鍵抖動。一般按鍵在按下的時候有抖動的問題,即鍵的簧片在按下時會有輕微的彈跳,需經過一個短暫的時間才會可靠地接觸。若在簧片抖動時進行掃描就可能得出不正確的結果。因此,在程序中要考慮防抖動的問題。最簡單的辦法是在檢測到有鍵按下時,等待(延遲)一段時間再進行“行掃描”,延遲時間為10~20ms。這可通過調用子程序來解決,當系統中有顯示子程序時,調用幾次顯示子程序也能同時達到消除抖動的目的。

2、數碼管的驅動模塊的電路

圖3-3數碼管驅動模塊電路

3、LED燈的驅動模塊電路

3-4LED燈的驅動電路

四、軟件設計

1、單片機選擇

AT89C51是美國ATMEL公司生產的低電壓、高性能CMOS 8位單片機,片內含4K bytes的可反復擦寫的只讀程序存儲器(PEROM)和128bytes的隨機存取數據存儲器(ROM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器(CPU)和Flash存儲單元。

功能強大AT89C51單片機可提供許多高性價比的應用場合,可靈活應用于各種控制領域。此設計中就采用AT89C51。單片機小系統的電路圖如圖所示:

圖4-1信號輸入電路

單片機AT89C51的主要特征:

①與 MCS-51 兼容,4K 字節可編程閃爍存儲 ②靈活的在線系統編程,掉電標識和快速編程特性; ③壽命為 1000 次寫/擦周期,數據保留時間可 10 年以上; ④全靜態工作模式:0HZ33HZ; ⑤三級程序存儲器鎖定;

⑥128×8 位內部 RAM,32 位可編 I/O 線;

⑦兩個 16 位定時器/計數器,5 個中斷源,4 個 8 位并行的 I/O 接口,個全雙工 I/O 接口。

2、系統軟件設計分析

模塊的劃分:

(1)鍵盤的設置、啟動、停止、加

一、減一;(2)數碼管顯示通道號和定時時間;

(3)定時時間到后對應通道號的LED燈點亮。程序流程圖如下:

開始 初始化 Y掃描K2鍵按N Y掃描K2鍵按下? 通道號設定下? N 通道號加一 Y掃描K3鍵按掃描K3鍵按Y下?下? 定時時間加一 N N 通道號減一 Y掃描K4鍵按掃描K4鍵按Y下?下? 定時時間減一 N N掃描K1鍵按N下? Y數碼管計時 定時時間N到? Y通道號對應的LED燈點亮 結束

圖4-1程序流程圖

3、主要功能實現的程序

1)通道號的設置

uchar set_thax()

//設置通道函數

{

key_set();

if(set_2==2)

{

delay(10);

if(k3==0)

//K3加1

{

delay(30);

if(k3==0)

{

delay(300);

sec++;

if(sec==5)

{sec=1;}

}

}

if(k4==0)

//K4減1

{

delay(30);

if(k4==0)

{

delay(300);

sec--;

if(sec==0)

{sec=4;}

}

}

}

a=sec;

return a;}

2)定時值的設置

void set_time()//設置時間函數

{ key_set();if(set_2==1){

delay(10);

if(k3==0)

//K3加1

{

delay(30);

if(k3==0)

{

delay(300);

minu++;

if(minu==100)

{minu=1;}

}

}

(11

if(k4==0)

//K4減1

{

delay(30);

if(k4==0)

{

delay(300);

minu--;

if(minu==-1)

{

}

}

}

} }

五、調試說明

仿真結果和分析:

minu=99;12

1、未啟動仿真時,初始狀態:

圖5-1未啟動仿真時,初始狀態

2、開始啟動仿真后:

圖5-2開始啟動仿真后

3、通過按下K2切換至一、二、三、四通道和定時值的設置:

圖5-3通過按下K2切換至一、二、三、四通道和定時值的設置

4、定時時間到后對應通道號LED燈點亮:

圖5-4定時時間到后對應通道號LED燈點亮

心得體會

作為一名電氣工程及其自動化專業的大二學生,我覺得做單片機課程設計是十分有意義的,而且是十分必要的。在已度過的大學時間里,我們大多數接觸的是專業課。我們在課堂上掌握的僅僅是專業課的理論知識,如何去鍛煉我們的實踐能力?如何把我們所學的專業基礎課理論知識運用到實踐中去呢?我想做類似的課程設計就為我們提供了良好的實踐平臺。

在兩個周的學習工作中,通過查閱相關資料了解了直流調速系統,加深了對直流電機調速控制系統的認識,熟悉了單片機在控制系統中的運用。并且在所學知識的基礎上,利用已有的直流調速系統設計,嘗試了自己的一些研究。并且使我將以前所學的知識系統化,理論化,實用化。對如何使用已有知識及獲取相關資料方面的能力又有了提高。

根據課題要求,利用所學的相關知識,查詢相關的資料。根據課程條件,找到適合的方案,找到需要的元器件。

根據課程設計的要求和自己所要增加的功能寫好程序流程圖,在程序流程圖的基礎上,根據芯片的功能寫出相應的程序。然后再進行程序調試和相應的修改,以達到能夠實現所要求的功能的目的。

除編寫實現設計要求外的程序,還要根據課程設計的實際情況,添加些額外程序來使系統更加的穩定,如開關的去抖(采用延遲)。

該課程設計的程序可以參考MCS-51系列單片機,也可自己根據自己熟悉的方法來編程如單片機C語言或匯編語言。

在設計控制開關時,注意2個中斷的打開和關閉的先后順序,否則就會出錯。這次的單片機課程設計重點是理論與實際的相結合。該設計從頭到尾都要自己參與,熟悉了整個設計的過程,更充分的鍛煉了自己。

在此要感謝我的指導老師,感謝老師給我這樣的機會鍛煉。在整個設計過程中我懂得了許多東西,也培養了我獨立工作的能力,樹立了對自己工作能力的信心,相信會對今后的學習工作生活有非常重要的影響。而且大大提高了動手的能力,使我充分體會到了在創造過程中的探索的艱難和成功的喜悅。雖然這個設計還不是很完善,但是在設計過程中所學到的東西是這次設計的最大收獲和財富,使我終身受益。

七、致謝

為期兩個周的課程設計也接近了尾聲。此次課程設計的完成離不開老師和同學對我的幫助,使我對單片機的工作原理和使用更近了一步。

首先要感謝我敬愛的指導教師。他們在學術上的精心指導和嚴格要求,在系統研究和調試過程中給予的及時幫助。這些使我組的課程設計得以順利完成,并激勵著我們在今后的人生道路上不斷開拓進取,勇往直前。在此,我們再一次對諸位老師的培養和關懷表示誠摯的謝意!

同時我們也非常感謝所有教導過我的老師們,他們不但在課程設計中指導我們學習和生活,而且在完成論文期間給我許多幫助和建議,他們兢兢業業、對工作認真負責的態度為我們做出了好的表率,時刻鞭策著我們向他們學習。

非常感謝我的同學們,在與他們共同的學習、工作、生活過程中,他們給予了我及時的幫助和建議,開拓了我的思路。這使我在學習和生活中受益匪淺。

最后,向所有幫助過我的老師和同學致以最誠摯的謝意。

八、參考文獻

[1] 陳伯石.電力拖動自動控制系統[M].北京:機械工業出版社,2003.[2] 鐘富昭.8051單片機典型模塊設計與應用[M].北京:人民郵電出版社,2007 [3] 張靖武.單片機系統的PROTEUS設計與仿真[M].北京:電子工業出版社,2007 [4] 楊恢先.單片機原理及應用[M].北京:人民郵電出版社,2006 [5] 孟慶濤.圖解電子控制電路[M].北京:人民郵電出版社,2006 [6] 謝維成.單片機原理與應用及C51程序設計[M].北京:清華大學出版社,2006 [7] 周潤景.基于PROTEUS 的電路及單片機系統設計與仿真[M].北京:北京航空航天出版社,2006 [8] 李光飛.單片機課程設計實例指導[M].北京:北京航空航天出版社,2004 [9] 杜坤梅.電機控制技術[M].哈爾濱:哈爾濱工業大學出版社,2002 [10] 李廣第.單片機基礎(修訂版)[M].北京:北京航空航天大學出版社,2001 [11] 吳亦峰.單片機原理與接口技術[M].北京:電子工業出版社

九、附錄

#include #define uint unsigned int #define uchar unsigned char

sbit QB1=P2^0;sbit QB2=P2^1;sbit QB3=P2^2;sbit QB4=P2^3;sbit k1=P1^0;//k1按鍵, sbit k2=P1^1;//k2按鍵, sbit k3=P1^2;//k3按鍵,加1 sbit k4=P1^3;//k4按鍵,減1 sbit led4=P3^0;//LED燈 sbit led3=P3^1;sbit led2=P3^2;sbit led1=P3^3;sbit what=P0;uchar sec=1,minu,mstcnt;// 定義初始量 uchar set_2=1,set_1=1;uchar mis,mig,ss,sg;uchar code table[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//共陰顯示

uchar code tabl[]={0x3F,0x06,0x5B,0x4F,0x66};int a;

void delay(uint);//延時函數 void key_change();// 掃描K1 void key_set();//

掃描K2 void disp(uchar,uchar,uchar,uchar);//顯示函數 void set_time();//設置時間函數 uchar set_thax();//設置通道函數 void timer0();void haap();

void main()//主函數 { EA=1;//系統允許有開放的中斷 ET0=1;//允許T0中斷

TR0=1;//開啟中斷,啟動定時器 TMOD=0x01;TH0=0x00;//選擇數碼管

TL0=0x01;

while(1){

sg=sec%10;//通道個位 mis=minu/10;//顯示時間十位 mig=minu%10;key_set();//掃描K2 key_change();//掃描K1 if(set_1==1)//設置顯示條件 {haap();} if(k1==1&&k2==1)//正常顯示 { delay(10);if(k1==1&&k2==1){ sg=sec;disp(sg,mis,mig,ss);} } key_change();

if(set_1 ==2)//啟動條件

{

timer0();

} key_change();if(set_1==3){minu=0;} } }

void haap()

//設置顯示函數{ if(set_1==1){ delay(10);key_set();if(set_2==1){ delay(10);

set_time();}

key_set();if(set_2==2){

delay(10);

set_thax();

} } }

void timer0()interrupt 1 using 0 //啟動函數{

TH0=0x01;TMOD = 0x01;

if(set_1==2)

{ delay(10);mstcnt++;

if(mstcnt==20){

mstcnt=0;

if(minu==0)

{

minu=0;

set_thax();

if(a==1)

{

led1=0;

led2=1;

led3=1;

led4=1;

}

else

{

if(a==2)

{

led1=1;

led2=0;

led3=1;

led4=1;

}

else { if(a==3)

}

}

}

else

{

minu--;

} } if(minu==0){ minu=0;

} } }

void key_change()//k1按鍵掃描 { if(k1==0){ delay(20);

{ led1=1;led2=1;led3=0;led4=1;

} else

if(a==4)

{

led1=1;

led2=1;

led3=1;

led4=0;

}

if(k1==0){ set_1++;while(k1!=1);if(set_1==4){set_1=1;} } } }

void key_set()//k2按鍵掃描 { if(k2==0){ delay(20);if(k2==0){ set_2++;while(k2!=1);if(set_2==3){set_2=1;} } } } void disp(uchar sg,uchar mis,uchar mig,uchar ss)//顯示函數{ QB1=0;QB2=1;QB3=1;QB4=1;P0=table[sg];//第1個數碼管顯示通道 delay(10);//延時一小會

QB1=1;QB2=1;QB3=0;QB4=1;P0=table[mis];//第3個數碼管顯示十位 delay(10);QB1=1;QB2=1;QB3=1;QB4=0;P0=table[mig];//第4個數碼管顯示個位

delay(10);QB1=1;QB2=1;QB3=1;QB4=1;P0=table[ss];//第2個數碼管不顯示 delay(10);}

void set_time()//設置時間函數 { key_set();if(set_2==1){

delay(10);if(k3==0)//K3加1 { delay(30);if(k3==0){ delay(300);minu++;if(minu==100){minu=1;} } } if(k4==0)//K4減1 { delay(30);if(k4==0){ delay(300);minu--;if(minu==-1){

minu=99;

}

} } } }

uchar set_thax()

//設置通道函數

{ key_set();if(set_2==2){

delay(10);if(k3==0)//K3加1 { delay(30);if(k3==0){

delay(300);sec++;

if(sec==5){sec=1;} } } if(k4==0)//K4減1 { delay(30);if(k4==0){ delay(300);sec--;if(sec==0){sec=4;} } } } a=sec;return a;}

void delay(uint k)//延時函數 { uint i,j;for(i=k;i>0;i--)for(j=80;j>0;j--);}

第五篇:單片機原理及應用課程設計

智能電子鐘(LCD顯示)

1、設計內容及要求...............................................................................................2 1.1、設計內容..............................................................................................2 1.2、設計要求..............................................................................................2 1.3、撰寫設計報告......................................................................................2

2、總體方案設計...................................................................................................2 2.1、方案圖................................................................................................2 2.2、面板布置圖.........................................................................................2 2.3、方案討論.............................................................................................3 2.4、明晰任務.............................................................................................4

3、電路原理圖......................................................................................................4

4、程序框圖.........................................................................................................5 4.1、顯示子程序流程圖............................................................................5 4.2、實時時鐘芯片 1302 讀/寫數據流程圖............................................6

5、編程序................................................................................................................6

6、調試....................................................................................................................6 6.1、軟件調試.............................................................................................6 6.2、仿真調試..............................................................................................7

7、自我感想............................................................................................................7

8、參考書目............................................................................................................8 附錄:C 語言編程源程序.......................................................................................8 1.設計內容及要求 1.1、設計內容:

以AT89C51 單片機為核心,制作一個 LCD 顯示的智能電子鐘。1.2、設計要求:

(1)計時:秒、分、時、天、周、月、年。(2)閏年自動判別。

(3)五路定時輸出,可任意關斷(最大可到16路)。(4)時間、月、日交替顯示。(5)自定任意時刻自動開/關屏

(6)計時精度:誤差≤1秒/月(具有微調設置)

(7)鍵盤采用動態掃描方式查詢。所有的查詢、設置功能均由功能鍵K1、K2完成 1.3、撰寫設計報告

單片機課程設計是以課題或項目設計方式開展的一門課程,具有較強的綜合性、實踐性,是工科、工程類院校或職業類院校電類專業在校生的必修課,是將單片機原理與應用課程的理論知識轉變為應用技術的重要教學環節。這一環節不但能加深對單片機原理的理解,而且還能培養學生的實踐動手能力,開發學生的分析、解決問題的能力。單片機課程設計環節的訓練能夠讓學生知道單片機工程項目的制作過程,使學生盡早了解單片機系統的開發過程。

2.總體方案設計 2.1、方案圖

2.2、面板布置圖

2.3、方案討論

方案一:采用實時時鐘芯片

實時時鐘芯片具備年、月、日、時、分、秒計時功能和多點計時功能,計時數據的更新每秒自動進行一次,不需程序干預。計算機可通過中斷或查詢方式讀取計時數據進行顯示,因此計時功能的實現無需占用 CPU 的時間,程序簡單。此外,實時時鐘芯片多數帶有鋰電池做后備電源,具備永不停止的計時功能;具有可編程方波輸出功能,可用做實時測控系統的采樣信號等;有的實時時鐘芯片內部還帶有非易失性 RAM,可用來存放需長期保存但有時也需變更的數據,由于功能完善,精度高,軟件程序設計相對簡單,且計時不占用 CPU 時間,因此,在工業實時測控系統中多采用這一類專用芯片來實現實時時鐘功能。

方案二:軟件控制

利用單片機內部的定時/計數器進行中斷定時,配合軟件延時實現時、分、秒的計時及秒表計時。該方案節省硬件成本,且能使設計者對單片機的指令系統能有更深入的了解,從而掌握單片機應用技術 MCS-51 匯編語言程序設計方法,因此,本系統設計采用此種軟件控制方法來實現計時。而由于 Atmel 公司 的AT89C51 是一種自帶 4KB Flash 存儲器的低電壓、高性能的 CMOS 8 位微處理器。該器件采用 Atmel 高密度非易失存儲器制造技術制造,與工業標準 的MCS-51 指令集和輸出引腳相兼容。AT89C51 將多功能 8 位 CPU 和閃存集成在單個芯片中,是一種高效的微控制器,使用也更方便,壽命更長,可以反復擦除 1000 次。形成了功能強大、使用靈活和具有較高性能價格比的微控制器。它的功能強大而且也比較容易購買,故本設計中所選的單片機為 AT89C51 單片機。2.4、明晰任務

采用 AT89C51 單片機作為系統的控制核心。時鐘數據通過市場上流行的時鐘芯片 DS1302 來獲取。DS1302 是 DALLAS 公司推出的涓流充電時鐘芯片,內含一個實時時鐘/日歷和 31 字節靜態 RAM,可以通過串行接口與計算機進行通信,使得管腳數量減少。實時時鐘/日歷電路能夠計算 2100 年之前的秒、分、時、日、星期、月、年的,具有閏年自動判斷調整的能力。定時電路能夠實現自定任意時刻自動開/關屏,采用 LCD LM016L 顯示年、月、周、天、時、分、秒。通過按鍵開關實現微調,確保計時精度:誤差≤1 秒/月。DS1302 時鐘芯片的主要功能特性:

(1)能計算 2100 年之前的年、月、日、星期、時、分、秒的信息;每月的天數

和閏年的天數可自動調整;時鐘可設置為 24 或 12 小時格式。(2)31B 的 8 位暫存數據存儲 RAM。(3)串行 I/O 口方式使得引腳數量最少。

(4)DS1302 與單片機之間能簡單地采用同步串行的方式進行通信,僅需 3 根線。

(5)寬范圍工作電壓 2.0-5.5V。

(6)工作電流為 2.0A 時,小于 300nA。

(7)功耗很低,保持數據和時鐘信息時功率小于 1mW。

3.電路原理圖

4.程序框圖

4.1、顯示子程序流程圖

4.2、實時時鐘芯片 1302 讀/寫數據流程圖

5.編程序 源程序見附錄部分 6.調試 6.1、軟件調試

目前設計過程中容易造成元件和儀器儀表的損壞,而借助 Keil 和 Proteus進行單片機系統的開發,可以節省設計成本,提高設計速度。Keil 軟件包是一個功能強大的開發平臺,它包括項目管理器、CX51 編譯器、AX51 宏匯編器、BL51/LX51 連接定位器、RTX51 實時操作系統、Simulator 軟件模擬器及 Monitor51 硬件目標調試器。它是一種集成化程度高的文件管理編譯環境,主要功能為編譯 C 語言源程序,匯編程序或混合語言源程序,連接和定位目標文件和庫,創建 HEX 文件,調試目標程序等。Keil 是目前最好的 51 單片機開

發工具之一。Keil 支持軟件模擬仿真(Simulator)和用戶目標調試(Monitor51)兩種工作模式。前者不需要任何單片機硬件即可完成用戶程序仿真、調試,后者利用硬件目標板中的監控程序可以直接調試目標硬件系統。Proteus 是一個完整的嵌入式系統軟件、硬件設計仿真平臺,它包括原理圖輸入系統 ISIS、帶擴展的 Prospice 混合模型仿真器、動態元件庫、高級圖形分析模塊和處理器虛擬系統仿真模型 VSM。ISIS 是 Proteus 系統的中心,具有超強的控制原理設計環境。ProteusVSM 最重要的特點是能把微處理器軟件作用在處理器上,并和該處理器的任何模擬和數字元件協同仿真,仿真執行目標碼就像在真正的單片機系統上運行一樣,VSM CPU 模型能完整仿真 I/O 接口、中斷、定時器、通用外部設備口及其他與 CPU 有關的外部設備,甚至能仿真多個處理器。6.2、仿真調試 Proteus 仿真

7.自我感想

經歷過這么多天不間斷的課程設計,我們有挺多感觸的,從最基本上說我們看到了,也意識到了自己的不足,對于不斷克服的各種阻礙也讓我們體會到了課程設計的意義所在。對于只接觸課本只動筆桿的我們,面臨實際的設計尺寸,讓我們很是尷尬,都說理論聯系實際,真正到聯系的時候才發現挺困難的,不過正是理論知識的各種補充才讓我們能最終完成任務,然后深深地體會到理論對現實的指導作用。我們現在最缺乏的就是實際工作經驗,而理論聯系實踐并不像我們想象的那么簡單,他需要堅實的理論基礎和實際工作經驗。堅實的理論基礎決定了我必須堅持學習新的知識新的理論,完善了自己的知識結構,才能在以后的實際中輕松面對,才能設計出更好的更有益于人們生活與工作的機械,才能跟上時代的步伐,不被淘汰。在這個一邊忙著復習忙著考試又要準備課程設計的日子里,真真正正的體會到了時間的寶貴,有點像高中忙忙碌碌的生活,不過能按時完成課程設計對我們來說也是一個莫大的安慰。嚴謹和細心是做機械設計的必要態度,要想做好一件事,就必須一絲不茍、態度認真。俗話說:“失之毫厘,謬之千里。”在機械設計上尤其應該注意。在以后的工作中,你的很小的一個疏忽將會造成一個公司很大的損失,甚至給用戶帶去生命危險,而自己也會為自己的不負責任行為付出代價。再者就是設計中要嚴謹和細心,對于機械是不能出差錯的,任何的微小誤差都可能產生不可預計的后果,當然對于我們來說就是設計中要走一些彎路,而且在這個嚴重缺少時間又惦記回家問題的我們來說也是一個很嚴重的后果。不過,困難雖是難免的,但我們有信心就能并且已經戰勝了困難,完成了這個無比揪心的課程設計。因為時間等各種關系設計中難免有些不足還請老師助教給予批評和幫助。

8.參考文獻

《MCS-51 系列單片機原理及應用》 孫涵芳 主編 《新概念 51 單片機 C 語言教程》 郭天祥 主編 《51 單片機課程設計》 周向紅 主編 《單片機原理及其應用教程》 張元良 主編 附錄:C 語言編程源程序

#include #include //--------#define uint unsigned int #define uchar unsigned char //--------/*ucharcode table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf 8, 0x80,0x98,0x88,0x83,0xc6,0xa1,0x86,0x8e};// 共 陽極數碼管代碼 */ ucharcode xingqi[8]={0x00,0x07,0x01,0x02,0x03,0x04,0x05, 0x06};//星期顯示代碼 uchar miao,shi,fen,date,month,day,year,year10,set,mun,set_shi,set_fen,time_ flag;// 全 局 定 義

uint year_data,t;//-----sbit SCLK=P3^5;//DS1302 通訊線定義 sbit DIO=P3^6;sbit RST=P3^7;sbit speak=P0^0;sbit DS=P2^0;//595 通訊線定義 sbit SH_CP=P2^1;sbit ST_CP1=P2^2;sbit ST_CP2=P2^3;sbit ST_CP3=P2^4;sbit ST_CP4=P2^5;sbit ST_CP5=P2^6;sbit ST_CP6=P2^7;sbit ST_CP7=P3^0;sbit ST_CP8=P3^1;sbit OE1=P1^0;sbit OE2=P1^1;sbit OE3=P1^2;sbit OE4=P1^3;sbit OE5=P1^4;sbit OE6=P1^5;sbit OE7=P1^6;sbit OE8=P1^7;sbit K1=P3^2;//按鍵接口定義 sbit K2=P3^3;sbit K3=P3^4;sbit K4=P0^1;sbit K5=P0^2;//-----void write_595(uchar temp)//寫 74HC595 一個字節 { uchar temp_595,i;temp_595=temp;for(i=0;i<8;i++)

{

SH_CP=0;

_nop_();_nop_();_nop_();if(temp_595&0x80){ DS=1;} else { DS=0;} _nop_();_nop_();_nop_();SH_CP=1;temp_595<<=1;} } //--------------void delay(uint z)//Nms 延時 { uint x,y;for(x=z;x>0;x--)for(y=112;y>0;y--);} //-------------void delaynus(uint z)//ums 延時 { uint x,y;for(x=z;x>0;x--)for(y=10;y>0;y--);} //---------------void write(uchar date)//寫入 DS1302 一個字節 { uchar temp,i;RST=1;SCLK=0;temp=date;for(i=0;i<8;i++){ SCLK=0;if(temp&0x01)DIO=1;else DIO=0;SCLK=1;temp>>=1;} } //-----uchar read()//讀出 DS1302 一個字節 { uchar a,temp;RST=1;for(a=8;a>0;a--){ temp>>=1;SCLK=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();SCLK=0;if(DIO){ temp=temp|0x80;} else { temp=temp|0x00;} } return(temp);} //---void write_1302(uchar add,uchar dat)//寫 DS1302 數據 { RST=0;SCLK=0;RST=1;write(add);write(dat);SCLK=1;RST=0;} //----------uchar read_1302(uchar add)// 讀 DS1302 數據 { uchar temp;RST=0;SCLK=0;RST=1;write(add);temp=read();SCLK=1;RST=0;return(temp);} //------------void display()//顯示子程序 { miao=read_1302(0x81);//讀秒 fen=read_1302(0x83);//讀分

shi=read_1302(0x85)&0x3f;//讀時 date=read_1302(0x87);//讀日 month=read_1302(0x89);//讀月 year=read_1302(0x8d);//讀年 day=read_1302(0x8B);//讀星期 write_595(miao);//顯示秒 ST_CP1=0;ST_CP1=1;ST_CP1=0;delaynus(10);write_595(fen);//顯示分 ST_CP2=0;ST_CP2=1;ST_CP2=0;delaynus(10);write_595(shi);//顯示時 ST_CP3=0;ST_CP3=1;ST_CP3=0;delaynus(10);write_595(date);//顯示日 ST_CP4=0;ST_CP4=1;ST_CP4=0;delaynus(10);write_595(month);//顯示月 讀 ST_CP5=0;ST_CP5=1;ST_CP5=0;delaynus(10);write_595(year);//顯示年 ST_CP6=0;ST_CP6=1;ST_CP6=0;delaynus(10);write_595(xingqi[day]);//顯示星期 ST_CP7=0;ST_CP7=1;ST_CP7=0;delaynus(10);} //----------void ds1302_init()//1302 初始化 { RST=0;SCLK=0;/* write_1302(0x80,0x00);//設置初始值 SEC write_1302(0x82,0x00);//設置初始值 MIN write_1302(0x84,0x00);//設置初始值 HR write_1302(0x86,0x00);//設置初始值 DATE write_1302(0x88,0x00);//設置初始值 MONTH write_1302(0x8A,0x00);//設置初始值 DAY */ write_1302(0x8C,0x10);//設置初始值 YEAR } //--------------void PORT_INIT()//端口初始化 { P0=0XFE;P1=0X00;P2=0X00;P3=0XFC;} void time_init()//定時器初始化 { TMOD=0x11;//設置定時 器 01 都為工作方式 1 TH0=(65536-50000)/256;//裝入初值 TL0=(65536-50000)%256;TH1=(65536-10000)/256;//裝入初值 TL1=(65536-10000)%256;PT0=1;//T0 定時器優先級最高 EA=1;//開總中斷

ET0=1;//開定時器 0 中斷 ET1=1;//開定時器 1 中斷 TR0=1;//啟動定時器 0 TR1=1;// 啟動定時器 1 } //--------------void main(void)//主程序 { PORT_INIT();ds1302_init();time_init();year=read_1302(0x8d);//讀年數據 year_data=0x2000|year;write_595(year_data>>8);//顯示 2010 年的 20 字樣 ST_CP8=0;ST_CP8=1;ST_CP8=0;set_shi=0x09;//鬧鐘初始值設定 set_fen=0x39;time_flag=0;//標志位 set=0;while(1){ switch(set){ case 0: //設置秒 { display();// 顯 示 子 程 序

if((shi==set_shi)&&(fen==set_fen)&&(time_flag==0))小時和分鐘 { speak=~speak;if((K2==0)&&(time_flag==0))//按鍵 K2 停 止鬧鐘響 { P0&=0XFE;time_flag=1;} delay(10);} } break;} if(fen==set_fen+1)// 當 不 按 下 鬧 鐘 停止按鍵,一分鐘后自動停止鬧 鐘 { P0&=0XFE;time_flag=0;} } } //--------void time0()interrupt 1 // 定時 器 0 中斷 { TR0=0;TH0=(65536-50000)/256;TL0=(65536-50000)%256;mun++;if(mun==15){ mun=0;switch(set){ case 1: //設置秒閃爍 {OE1=1;delay(300);OE1=0;} break;case 2: //設置分閃爍 { OE2=1;delay(300);OE2=0;} break;case 3: //設置時閃爍 { OE3=1;delay(300);OE3=0;} break;case 4: //設置日閃爍 { OE4=1;delay(300);OE4=0;} break;case 5: //設置月閃爍 { OE5=1;delay(300);OE5=0;} break;case 6: //設置年閃爍 { OE6=1;OE8=1;delay(300);OE6=0;OE8=0;} break;case 7: //設置星期閃爍 { OE7=1;delay(200);OE7=0;} break;case 8: //設置鬧鐘閃爍 { OE2=1;OE3=1;delay(200);OE2=0;OE3=0;} break;} } TR0=1;} //-----------void time1()interrupt 3 // 定時器 1 中斷 { TR1=0;//先關定時器 TH1=(65536-20000)/256;TL1=(65536-20000)%256;//-if(K1==0){ delay(10);if(K1==0){ set++;if(set==9){ set=0;write_1302(0x80,miao);//設置初始值 SEC write_1302(0x82,fen);//設置初始值 MIN write_1302(0x84,shi);//設置初始值 HR write_1302(0x86,date);//設置初始值 DATE write_1302(0x88,month);// 設置初始值 MONTH write_1302(0x8A,day);//設置初始值 DAY write_1302(0x8C,year_data);//設置初始值 YEAR } t=50000;while((!K1)&&t){ t--;} } } //-------if(K2==0){ delay(10);if(K2==0){ switch(set){ case 1: { miao++;if((miao&0x0f)>0x09){ miao+=0x10;miao&=0xf0;} if(miao==0x60){ miao=0x00;} write_595(miao);ST_CP1=0;ST_CP1=1;ST_CP1=0;} break;case 2: { fen++;if((fen&0x0f)>0x09){ fen+=0x10;fen&=0xf0;} if(fen==0x60){ fen=0x00;} ST_CP2=0;ST_CP2=1;ST_CP2=0;} break;case 3: { if((read_1302(0x85)&0x80)==0x00){ shi++;if((shi&0x0f)>0x09){ shi+=0x10;shi&=0xf0;} if(shi==0x24)//24 小時制 { shi=0x00;} } else { shi=(shi|0x80)+1;if((shi&0x0f)>0x09){ shi+=0x10;shi&=0xf0;} if(shi==0x12)//12 小時制 { shi=0X80;} } write_595(shi);//顯示時 ST_CP3=0;ST_CP3=1;ST_CP3=0;} break;case 4: { date++;if((date&0x0f)>0x09){ date+=0x10;date&=0xf0;} if((date==0x32)&&((month==0x01)||(month==0x03)||(month==0x05)||(month ==0x07)||(month==0x08)||(month==0x10)||(month==0x12))){ date=0x01;} else if((date==0x31)&&((month==0x04)||(month==0x06)||(month==0x09)||(month ==0x11))){ date=0x01;} else if((date==0x29)&&(month==0x02)&&((year_data|read_1302(0x8d))%100!=0)& &((year_data|read_1302(0x8d))%400!=0)){ date=0x01;} else if((date==0x30)&&(month==0x02)&&((year_data|read_1302(0x8d))%100==0)& &((year_data|read_1302(0x8d))%400==0)){ date=0x01;} write_595(date);ST_CP4=0;ST_CP4=1;ST_CP4=0;} break;case 5: { month++;if((month&0x0f)>0x09){ month+=0x10;month&=0xf0;} if(month==0x13){ month=0x01;} write_595(month);ST_CP5=0;ST_CP5=1;ST_CP5=0;} break;case 6: { year_data++;if((year_data&0x000f)==0x0a){ year_data+=0x0010;year_data&=0xfff0;} if((year_data&0x00ff)==0xa0){ year_data+=0x0100;//向前進 1 year_data&=0xff00;//后面尾數歸 0 } write_595(year_data);ST_CP6=0;ST_CP6=1;ST_CP6=0;write_595(year_data>>8);ST_CP8=0;ST_CP8=1;ST_CP8=0;} break;case 7: { day++;if((day&0x0f)==0x08){ day=0x01;} write_595(xingqi[day]);ST_CP7=0;ST_CP7=1;ST_CP7=0;} break;} t=50000;while((!K2)&&t){ t--;} } } //-------------------------if(K3==0){ delay(10);if(K3==0){ switch(set){ case 1: { miao--;if((miao&0x0f)==0x0F){ miao&=0xf9;//減到 0 后,再減一次就歸 0, } if(miao==0xF9)//當全部減到 00 時,再 減一次就為 59 { miao=0x59;} write_595(miao);ST_CP1=0;ST_CP1=1;ST_CP1=0;} break;case 2: { fen--;if((fen&0x0f)==0x0F){ fen&=0xf9;} if(fen==0xF9){ fen=0x59;} write_595(fen);ST_CP2=0;ST_CP2=1;ST_CP2=0;} break;case 3: { if((read_1302(0x85)&0x80)==0x00){ shi--;if((shi&0x0f)==0x0F){ shi&=0xf9;} if(shi==0xF9)//24 小時制 { shi=0x23;} } else { shi=(shi|0x80)-1;if((shi&0x0f)==0x0F){ shi&=0xf9;} ST_CP4=0;} break;case 5: { month--;if((month&0x0f)==0x0F){ month&=0xf9;} if(month==0x00){ month=0x12;} write_595(month);ST_CP5=0;ST_CP5=1;ST_CP5=0;} break;case 6: { year_data--;if((year_data&0x000f)==0x0F){ year_data&=0xfff9;} if((year_data&0x00f0)==0xF0){ year_data&=0xf999;} write_595(year_data);ST_CP6=0;ST_CP6=1;ST_CP6=0;write_595(year_data>>8);ST_CP8=0;ST_CP8=1;ST_CP8=0;} break;case 7: { day--;if((day&0x0f)==0x00){ day=0x07;} write_595(xingqi[day]);ST_CP7=0;ST_CP7=1;ST_CP7=0;} break;} t=50000;while((!K3)&&t)//松手檢測 { t--;} } } //---switch(set){ case 8: { if(K4==0){ delay(10);if(K4==0){ if((read_1302(0x85)&0x80)==0x00){ set_shi++;if((set_shi&0x0f)>0x09){ set_shi+=0x10;set_shi&=0xf0;} if(set_shi==0x24)//24 小時制 { set_shi=0x00;} } else { set_shi=(set_shi|0x80)+1;if((set_shi&0x0f)>0x09){ set_shi+=0x10;set_shi&=0xf0;} if(set_shi==0x12)//12 小時制 { set_shi=0X80;} write_595(set_shi);// 顯示鬧 鐘的時 ST_CP3=0;ST_CP3=1;ST_CP3=0;t=50000;while((!K4)&&t){ t--;} } } //----if(K5==0){ delay(10);if(K5==0){ set_fen++;if((set_fen&0x0f)>0x09){ set_fen+=0x10;set_fen&=0xf0;}

if(set_fen==0x60)

{

set_fen=0x00;

} write_595(set_fen);ST_CP2=0;ST_CP2=1;ST_CP2=0;t=50000;while((!K5)&&t){ t--;} } set_shi+=0x10;set_shi&=0xf0;} if(set_shi==0x12)//12 小時制 { set_shi=0X80;} write_595(set_shi);// 顯示鬧 鐘的時 ST_CP3=0;ST_CP3=1;ST_CP3=0;t=50000;while((!K4)&&t){ t--;} } } //----if(K5==0){ delay(10);if(K5==0){ set_fen++;if((set_fen&0x0f)>0x09){ set_fen+=0x10;set_fen&=0xf0;}

if(set_fen==0x60)

{

set_fen=0x00;

} write_595(set_fen);ST_CP2=0;ST_CP2=1;ST_CP2=0;t=50000;while((!K5)&&t){ t--;} } } } } //------------------------if(((K4==0)||(K5==0))&&(set==0)){ delay(10);if(((K4==0)||(K5==0))&&(set==0)){ write_595(set_shi);//顯示鬧鐘的時 ST_CP3=0;ST_CP3=1;ST_CP3=0;write_595(set_fen);ST_CP2=0;ST_CP2=1;ST_CP2=0;P1=0XF9;while((!K4)||(!K5));P1=0X00;} } //----------TR1=1;//退出時開定時器 } } //----------

下載單片機原理及接口技術課程設計指導書word格式文檔
下載單片機原理及接口技術課程設計指導書.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    單片機原理與接口技術教案五篇范文

    《單片機原理與接口技術》教案 班級:05電子(1)(2)日期:2007.3.8 課題:單片機硬件系統 教學目的:使學生理解單片機的結構、硬件原理和工作特性等基礎知識 重點難點:單片機硬件組成和數......

    單片機原理及應用課程設計教學大綱

    《單片機原理及應用》課程設計教學大綱 課程編號:13033070 課程類別:必修課 適用專業:電氣信息類 學時:10 教研室主任:姜志成大綱執筆人:李春華 大綱審批人:付家才 一、課程設計的......

    《單片機原理及應用》課程設計簡介

    《單片機原理及應用》課程設計簡介 1、 課程編碼:130200960 2、 英文名稱:project work for 《the principle and application of single chip computer》 3、 學時/學分: 總學......

    太原理工大學微機原理與接口技術課程設計

    微機原理課程設計 學校: 學院: 設計題目: 專業班級: 姓名: 學號:太原理工大學 信息工程學院 國際象棋棋盤繪制程序一.課程設計的題目:國際象棋棋盤繪制程序 二.程序功能簡述 本程......

    微機原理與接口技術及其課程設計心得體會

    微機原理與接口技術及其課程設計心得體會 本學期的微機原理和接口技術及其課程設計都已經結束。在這個過程中,我們有所付出,也有所回報,讓我感受頗多。 對于《微機原理與接口技......

    微機原理與接口技術課程設計-交通燈控制系統

    版權所有 微機原理課程設計 報 告 書 課 題 名 班 級學 號姓 名 指導教師 日 期 目錄 1 設計目的 .........................................................................

    微機原理與接口技術及其課程設計心得體會

    微機原理與接口技術及其課程設計心得體會 本學期的微機原理和接口技術及其課程設計都已經結束。在這個過程中,我們有所付出,也有所回報,讓我感受頗多。 對于《微機原理與接口技......

    數據庫原理課程設計指導書

    數據庫課程設計 第一節序 言 數據庫是信息系統的核心和基礎,它把信息系統中大量的數據按一定的模型組織起來,提供存儲、維護、檢索數據的功能,使信息系統可以方便、及時、準確......

主站蜘蛛池模板: 狠狠色丁香婷婷综合尤物| 九九热爱视频精品| 国产精品国产三级国av| 国产成人亚洲综合无码品善网| 免费无码又爽又刺激网站| 国产区精品系列在线观看| 东京热一区二区三区无码视频| 亚洲色欲色欱www在线| 黑森林福利视频导航| 韩国三级在线 中文字幕 无码| 欧美a级情欲片在线观看免费| 欧美日韩色另类综合| 亚洲a∨无码一区二区三区| 免费ā片在线观看| 狠狠色噜噜狠狠狠狠888奇禾| 国产自偷亚洲精品页65页| 国产成人无码av在线播放无广告| 特黄特色大片免费播放器图片| 国产人妻aⅴ色偷| 少妇被粗大的猛进出69影院| 国产成人麻豆亚洲综合精品| 男女18禁啪啪无遮挡激烈网站| 97日日碰人人模人人澡| 国产在线无码精品无码| 亚洲精品国精品久久99热| 特黄特色大片免费播放器图片| 久久久精品94久久精品| 国产v亚洲v欧美v精品综合| 国模大尺度啪啪| 丰满人妻av无码一区二区三区| 老司机精品成人无码av| 久久无码人妻热线精品| 精品久久久久久久久久久国产字幕| 无码人妻精品专区在线视频| 美女极度色诱视频国产| 观看国产色欲色欲色欲www| 极品少妇被猛得白浆直流草莓视频| 国产精品午夜福利麻豆| 亚洲va久久久噜噜噜久久无码| 中文成人无码精品久久久不卡| 国产片av国语在线观看手机版|