09電信一班劉博然
學號:200911513114
一、 1、專案名稱:矩陣鍵盤輸入,led點陣顯示
2、專案要求:用4×4的鍵盤控制8×8的led模組,每按乙個鍵顯示乙個特定的字元。我所設計的電路具有基本的要求,總共有5個按鍵,每按乙個按鍵led模組所顯示的圖案各不相同,分別是/,\,△,向上的箭頭,正方形。
3、硬體電路圖及設計說明:首先搞清各個元器件的原理及工作原理,然後排版,然後用雙面膠講底座,led點陣,鍵盤粘到電路板上,再用杜邦線根據電路原理圖連線,最後接上電源。
4、軟體程式流程圖及設計說明:
程式流程圖:
led點陣顯示函式設計:本函式要實現的功能是根據鍵盤的值,在led點陣上顯示不同的圖形。
如果鍵盤的輸入值為0-9則顯示相應的數字,如果輸入的是其他值,則顯示「+」。本程式採用二維陣列存放要顯示的圖形的字模,然後再通過逐行掃瞄led點陣,把要顯示的圖形分8次顯示,一次顯示一行,利用人眼的視覺暫留效應,是人看到的是乙個圖形一次顯示出來,通過乙個迴圈控制圖形顯示的時間。程式流程圖:
位圖設計:根據8*8 led點陣的原理,8x8 點陣共需要64 個發光二極體組成,且每個發光二極體是放置在行線和列線的交叉點上,當對應的某一列置1 電平,某一行置0 電平,則相應的二極體就亮。
5、除錯及驗證情況:在除錯過程中主要就圖案的顯示情況做了一些更改,剛開始就是按照指導書的要求,直接設計很複雜的數字和圖案,經過老師的講解後,了解了led點陣顯示的原理,設計了幾個簡單的圖案,並且在最後的除錯過程中完成了設計的要求。結果按s1,s2,s3,s4,s5分別現實圖案正方形」「↑」。
二、 1、專案名稱:脈寬調變(pwm)輸出
2、專案要求:四個按鍵,乙個發光管。按1號鍵啟動脈衝輸出,發光管點亮,按2號鍵停止脈衝輸出,發光管熄滅。
在輸出脈衝時,按3號鍵增大占空比,發光管亮度增加;按4號鍵減小占空比,發光管亮度減小。
3、硬體電路圖及設計說明:硬體電路和第乙個硬體電路相似,在電路板上再粘上led流水燈,然後改變杜邦線的連線,將led燈按順序和p1口連線,然後按鍵只需要4個按鍵。
4、軟體程式流程圖及設計說明:
脈衝寬度調製(pwm)是一種對模擬訊號電平進行數字編碼的方法。通過高解析度計數器的使用,方波的占空比被調製用來對乙個具體模擬訊號的電平進行編碼。pwm訊號仍然是數字的,因為在給定的任何時刻,滿幅值的直流供電要麼完全有(on),要麼完全無(off)。
電壓或電流源是以一種通(on)或斷(off)的重複脈衝序列被加到模擬負載上去的。通的時候即是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要頻寬足夠,任何模擬值都可以使用pwm進行編碼。
pwm的乙個優點是從處理器到被控系統訊號都是數字形式的,無需進行數模轉換。讓訊號保持為數字形式可將雜訊影響降到最小。雜訊只有在強到足以將邏輯1改變為邏輯0或將邏輯0改變為邏輯1時,也才能對數碼訊號產生影響。
5、除錯及驗證情況:該實驗在最後除錯時沒有出現問題,一次成功。結果為接通電源後,按下按鍵1,燈亮,按下按鍵2,燈滅。
當燈亮的時候,每按下一次按鍵3,燈的亮度會增加,當燈亮時,每按一次按鍵4,燈的亮度會減弱。
三、 1、專案名稱:環形脈衝分配
(1)2、專案要求:三個按鍵,三個發光管。按1號鍵三個發光管按1、2、3的順序依次迴圈流動點亮,按3號鍵發光管熄滅;按2號鍵三個發光管按3、2、1的順序依次迴圈流動點亮;按3號鍵發光管熄滅。
3、硬體電路圖及設計說明:本設計的硬體電路主要包括控制電路,最小系統,顯示電路。最小系統主要是為了是微控制器正常工作,控制電路主要由開關和按鍵組成,由操作者根據相應的工作需要進行操作,顯示電路主要是為了顯示led的工作狀態。
4、軟體程式流程圖及設計說明:
org 0000h
ajmp main
org 0003h
ljmp zengjia
org 0013h
ljmp jianshao
org 0100h
main: setb it0
setb it1
setb ea
setb ex0
setb ex1
mov 60h,#10
mov 61h,#10
mov p3,#0ffh
jb p3.0,$
jnb p3.0,$
led: mov p1,#0feh
acall del3s
mov p1,#0ffh
acall del4s
sjmp led
org 0200h
zengjia:inc 60h
dec 61h
reti
org 0300h
jianshao:dec 60h
inc 61h
reti
del3s: mov tmod,#10h
mov tl1,#18h
mov th1,#0fch
;mov r6,60h
setb tr1
loop11: mov r5,60h
jnb p3.1,guanbi
loop1: jnb tf1,$
jnb p3.1,guanbi
mov tl1,#18h
mov th1,#0fch
clr tf1
djnz r5,loop1
jnb p3.1,guanbi
;djnz r6,loop11
clr tr1
retdel4s: mov tmod,#10h
mov tl1,#18h
mov th1,#0fch
; mov r6,61h
setb tr1
loop21: mov r5,61h
jnb p3.1,guanbi
loop2: jnb tf1,$
jnb p3.1,guanbi
mov tl1,#18h
mov th1,#0fch
clr tf1
djnz r5,loop2
jnb p3.1,guanbi
;djnz r6,loop21
clr tr1
ret5、除錯及驗證情況:該實驗在最後除錯時沒有出現問題,一次成功。該實驗結果為接通電源後,按按鍵1三個led按1,2,3順序迴圈點亮,按按鍵3熄滅,按按鍵2三個led按3,2,1順序迴圈點亮。
(2)2、專案要求:兩個按鍵,三個發光管,上電後預設1號發光管點亮。不按2號鍵時,每按一次1號鍵點亮的發光管按1、2、3的順序依次迴圈流動一位;按住2號鍵時,每按一次1號鍵點亮的發光管按3、2、1的順序依次迴圈流動一位。
3、硬體電路圖及設計說明:該專案硬體電路和上乙個一樣,只是按鍵少了乙個,同時也需要3個led燈,其他都一樣,只是接線不一樣。
4、軟體程式流程圖及設計說明:
org 0000hpc復位位址
ljmp mainmain為主程式入口位址
主程式 org 0100h
main: mov sp,#60h堆疊初始換
mov r0,#3
mov r1,#3
mov a,#0feh
loop: mov p1,a
jnb p3.1,fan
acall dels
jb p3.0,$
jnb p3.0,$
rl a
djnz r0,loop
ajmp main
fan: mov a,#0fbh
fan1: jb p3.1,loop
mov p1,a
acall dels
jb p3.0,$
jnb p3.0,$
rr a
djnz r1,fan1
ajmp main
dels: mov tmod,#10h
mov tl1,#18h
mov th1,#0fch
setb tr1
loop11: mov r5,60h
loop1: jnb tf1,$
mov tl1,#18h
mov th1,#0fch
clr tf1
djnz r5,loop1
clr tr1
retend5、除錯及驗證情況:該實驗在最後除錯時沒有出現問題,一次成功。驗證的結果為接通電源後預設1號發光管點亮。
不按2號鍵時,每按一次1號鍵點亮的發光管按1、2、3的順序依次迴圈流動一位;按住2號鍵時,每按一次1號鍵點亮的發光管按3、2、1的順序依次迴圈流動一位。
四、 1、專案名稱:a/d轉換
2、專案內容:用電位器分壓得到0—5v直流電壓,經過adc0809晶元送人微控制器,用八個發光管以二進位制數的方式顯示數字量。(點亮表示「1」)
3、硬體電路圖及設計說明:
a/d轉換(模數轉換),模擬訊號是乙個隨時間軸連續變化的電訊號,轉換時,就是將某一取樣時刻的模擬訊號的幅值用數字的方式記錄下來,只要取樣頻率足夠高,也就是取樣時刻點的密度足夠大,記錄下來的數碼訊號就可以還原出原來的那個模擬訊號了。
該專案硬體電路需要另外乙個晶元adc0809,其內部有乙個8通道多路開關,它可以根據位址碼鎖存解碼後的訊號,只選通8路模擬輸入訊號中的乙個進行a/d轉換。主要特性有8路輸入通道,8位a/d轉換器,即解析度為8位,具有轉換起停控制端和模擬輸入電壓範圍0~+5v,不需零點和滿刻度校準。該晶元引腳圖:
4、軟體程式流程圖及設計說明:
#include<>
#define uchar unsigned char
#define uint unsigned int
uchar code dispcode=;
uchar getdata;
uint temp,a;
sbit st=p3^0;
sbit oe=p3^1;
sbit eoc=p3^2;
sbit clk=p3^3;
void main(void)
{ st=0;
oe=0;
et0=1;
微控制器實訓報告
目錄一 概述 1.1設計製作產品的背景 目的 意義 1.2設計製作產品的設計要求 1.3分工情況 工作計畫及本人所總結工作 1.4本課題的基本內容 重點及難點 二 正文 2.1實驗原理 2.2實驗流程圖 2.3硬體設計 2.4軟體設計 2.5 c語言程式 2.6簡易交通燈硬體接線說明 2.7交通燈電...
微控制器實訓總結
微控制器心得總結 通過這乙個學期的微控制器學習,我收穫了很多關於微控制器的知識,並且這些知識和日常的生活息息相關。了解了一些簡單程式的錄入,led顯示器 鍵盤 和顯示器的應用和原理。led顯示器 led顯示器是由發光二管組成顯示欄位的器件。通常的8段led顯示器是由8個發光二極體組成,led顯示器分...
微控制器實訓總結
微控制器心得總結 通過這乙個學期的微控制器學習,我收穫了很多關於微控制器的知識,並且這些知識和日常的生活息息相關。了解了一些簡單程式的錄入,led顯示器 鍵盤 和顯示器的應用和原理。led顯示器 led顯示器是由發光二管組成顯示欄位的器件。通常的8段led顯示器是由8個發光二極體組成,led顯示器分...