《单片机》实验——实验4 MCS-51内部定时/计数器实验(2)
《單片機(jī)》實(shí)驗(yàn)——實(shí)驗(yàn)4 MCS-51內(nèi)部定時(shí)/計(jì)數(shù)器實(shí)驗(yàn)(2)
- 一、實(shí)驗(yàn)?zāi)康?/li>
- 二、知識要點(diǎn)
- 三、實(shí)驗(yàn)內(nèi)容
實(shí)驗(yàn)一至實(shí)驗(yàn)七配套源代碼、電路圖、hex文件、實(shí)驗(yàn)報(bào)告,請點(diǎn)擊此處
一、實(shí)驗(yàn)?zāi)康?/h1>
二、知識要點(diǎn)
(1)8051內(nèi)部有兩個(gè)定時(shí)/計(jì)數(shù)器T0和T1,均可對系統(tǒng)內(nèi)部的機(jī)器周期計(jì)數(shù)(定時(shí)模式)和芯片之外的脈沖信號計(jì)數(shù)(計(jì)數(shù)模式);都有4種工作方式,其不同之處在于計(jì)數(shù)值寬度不一樣(13位/16位/8位)以及計(jì)數(shù)初值是否能自動(dòng)重裝。
(2)與定時(shí)/計(jì)數(shù)器相關(guān)的控制字及控制位主要有TMOD,TH0/TH1,TL0/TL1,TCON
三、實(shí)驗(yàn)內(nèi)容
(1)通過并行口P1實(shí)現(xiàn)十字路口交通燈的模擬控制。
關(guān)于交通路燈的亮滅規(guī)律說明:設(shè)有一個(gè)十字路口分為南北方向和東西方向,初始狀態(tài)為紅燈全亮,之后,南北綠燈亮,東西紅燈亮,南北方向通車。延時(shí)一段時(shí)間后,南北綠燈熄滅,而南北黃燈開始閃爍,閃爍若干次以后,南北紅燈亮,而同時(shí)東西的綠燈亮,東西方向通車,延時(shí)一段時(shí)間后,東西綠燈熄滅,而東西黃燈開始閃爍,閃爍若干次以后,再切換到南北方向,之后,重復(fù)上述過程。
編程提示:(實(shí)現(xiàn)6個(gè)燈按交通變化規(guī)律亮、滅或閃爍)
通過定時(shí)器實(shí)現(xiàn)精準(zhǔn)定時(shí),用較短的定時(shí)控制黃燈的閃爍(如0.5s或1s),較長的定時(shí)控制通行(如5s或10s)。
(2)(選做題)利用8051的定時(shí)/計(jì)數(shù)器控制4個(gè)發(fā)光二極管循環(huán)閃爍,要求點(diǎn)亮?xí)r間為1S,采用方式3的TH0與TL0聯(lián)合實(shí)現(xiàn),TH0用于定時(shí),TL0用于對TH0溢出次數(shù)的計(jì)數(shù)。
#include<reg51.h> char t; char i=0; char num=0; char a=0; char led[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; void main(){TMOD=0x07;TH0=0x06;TL0=0x38;TR1=1;TR0=1;EA=1;ET0=1;while(1){while(TF1==0);TF1=0;P3=0;P3=0x10;TH0=0x06;} } timer() interrupt 1{TF0=0;num++;a=i%8;if(num%20==0){P1=led[a];i++;}TL0=0x38; }總結(jié)
以上是生活随笔為你收集整理的《单片机》实验——实验4 MCS-51内部定时/计数器实验(2)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: json转excel_Excel如何制作
- 下一篇: 【无标题】新冠病毒变异株检测——荧光定量