單片機實訓報告范文
實訓能夠讓我們快速的增加知識和經(jīng)驗,這和我們在學校里面學習的理論知識有很大的區(qū)別,那么在經(jīng)歷實訓后,有寫出一份怎樣的報告呢?下面是小編精選整理的單片機實訓報告范文,供您參考,歡迎大家閱讀。
單片機實訓報告范文(一)
前言
一周的單片機實訓很快就結(jié)束咯,在這一周的時間里,我學到了很多關(guān)于單片機各方面的知識。老師在實訓課中也教會咯我們很多關(guān)于單片機軟件編程與硬件設(shè)施的知識。
一周的實訓中我們一共實訓咯好幾個項目,通過這幾個項目的實訓,我們掌握咯一些單片機的匯編語言和硬件調(diào)試,達到了很好的效果。
一周時間實訓過后,我把之前在課堂上不懂的知識點,通過實際操作的練習,我都搞明白咯。當然在實訓過程中也遇到咯很多問題,就是有時在調(diào)試方面不能調(diào)試成功,有時程序是沒有錯誤,但是就是調(diào)試不好,一直找原因也找不出是什么原因。
希望以后能夠擁有更多的實訓時間和機會學習單片機。
實訓任務(wù)一
一、實驗?zāi)康?/p>
熟悉Keil C51集成開發(fā)環(huán)境的使用方法
二、實驗設(shè)備及器件
IBM PC機
三、實驗內(nèi)容
按照本書的第2章的2.1節(jié)到2.4節(jié)內(nèi)容進行Keil C51集成開發(fā)環(huán)境的安裝和使用練習。然后按照以下內(nèi)容建立文件并編譯產(chǎn)生HEX文件。
ORG 8000H
LJMP Main
ORG 80F0H
Main:
MOV R7,#0
LOOP:
MOV R6,#0
DJNZ R6,$
DJNZ R6,$
DJNZ R6,$
DJNZ R6,$
DJNZ R7,LOOP ;延時 一臺
CPL P1.0
CPL P1.1
CPL P1.2
CPL P1.3
CPL P1.4
CPL P1.5
CPL P1.6
CPL P1.7
SJMP Main
END ;P1.0取反 ;P1.1取反 ;P1.2取反 ;P1.3取反 ;P1.4取反 ;P1.5取反 ;P1.6取反 ;P1.7取反
通過該程序?qū)崿F(xiàn)八盞燈的同時亮和同時滅的功能,更好的掌握匯編指令。
4、實驗要求:熟練掌握結(jié)合DP-51PROC單片機綜合仿真實驗儀和Keil C51集成開發(fā)環(huán)境進行仿真調(diào)試。如果還有時間,可以把本書的第2章的2.6節(jié)、2.7節(jié)內(nèi)容也看一下
5、實驗步驟:
(1)用40針排線把DP-51PROC實驗儀上的A1區(qū)J76接口和A2區(qū)J79接口相連,然后使用排線把A2區(qū)的J61接口與D1區(qū)的J52接口相連。
2、對DP-51PROC實驗儀上電,然后按照本書的第2章的2.5.1小節(jié)設(shè)置TKSMonitor51仿真器和使用軟件DPFlash把MON51監(jiān)控程序下載到TKSMonitor51仿真器。
3、關(guān)閉DPFlash軟件。把TKSMonitor51仿真器的工作模式選擇開關(guān)切換到RUN處,然后按一下復(fù)位鍵(RST),MON51程序就開始運行了。此時,TKSMonitor51仿真器進入調(diào)試狀態(tài)。
4、用戶使用Keil C51集成開發(fā)環(huán)境建立工程、編輯與編譯“實驗內(nèi)容”所列的程序。然后按照本書的第2章2.5.3節(jié)的第2點(軟件調(diào)試環(huán)境的設(shè)置)設(shè)置好,然后再編譯一次。
5、此時用戶就可以按照本書的第2章2.5.4節(jié)所講述的方法進行仿真調(diào)試。如果用戶在退出仿真調(diào)試模式后想再次進入仿真調(diào)試,可以先按一下TKSMonitor51仿真器的復(fù)位鍵(RST)。用戶可以在仿真調(diào)試環(huán)境下設(shè)置斷點、單步、全速運行等。在調(diào)試過程中用戶可以看見D1區(qū)的LED的亮滅是由用戶程序來控制的。
實驗任務(wù)二:
一、實驗?zāi)康模豪脝纹瑱C的P1口作IO口,使用戶學會利用 P1口作為輸入和輸出口。
二、實驗設(shè)備及器件:
IBM PC機 一臺
一臺 DP-51PROC單片機綜合仿真實驗儀
三、實驗內(nèi)容
1.編寫一段程序,用P1口作為控制端口,使D1區(qū)的LED輪流亮。
四、實驗要求
學會使用單片機的P1口作IO口,如果有時間用戶也可以利用P3口作IO口來做該實驗
五、實驗步驟
1、用導線把A2區(qū)的J61接口與D1區(qū)的J52接口相連。原理如圖所示。
2、先編寫一個延時程序。
3、將LED輪流亮的程序編寫完整并調(diào)試運行
六、實驗程序:
ORG 8000H
LJMP Main
ORG 8100H
Main:
MOV A,#0FFH
CLR C
MainLoop:
CALL Delay
RLC A
MOV P1,A ;把A的值輸出到P1口
SJMP MainLoop
Delay: ;延時
MOV R7,#0
LOOP:
第7 / 9頁
MOV R6,#0
DJNZ R6,$
DJNZ R6,$
DJNZ R6,$
DJNZ R7,LOOP
RET
END
七、實驗結(jié)果:通過調(diào)試成功之后,八盞燈依次向左點亮,實現(xiàn)流水燈程序的功能。
實訓總結(jié)
通過這次實訓,使我們能夠?qū)W以致用,在實踐中進一步掌握并鞏固我們的單片機理論知識。雖然在實訓中遇到了不少難題與困惑,暴露出了不少問題和缺乏實踐的弱點,但是在老師與同學們的幫助與指導下,我們最終解決與克服了一個個的困難與困惑,順利的完成了老師交給的實訓任務(wù)。
通過幾天下來的實訓,感覺就是自己的知識實在是太淺了。在課本上學到的知識感覺自己都懂了,但在實際應(yīng)用中還是無從下手。所以我們不應(yīng)滿足于課本上的知識,只有通過不斷的實踐,才能夠真正掌握理論知識。雖然只有幾天的時光,但還是學了很多的東西,比之于平常的上課更覺得學到更多。所以,這對于我們還是一門很必要的課程。當然,要真正學有所用,我們還要在實踐中去不斷提高,不斷完善。 其實剛開始還是不太喜歡實訓,也有點害怕的。但過后才覺得只有幾天的實訓時間還是有點少,畢竟是剛開始對單片機進行實際應(yīng)用,還是很陌生的。由于時間的倉促,自己的作品也遠還沒達到完善的地步。
單片機實訓報告范文(二)
一、概述:
設(shè)計制作產(chǎn)品的背景、目的、意義
1.設(shè)計背景
在大二的上半個學期我們開了一門叫《單片機技術(shù)與應(yīng)用》的課程,在期末考試之前有一個兩個星期的實訓,就是用平時所學的知識在自己的板子上實現(xiàn)一個功能,比如說:實現(xiàn)一個交通燈、萬年歷、密碼鎖或計算器等等,或者自己根據(jù)實際情況自己設(shè)計題目實現(xiàn)一個功能。設(shè)計當中最多三個人一個小組,最少自備一臺電腦。不僅如此,我們還能把以前所學的數(shù)字電路、模擬電路、電路基礎(chǔ)、PCB等知識在這次實訓過程中得到用用。在做中學,在學中作。
2、設(shè)計目的
1. 通過本次課程設(shè)計進一步熟悉和掌握單片機的結(jié)構(gòu)及工作原理,鞏固和加深“單片機原理與應(yīng)用”課程的基本知識,掌握電子設(shè)計知識在實際中的簡單應(yīng)用。
2. 綜合運用“單片機原理與應(yīng)用”課程和先修課程的理論及生產(chǎn)實際知識去分析和解決電子設(shè)計問題,進行電子設(shè)計的訓練。
3. 學習電子設(shè)計的一般方法,掌握AT89C52芯片以及簡單電子設(shè)計過程和運行方式,培養(yǎng)正確的設(shè)計思想和分析問題、解決問題的能力,特別是總體設(shè)計能力。
4. 通過計算和繪制原理圖、布線圖和流程圖,學會運用標準、規(guī)范、手冊、圖冊和查閱有關(guān)技術(shù)資料等,培養(yǎng)電子設(shè)計的基本技能。
5. 通過完成一個包括電路設(shè)計和程序開發(fā)的完整過程,了解開發(fā)單片機應(yīng)用系統(tǒng)全過程,為今后從事的工作打基礎(chǔ)。
3、設(shè)計意義:交通燈的控制系統(tǒng)對于維持城市交通穩(wěn)定有序的運轉(zhuǎn)有著至關(guān)重要的作用??紤]到單片機具有物美價廉、功能強、使用方便靈活、可靠性高等特點,本人擬采用AT89C52單片機來實現(xiàn)十字路口交通信號燈的模擬控制,通過模擬系統(tǒng)的設(shè)計來了解交通燈系統(tǒng)的工作原理和一些基本功能是如何通過單片機來實現(xiàn)的。
此次設(shè)計基于本人在校期間所學的有關(guān)單片機等相關(guān)知識,通過設(shè)計基于AT89C52單片機的交通燈控制系統(tǒng),將所學知識運用到實踐中并得以深化,進一步加強單片機知識的理解,掌握單片機的基本原理和各種基本功能的應(yīng)用,并且通過交通燈控制系統(tǒng)的設(shè)計可以進一步認識單片機在控制系統(tǒng)中的重要性。
設(shè)計制作產(chǎn)品的設(shè)計要求
1、在萬能板上組裝焊接一個十字交通模擬路口
2、利用學習板上的單片機最小系統(tǒng)、數(shù)碼管、按鍵等資源與組裝焊接的模擬路口組成簡易交通燈控制器硬件系統(tǒng)。
3、編寫軟件實現(xiàn)下表及下圖所示交通路口的相位規(guī)則,循環(huán)顯示交通信號指揮交通。
4、 數(shù)碼管倒計時顯示當前相位剩余時間。
5、 時間控制基于定時器實現(xiàn)。
擴展功能要求:
1、 在各路口綠燈變黃燈之前加上3秒鐘綠閃,即實現(xiàn)6相位。
2、 增加各方向綠時時間設(shè)定功能。
?、拧⒃黾釉O(shè)定鍵、增加鍵、減少鍵、確認鍵
⑵、按下設(shè)定鍵進入更改綠時狀態(tài),數(shù)碼管最左面的一位顯示0,右邊兩位顯示當前東西方向綠時時間,再次按下設(shè)定鍵數(shù)碼管最左面的一位顯示1,右邊兩位顯示當前南北方向綠時時間,依次循環(huán)。
?、?、在設(shè)定狀態(tài)下,按下增加按鍵和減少按鍵可以增加或減少當前方向綠時時間,綠時時間范圍10-99秒。
?、?、調(diào)整好綠時時間后,按下確認按鍵存儲并更新新的綠時設(shè)定。
設(shè)計文檔要求:
1、繪制系統(tǒng)原理圖及PCB圖。
2、編寫元器件清單
3、上交完整的源程序并對程序進行注釋
4、完成電子產(chǎn)品設(shè)計及制作總結(jié)報告
分工情況、工作計劃及本人所總結(jié)工作
1、了解交通燈控制系統(tǒng)的各項功能要求
1. 根據(jù)功能要求設(shè)計不同設(shè)計方案并擇優(yōu)選擇
2. 選擇材料并根據(jù)所選設(shè)計方案進行硬件電路的設(shè)計,包括主控制系統(tǒng)、通行燈輸出控制、時間顯示模塊、電源電路等
3. 根據(jù)功能要求進行主要程序的設(shè)計,包括初始化程序、主程序、外中斷1中斷服務(wù)程序、定時中斷服務(wù)程序等
4. 使用PROTEUS軟件仿真,檢查是否實現(xiàn)所需功能并在系統(tǒng)上進行調(diào)試以達到預(yù)期效果
本課題的基本內(nèi)容、重點及難
1、基本內(nèi)容:交通燈控制系統(tǒng)的功能要求;制定不同的設(shè)計方案并擇優(yōu)選擇;系統(tǒng)硬件電路的設(shè)計(包括主控制系統(tǒng)、通行燈輸出控制、時間顯示模塊、電源電路等);系統(tǒng)主要程序的設(shè)計(包括初始化程序、主程序、外中斷1中斷服務(wù)程序、定時中斷服務(wù)程序等);軟件仿真(使用PROTEUS軟件仿真)及系統(tǒng)運行調(diào)試(檢查能否實現(xiàn)功能并改進)。
2、重點:根據(jù)交通燈控制系統(tǒng)的功能要求制定出不同的設(shè)計方案并擇優(yōu)選擇;根據(jù)設(shè)計方案進行硬件電路部分的設(shè)計(包括主控制系統(tǒng)、通行燈輸出控制、時間顯示模塊、電源電路等)。
3、難點:根據(jù)交通燈控制系統(tǒng)的功能要求進行主要程序的設(shè)計(包括初始化程序、主程序、外中斷1中斷服務(wù)程序、定時中斷服務(wù)程序等);使用PROTEUS軟件仿真并在系統(tǒng)上進行調(diào)試。
二、正文:
實驗原理
1.基本原理
主體電路:交通燈自動控制模塊。這部分電路主要由80C51單片機的I/O端口、定時計數(shù)器、外部中斷擴展等組成。
本設(shè)計先是從普通三色燈的指示開始進行設(shè)計,用P0口作為輸出。程序的初始化是南北綠燈亮30秒,同時東西紅燈亮30秒;之后南北黃燈亮3秒,東西紅燈亮3秒;之后南北紅燈亮15秒,東西綠亮15秒;之后南北紅燈亮3秒,東西黃燈量3秒,之后重復(fù)執(zhí)行。倒計時用到定時器T0,用P2口作為LED的顯示。二位一體的LED重復(fù)執(zhí)行30秒、3秒、15秒的倒計時。作為突發(fā)事件的處理,本設(shè)計主要用到外部中斷EX0。用一模擬開關(guān)作為中斷信號。實際中可以接其它可以產(chǎn)生中斷信號的信號源。
2.芯片AT89C52
AT89C52是一個低電壓,高性能CMOS 8位單片機,片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強大的AT89C52單片機可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場合。
AT89C52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89C52可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。
主要功能特性:
• 兼容MCS51指令系統(tǒng)
• 8k可反復(fù)擦寫(>1000次)Flash ROM
• 32個雙向I/O口
• 256x8bit內(nèi)部RAM
• 3個16位可編程定時/計數(shù)器中斷
• 時鐘頻率0-24MHz
• 2個串行中斷
• 可編程UART串行通道
• 2個外部中斷源
• 共6個中斷源
• 2個讀寫中斷口線
• 3級加密位
• 低功耗空閑和掉電模式
• 軟件設(shè)置睡眠和喚醒功能
實驗流程圖
(一)實現(xiàn)方法
(1)在設(shè)計中利用軟件程序延時的方法來控制紅(綠)的亮的時間??紤]延時時間較長所以先用T0產(chǎn)生終端然后通過計數(shù)的方法來實現(xiàn)延時。利用P1口的P1.1、P1.2、P1.3作為紅綠燈控制端口。
(2)南北向的綠燈連在一塊,東西向的紅燈連在一塊,他們一塊與P1.1相連。同樣南北向的紅燈連在一塊,東西向的綠燈連在一塊,他們一塊與P1. 2相連,四個黃燈連在一塊與P1.3相連。
(二)流程圖
硬件設(shè)計
1.單片機的結(jié)構(gòu)
單片微機(Single-Chip Microcomputer)簡稱為單片機。它在一塊芯片上集中成了中央處理單元CPU、隨機存儲器RAM、只讀存儲器ROM、定時/計數(shù)和多功能輸入/輸出I/O口,如并行口I/O、串行口I/O和轉(zhuǎn)換A/D等。就其組成而言,一塊單片機就是一臺計算機。由于它具有體積小、功能強和價格便宜等優(yōu)點,因而被廣泛地應(yīng)用于產(chǎn)品智能化和工業(yè)控制自動化上。
2.主要元器件選擇
(1). 開關(guān)管的選擇:BUTTON按鈕
(2). LED發(fā)光二極管 LED-RED, LED-YELLOW ,LDE-GREEN
(3). 二位一體數(shù)碼管 7SEG-MPX2-CAT-RED:數(shù)碼管(紅色)
(4). PN4249:驅(qū)動三極管
(5). AT89S51系列單片機
3.設(shè)計顯示部分
LED數(shù)碼顯示部分。LED數(shù)碼顯示部分由七段數(shù)碼顯示管組成。
發(fā)光二極管顯示原理:
發(fā)光二極管是采用砷化鎵、鎵鋁砷和磷化鎵等材料制成,其內(nèi)部結(jié)構(gòu)為一個PN結(jié),具有單向?qū)щ娦?。發(fā)光二極管在制作時,使用的材料不同,那么就可以發(fā)出不同顏色的光。
當定時器定時為1秒,時程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈時間 ,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一個時間,這樣依次把所有的燈色的時間顯示完后在重新給時間計數(shù)器賦初值 ,重新進入循環(huán)。
軟件設(shè)計
1.單片機中斷系統(tǒng)基本結(jié)構(gòu)
中斷是一項重要的計算機技術(shù),是處理正常工作與緊急狀態(tài)的好辦法,是實現(xiàn)人機實時交互的重要途徑,在單片機應(yīng)用系統(tǒng)中,中斷技術(shù)得到了廣泛應(yīng)用。下面詳細介紹單片機中斷系統(tǒng)基本結(jié)構(gòu)、與中斷相關(guān)的特殊寄存器的設(shè)置及中斷應(yīng)用系統(tǒng)編程方法。
當CPU查詢到系統(tǒng)有中斷請求時,如果系統(tǒng)處于中斷允許狀態(tài),CPU將停止當前的工作,響應(yīng)中斷請求,轉(zhuǎn)向中斷服務(wù),中斷服務(wù)完成后,返回原程序繼續(xù)執(zhí)行當前任務(wù),這叫單片機中斷。
8051系列單片機中斷系統(tǒng)結(jié)構(gòu)如圖3.7所示。能讓CPU產(chǎn)生中斷的信號源叫中斷源。8051單片機有NT0、INT1、T0、T1、TI、RI六個中斷源,但只有EX0、ET0、EX1、ET1、ES五個向量,
INT0、INT1:外部中斷源,由P3.2和P3.2引腳輸入。具有低電平和脈沖兩種觸發(fā)方式,在每個機器周期的S5P2采樣引腳信號,如有效則由硬件將它的中斷請求標志IE置1,請求中斷。當CPU響應(yīng)中斷時,由硬件復(fù)位。
T0、T1:定時/計數(shù)器中斷,當定時/計數(shù)器產(chǎn)生溢出時,置位中斷請求標志TF請求中斷處理。
RI、TI:串行中斷,RI是接收,TI為發(fā)送。單片機串行口接收到一個字符后RI置1,發(fā)送完一個字符TI置1。值得注意的是,RI、TI在響應(yīng)中斷后,必須由用指令將其復(fù)位。
中斷響應(yīng):
CPU在執(zhí)行程序的過程中,在每個機器周期的S5P2對中斷標志位按中斷優(yōu)先級進行查詢,一旦查詢到有中斷請求,CPU只要不在執(zhí)行同級或高級的中斷服務(wù)程序和當前指令(RETI指令或訪問IE、IP的指令除外)執(zhí)行完畢兩種情況,則響應(yīng)中斷。如果當前正在執(zhí)行的指令是RETI或訪問IE、IP的指令,則當前指令執(zhí)行完畢后,CPU才可響應(yīng)中斷。中斷響應(yīng)時間可
以從中斷信號被查詢開始算起,中斷響應(yīng)時間在以下三種情況下,響應(yīng)時間還會更長:
?、?CPU正在執(zhí)行一個比要響應(yīng)的中斷源優(yōu)先級相等或更高的中斷源的中斷服務(wù)程序,此時須等到中斷服務(wù)程序執(zhí)行完畢才可中斷響應(yīng)。
?、?正在執(zhí)行的當前指令不是在最后一個機器周期,只有指令執(zhí)行完后才響應(yīng)中斷。
?、?如果當前執(zhí)行的是RETI或訪問IE、IP的指令,則當前指令執(zhí)行完畢后,CPU需再執(zhí)行一條指令才可以中斷響應(yīng),因此附加等待響應(yīng)時間不會超過5個機器周期。
中斷入口:
單片機響應(yīng)中斷后,將轉(zhuǎn)向特定的入口進行中斷服務(wù),從表中可以看出,兩相鄰中斷源的入口地址間隔為8個單元。這意味著如果要把中斷源對應(yīng)的中斷服務(wù)程序從入口地址開始存放,則程序的長度不能超過8個字節(jié),否則會影響到下一個中斷源的入口地址的使用。而通常的情況下,中斷服務(wù)程序的長度不止8個字節(jié),因此,常見的處理方法是:在入口地址處存放一條無條件轉(zhuǎn)移指令,通過這條轉(zhuǎn)移指令轉(zhuǎn)向?qū)?yīng)的中斷服務(wù)程序入口,中斷服務(wù)程序以RETI為結(jié)束。
中斷請求的撤銷:
CPU響應(yīng)中斷請求,在中斷返回(RETI)之前,該中斷請求應(yīng)被撤除,否則會引發(fā)另一次中斷。
定時/計數(shù)器中斷請求撤銷:CPU在響應(yīng)中斷后,由硬件自動清除中斷請求標志TF。 外部中斷請求撤銷:如果采用脈沖觸發(fā)方式,CPU在響應(yīng)中斷后,由硬件自動清除中斷請求標志IE;對于電平觸發(fā)方式的外部中斷請求,中斷標志的撤銷是自動的,由于造成中斷請求的低電平繼續(xù)存在,所以在響應(yīng)中斷后再次會產(chǎn)生中斷請求,為此響應(yīng)中斷后要撤銷外部信號。
2.每秒鐘的設(shè)定
延時方法可以有兩種一中是利用MCS-51內(nèi)部定時器才生溢出中斷來確定1秒的時間,另一種是采用軟延時的方法。
3.計數(shù)器初值計算
定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到TH和TL中的。我們可以把計數(shù)器記滿為零所需的計數(shù)值設(shè)定為C和計數(shù)初值設(shè)定為TC 可得到如下計算通式: TC=M-C
C語言程序
#include"reg52.h" //宏包含MCS-52系列單片機的頭文件
#define uchar unsigned char
#define uint unsigned int
uchar code duanmatable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//數(shù)碼管段碼數(shù)組
uchar code weima[]={0x7f,0xbf,0xdf,0xef};//位碼數(shù)組
uchar code xiangwei[]={0xdb,30,0x7b,3,0xbd,15,0xb7,3}; //實現(xiàn)相位的切換,數(shù)碼管的倒計時與
交通燈的相位切換巧妙結(jié)合。
void delay (uint z); //延時程序聲明
uchar n50ms,greentime;
uchar xianshi[2]={10,10}; //顯示數(shù)組
void intital();
main()
{ intital();
while(1)
{
uchar i,j;
for(;greentime==0&&j<8;j+=2) //for語句判斷,通過j的變化送不同的值。
{
greentime=xiangwei[j+1]; //送顯相位對應(yīng)的時間
P0=xiangwei[j]; //相位段碼
}
if(j==8)
{
j=0;
}
xianshi[0]=greentime%10;//更新顯示數(shù)組
xianshi[1]=greentime/10; //更新顯示數(shù)組
if(n50ms>=20) //定時器精確延時
{ n50ms=0;
greentime-=1;
}
for(i=0;i<2;i++)//送顯示
{
P3=weima[i];
P2=duanmatable[xianshi[i]];
delay(5);
}
}
}
/*********延時子程序**********/
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=122;y>0;y--);
}
/********延時子程序結(jié)束*******/
void timer0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
n50ms++;
}
void intital()
{
TMOD|=0X01; //定時器1,方式0
TMOD&=0XF1;
TH0=(65536-50000)/256; //賦初值
TL0=(65536-50000)%256;
ET0=1; //開定時器中斷
EA=1; //開總中斷
TR0=1; //開總中斷
}
2、連線說明 三、結(jié)論: 硬件平臺:I51學習板。 1、硬件平臺及用到的資源 用到的資源:數(shù)碼管顯示、發(fā)光二極管等。 3.1設(shè)計制作過程中遇到的問題及如何解決的 交通燈電路圖簡易交通燈硬件接線說明 單片機P0.1-P0.3、P0.5-P0.7依次控制東西方向的綠紅黃,南北方向的綠紅黃。 在接線時總接反,有時候還接錯。在編程時,有時忘記生成機器碼,忘記保存。最大的問題就是編程了,我在網(wǎng)上也找了許多相關(guān)程序但是許多都看不懂,不過老師也給了一些程序數(shù)碼管顯示電路:段碼控制接口P8用8P杜邦線連接單片機P2口;位碼控制接口P9用4P杜邦線用4P杜邦線接單片機P3.4-P3.7。
不過還是都看不懂。前面一些問題在同學和老師的幫助下我都一一解決,但是在編程這一塊還存在很大問題。
3.2通過設(shè)計制作過程有哪些提高還有哪些不足及今后學習提高計劃
在這次的實訓過程中我懂得了無論大事還是小事都應(yīng)該注意細節(jié),在硬件連接、keil開發(fā)平臺已經(jīng)熟練掌握。但是在c語言編程、pcb制圖、畫電路圖在今后的學習中應(yīng)該進一步提高。 四、心得體會:
在實驗過程中,單片機作為核心控制元件,使得電路的可靠性比較高,功能也比較強大、多變。而且可以隨時的更新系統(tǒng),下載新的文件進行不同狀態(tài)的切換,進行不同狀態(tài)的組合。一開始感覺很好奇,于是產(chǎn)生濃厚興趣,夢想成為電子產(chǎn)品中的魔術(shù)師!
在一開始硬件連線的過程中從在問題:杜邦線不知道該往哪插,接線時順序總結(jié)反。在編程時有時忘記保存,有時忘記生成機器碼,編譯之后的錯誤很多。但是在設(shè)計和調(diào)試過程中,也發(fā)現(xiàn)一些問題,譬如紅綠燈的切換速度不夠,綠燈時而亮時而不亮,紅綠燈規(guī)則效率偏低等,亮度不夠是因為在焊接硬件時把排阻接錯了,應(yīng)該是排阻的阻值用的較大了。在焊接外接電路時沒按照老師的步驟走,最后導致接錯、焊錯。交通燈的外接電路雖然只有幾個電阻、三極管、發(fā)光二極管和幾個接線口以及一個接線板,但是到了自己的手里卻無從下手沒有頭緒,最后在同學的幫助下最后完成了焊接。
還有,老師說我的外接電路排版不是很好,例如電阻,因為我是用手折彎的,而不是用鑷子,所以這是我以后需要注意的地方。還有一個晶振焊接的不是很整齊,應(yīng)該從新焊一下,但因為我怕麻煩,也怕重焊后會影響美觀,所以就沒再去重試了。另外,由于畫PCB時,我漏畫了一條線,以至于轉(zhuǎn)化為板時那邊出了問題,后來我就得自己對照著PCB再用導線把遺漏的導線連接上,花了不少時間,增加了許多工作量,所以說這些都還需要我們在實踐中繼續(xù)加強改進,得到進一步的完善。
這次課程設(shè)計,我發(fā)現(xiàn)單片機原理應(yīng)用性很強,只在老師的課堂講解是遠遠不夠的,老師經(jīng)常說:“只有清華的學生用上課時間才能聽懂,而且課余時間不用練習,就上課的時間就夠了?!碑斎晃覀儾粚儆谒麄兤渲械囊徊糠?,要想做到的話只有自己多下功夫勤于動手去做才有可能做到,才能不斷的發(fā)現(xiàn)自己的不足之處,從而有針對性的去學習,去查資料。許多的余力和程序看似簡單,但真正去做才知道知識并沒有自己想的那樣扎實,就拿編程來說吧,有些程序看似好像懂了,但自己在keil軟件一編程就一塌糊涂、手忙腳亂、不知所措了,可想結(jié)果如何。
在此,從而懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學理論與實際結(jié)合起來,才能真正提高自己的動手能力與思考能力,樹立自己的工作信心。相信會對今后的學習工作和生活有非常重要的影響
在設(shè)計過程中我們還得到了老師的幫助與意見。在學習、實訓過程中不是每個問題都能自己解決,向老師請教或向同學討論也是一個解決問題,讓自己更快進步和增強學習能力很好的辦法。
在此,我還想多說幾句,就說說咱們的實訓老師吧。在他的幫助下我學到了許多東西,最后完成了實訓。此外,在實訓期間還講一些激勵我們的話讓我們從迷茫中走出來,給我們導航指引方向,從而使我們得到進步,勇往直前。在課余之時老師還講一些有關(guān)技能大賽的事情,有全國性的電子產(chǎn)品設(shè)計技能大賽、天津市的許多賽事等等,從而使我們從中了解許多有關(guān)大賽的信息。不僅如此,老師還經(jīng)常教育一些上課不認真聽講、不做實訓的同學,這些都讓我深受感動、值得深思。
在最后,祝愿每個小組在這兩個星期的緊張學習中得到理想的成績,從中學到知識,為以后的工作學習中得到用處!
單片機實訓報告范文(三)
1.課程設(shè)計目的
1)鞏固單片機基礎(chǔ)知識,串聯(lián)知識點。
2)學會繪制PCB板,學會手工制板的一般方法。
3)使用Protel等EDA工具進行單片機硬件系統(tǒng)設(shè)計的能力。
4)基于Keil IDE開發(fā)單片機應(yīng)用程序的能力。
5)寫技術(shù)報告和編制技術(shù)資料的能力。
6)獨立工作能力和創(chuàng)造力。
7)綜合運用專業(yè)及基礎(chǔ)知識,解決實際工程技術(shù)問題的能力。
2.課程設(shè)計題目描述和要求
旋轉(zhuǎn)電子時鐘的設(shè)計與制作
實現(xiàn)的功能要求:(1)實現(xiàn)單片機最小系統(tǒng) ;(2)四只LED數(shù)碼管顯示當前時分;(3) 每隔一秒鐘周邊的60只LED發(fā)光管旋轉(zhuǎn)一格,裝飾用的LED每隔一秒旋轉(zhuǎn)一次;(4) 實現(xiàn)整點報時;(5) 實現(xiàn)按鍵調(diào)整;(6) 停(掉)電保護,年計時誤差小于30秒;(7) 其他功能。
3.課程設(shè)計報告內(nèi)容
3.1方案論證
3.1.1單片機定時器做電子時鐘
優(yōu)點:考慮到單片機貨源充足、價格低廉,可軟硬件結(jié)合使用,能夠方便的實現(xiàn)系統(tǒng)的多功能性,故采用單片機作為本設(shè)計的硬件基礎(chǔ)。故其優(yōu)點是外圍電路簡單,只需要一個單片機最小系統(tǒng),和一個顯示模塊。
缺點:定時不是很準確,計時誤差較大,并且程序的編寫較繁瑣。
3.1.2數(shù)字電路做電子時鐘
優(yōu)點:具有走時準確、顯示直觀、無機械傳動裝置。與傳統(tǒng)的機械鐘先比,電子鐘具有更優(yōu)異的優(yōu)點。由于電子鐘采用數(shù)字集成電路的發(fā)展和采用了先進的石英技術(shù),使電子鐘具有走時準確、性能穩(wěn)定、攜帶方便等優(yōu)點,電子鐘用于定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播及自動控制等各個領(lǐng)域。 缺點:因為電子鐘畢竟是電子產(chǎn)品,電子產(chǎn)品都有輻射,不過電子鐘危害極低,對人體夠不成任何危害,不象手機的輻射那么大。
應(yīng)用:目前,在國內(nèi),電子鐘因數(shù)碼管數(shù)字顯示效用直接有效,所以大多運用在城市的主要營業(yè)場所,以及車站、碼頭等公共場所。在對公共場所的電子鐘設(shè)定的時候,使用者還可根據(jù)周邊的氣候、溫度等對LCD屏進行設(shè)置。同時,因為數(shù)碼管的顯示耗電量很省,所以能夠保持持續(xù)的工作效果。夜間在睡覺的時候,床頭如果放個帶投影功能的電子鐘,可以不用起床,直接讓時間顯示在天花板上,非常直觀與有效?,F(xiàn)在生產(chǎn)的大部分汽車中,車內(nèi)前方儀表盤旁邊一般也都自帶電子鐘功能,采取藍色背景光板成像效果,非常清晰。
3.2 旋轉(zhuǎn)電子時鐘硬件電路,并簡要講述各部分的原理3.2.1 降壓部分
3.2.1 電源部分
5V電源可使用通用的78XX系列來構(gòu)成,也可以使用LDO來構(gòu)成,一般而言,目前LDO為主流,常用的LDO主要為REG1117-XX系列,該部分的電路可參考圖1,使用一個REG1117-5構(gòu)成5V電源。為了更好地了解系統(tǒng)電源的情況,一般會在電源的輸出端加入一個LED進行電源的指示。
3.2.2 顯示部分
60燈旋轉(zhuǎn)的原理和數(shù)碼管顯示原理一模一樣。只不過把數(shù)碼管的段分別用單個二極管代替,形成了8個類似數(shù)碼管的控制結(jié)構(gòu)。
3.2.3 指示部分
為了能輸出用戶的相關(guān)信息,目前使用的有LCD和LED方法,本實訓中學生可以從兩種方法中任選一個.
3.2.4 按鍵部分
本實訓使用的是較為簡單的阻容復(fù)位電路。對于單片機這類微控制器而言,其本質(zhì)就是運行用戶設(shè)定的程序,所以必須在基本硬件的基礎(chǔ)上加入一個下載線接口,用來下載用戶編寫的程序,由于STC單片機支持串行口下載,在做硬件的時候大家只需將單片機的P3.0和P3.1接排針形成預(yù)留接口,我們用下載線直接下載。用戶輸入信息使用的是獨立按鍵,本項目中因為要輸入調(diào)整和加減信息,所以僅使用了獨立按鍵.
4.電路原理圖
5.實訓心得
xx:我們經(jīng)過了一周的學習和制作后,終于完成了電子時鐘的基本功能。使我們更加地認識到了動手能力和理論知識相結(jié)合的重要性。在這次的制作中,我們也深刻地認識到我們的不足和自身理論知識的欠缺,所以從中遇到了很多困難,但是最后還是在老師以及組員的幫助下圓滿解決了困難,實現(xiàn)了整個系統(tǒng)的制作與最后的調(diào)試,相關(guān)指標達到預(yù)期的效果,并且很好地完成了本課程要求的任務(wù)。
xx:這些日子我們收獲了許多東西,從零散的元器件到電子時鐘能夠?qū)崿F(xiàn)基本功能的整個過程,在設(shè)計過程中雖然遇到了一些的問題,但經(jīng)過一次又一次的討論,一遍又一遍的檢查我們終于找出了問題所在,也暴露了前期在這方面的知識欠缺和經(jīng)驗不足。通過此次項目的學習提高了我們自主學習的能力、動手操作的能力和團結(jié)合作的能力。
通過這個課程,使我更加扎實的掌握了有關(guān)電子線路、單片機方面的知識。使我對自己的專業(yè)知識有了更為詳盡而深刻的了解,認識到了許多我以前雖然看過但并沒有認真的去了解的元器件的使用方法,從而更深的了解到了自己的不足,雖然我的基礎(chǔ)知識不夠扎實,但是我在此期間積累了許多寶貴的經(jīng)驗,這都是我以后走上工作崗位的巨大的財富。在次我要感謝我們的指導老師徐老師和香老師的耐心以及辛苦的指導。還有謝謝組員的包容和辛勤的勞動。
單片機實訓報告范文(四)
通過今次單片機實訓,使我對單片機的認識有了更深刻的理解。系統(tǒng)以51單片機為核心部件,利用匯編軟件編程,通過鍵盤控制和數(shù)碼管顯示實現(xiàn)了基本時鐘顯示功能、時間調(diào)節(jié)功能,能實現(xiàn)本設(shè)計題目的基本要求和發(fā)揮部分。
由于時間有限和本身知識水平的限制,本系統(tǒng)還存在一些不夠完善的地方,要作為實際應(yīng)用還有一些具體細節(jié)問題需要解決。例如:不能實現(xiàn)只用兩個按鍵來控制時鐘時間,還不能實現(xiàn)鬧鐘等擴展功能。
踉踉蹌蹌地忙碌了兩周,我的時鐘程序終于編譯成功。當看著自己的程序,自己成天相伴的系統(tǒng)能夠健康的運行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最終都會化為甜美的甘泉。
但在這次實訓中同時使我對匯編語言有了更深的認識。當我第一次接觸匯編語言就感覺很難,特別是今次實訓要用到匯編語言,盡管困難重重,可我們還是克服了。這次的實訓使培養(yǎng)了我們嚴肅認真的做事作風,增強了我們之間的團隊合作能力,使我們認識到了團隊合作精神的重要性。
這次實訓的經(jīng)歷也會使我終身受益,我感受到這次實訓是要真真正正用心去做的一件事情,是真正的自己學習的過程和研究的過程,沒有學習就不可能有研究的能力,沒有自己的研究,就不會有所突破。希望這次的經(jīng)歷能讓我在以后學習中激勵我繼續(xù)進步。
單片機實訓報告范文(五)
通過這一個學期的單片機學習,我收獲了很多關(guān)于單片機的知識,并且這些知識和日常的生活息息相關(guān)。了解了一些簡單程序的錄入,LED顯示器、鍵盤、和顯示器的應(yīng)用和原理。
LED顯示器:LED顯示器是由發(fā)光二管組成顯示字段的器件。通常的8段LED顯示器是由8個發(fā)光二極管組成,LED顯示器分共陽極和共陰極兩種。有段選碼和和位選碼。當LED顯示器每段的平均電流位5MA時,就有較滿意的亮度,一般選擇斷碼5-10MA電流;位線的電流應(yīng)選擇40-80MA。LED顯示器的顯示方式有動態(tài)和靜態(tài)兩種。7289A芯片是具有SPI串行接口功能的顯示鍵盤控制芯片,它可同時取得8位共陰極數(shù)碼管和64個鍵的鍵盤矩陣。7289A的控制指令分為兩類:8位寬度的單字節(jié)指令和16位寬度雙字節(jié)指令;還有閃爍指令和消隱指令。7289A采用串行方式SPI總線與微處理器通信;7289A與AT89C52接口電路,在實際電路中無論接不接鍵盤,電路中連接到其各段上的8個 100千歐的下拉電阻均不可以省去,如果不接鍵盤而只接顯示器可以省去8個10千歐電阻,若僅接鍵盤而不接顯示器,可省去串入DP及SA-SG連線的8個220歐電阻,7289A還需要外接晶體振蕩電路。液晶顯示器簡稱LCD,其顯示原理是用經(jīng)過處后的液晶具有能改變光線傳輸方向的特性,達到顯示字符和圖形的目的。最簡單的筆段式液晶顯示器類似于LCD顯示器,可以顯示簡單的字符和數(shù)字,而目前大量使用的是點陣式LCD顯示器,既可以顯示字符和數(shù)字也可以顯示漢字和圖形。如果把LCD顯示屏、背光可變電源、接口控制邏輯、驅(qū)動集成芯片等部件構(gòu)成一個整體,是的與CPU接口十分方便。
鍵盤:鍵盤是最常見的計算機輸入設(shè)備,它廣泛應(yīng)用于微型計算機和各種終端設(shè)備上。計算機操作者通過鍵盤向計算機輸入各種指令、數(shù)據(jù),指揮計算機的工作。按照鍵盤的工作原理和按鍵方式的不同,可以劃分為四種:機械式鍵盤采用類似金屬接觸式開關(guān),工作原理是使觸點導通或斷開,具有工藝簡單、噪音大、易維護的特點。 塑料薄膜式鍵盤鍵盤內(nèi)部共分四層,實現(xiàn)了無機械磨損。其特點是低價格、低噪音和低成本,已占領(lǐng)市場絕大部分份額。 導電橡膠式鍵盤觸點的結(jié)構(gòu)是通過導電橡膠相連。鍵盤內(nèi)部有一層凸起帶電的導電橡膠,每個按鍵都對應(yīng)一個凸起,按下時把下面的觸點接通。這種類型鍵盤是市場由機械鍵盤向薄膜鍵盤的過渡產(chǎn)品。 無接點靜電電容式鍵盤使用類似電容式開關(guān)的原理,通過按鍵時改變電極間的距離引起電容容量改變從而驅(qū)動編碼器。特點是無磨損且密封性較好。
按照按鍵方式的不同鍵盤可分為接觸式和無觸點式兩類。接觸式鍵盤就是我們通常所說的機械式鍵盤,它又分為普通觸點式和干簧式。普通觸點式的兩個觸點直接接觸,從而使電路閉合,產(chǎn)生信號;而干簧式鍵盤則是在觸點間加裝磁鐵,當鍵按下時,依靠磁力使觸點接觸,電路閉合。與普通觸點式鍵盤相比,干簧式鍵盤具有響應(yīng)速度快、使用壽命長、觸點不易氧化等優(yōu)點。無觸點式鍵盤又分為電容式、霍爾式和觸摸式三種。其中電容式是我們最常用到的鍵盤類型,它的觸點之間并非直接接觸,而是當按鍵按下時,在觸點之間形成兩個串聯(lián)的平板電容,從而使脈沖信號通過,其效果與接觸式是等同的。電容式鍵盤擊鍵時無噪聲,響應(yīng)速度快,但是價格很高一些。
顯示器:按照顯示器的顯示管分類CRT、LCD。按顯示色彩分類單色顯示器、彩色顯示器。按大小分類通常有14寸、15寸、17寸和19寸,或者更大。顯示管的屏幕上涂有一層熒光粉,電子槍發(fā)射出的電子擊打在屏幕上,使被擊打位置的熒光粉發(fā)光,從而產(chǎn)生了圖像,每一個發(fā)光點又由“紅”“綠”“藍”三個小的發(fā)光點組成,這個發(fā)光點也就是一個象素。由于電子束是分為三條的,它們分別射向屏幕上的這三種不同的發(fā)光小點,從而在屏幕上出現(xiàn)絢麗多彩的畫面。顯示器顯示畫面是由顯示卡來控制的。若仔細觀察顯示器上的文本或圖像是由點組成的,屏幕上點越多越密,則分辨率越高。
屏幕上相鄰兩個同色點的距離稱為點距,常見點距規(guī)格有0.31mm、0.28mm、0.25mm等。顯示器點距越小,在高分辨率下越容易取得清晰的顯示效果。電子束采用光柵掃描方式,從屏幕左上角一點開始,向右逐點進行掃描,形成一條水平線;到達最右端后,又回到下一條水平線的左端,重復(fù)上面的過程;當電子束完成右下角一點的掃描后,形成一幀。此后,電子束又回到左上方起點,開始下一幀的掃描。這種方法也就是常說的逐行掃描顯示。而隔行掃描指電子束在掃描時每隔一行掃一線,完成一屏后再返回來掃描剩下的線,這與電視機的原理一樣。隔行掃描的顯示器比逐行掃描閃爍得更厲害,也會讓使用者的眼睛更疲勞。完成一幀所花時間的倒數(shù)叫垂直掃描頻率,也叫刷新頻率,比如60Hz、75Hz等。
通過這幾天的單片機的實訓,我在理論的基礎(chǔ)上更深刻的掌握了單片機的深層內(nèi)容及實際生活中的應(yīng)用,實訓鍛煉了自己動手能力和思維能力,還有在軟件方面的編程能力,讓我受益匪淺,同時也暴露出一些平時學習上的問題,讓我深刻反思。這些問題的發(fā)現(xiàn)將為我以后的學習和工作找明道路,查漏補缺為進一步學習作好準備。通過實訓,讓我懂得了如何編寫一些簡單的程序,學會了如何制作單片機應(yīng)用程序,并且可以在今后的日常生活中靈活運用。
相關(guān)文章: