单片机课设频率计源程序.doc

单片机课设频率计源程序.doc

ID:53879080

大小:71.85 KB

页数:3页

时间:2020-04-10

单片机课设频率计源程序.doc_第1页
单片机课设频率计源程序.doc_第2页
单片机课设频率计源程序.doc_第3页
资源描述:

《单片机课设频率计源程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、#include#include#defineint8unsignedchar#defineint16unsignedint#defineweiXBYTE[0x0FF20]//将82255PA口映射为数码管的位选,与硬件连接相对应#defineduanXBYTE[0x0FF21]//将8255PB口映射为数码管的段选,与硬件连接相对应#definecontrolXBYTE[0xff23]int8dis[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0

2、x80,0x90};//要显示的0-9段码int16frequency;//定义计数的频率变量voidtime_init()//定时器初始化函数{TMOD=0x15;//定时器1为16位定时器,定时器0为16为计数器TH1=0X4C;TL1=0X01;TL0=0;TH0=0;//计数初值0;TR0=1;TR1=1;//启动定时器0和1EA=1;//打开总中断ET0=1;ET1=1;//打开定时器0和1中断}voiddisplay()//动态扫描函数{int8wan,qian,bai,shi,ge;int16count;wan=

3、frequency/10000;qian=frequency%10000/1000;bai=frequency%10000%1000/100;//取显示频率的百位shi=frequency%10000%1000%100/10;//取显示频率的十位ge=frequency%10000%1000%100%10;//取显示频率的个位duan=0x01;//关闭数码管显示,防止显示跳变干扰duan=dis[ge];//要显示的频率个位送8255PB口wei=0xfe;//8255PA0=0,数码管0显示for(count=0;coun

4、t<200;count++);//延时,大约200us是数码管保持足够的亮度同时亮灭时不被duan=0xff;duan=dis[shi];//要显示的频率十位送8255PB口人眼分辨完成动态扫描wei=0xfd;//8255PA1=0,数码管1显示for(count=0;count<200;count++);duan=0xff;duan=dis[bai];//要显示的频率百位送8255PB口wei=0xfb;//8255PA2=0,数码管2显示for(count=0;count<200;count++);//延时,大约200u

5、sduan=0xff;duan=dis[qian];//要显示的频率千位送8255PB口wei=0xf7;//8255PA3=0,数码管3显示for(count=0;count<200;count++);//延时,大约200usduan=0xff;duan=dis[wan];//要显示的频率万位送8255PB口wei=0xef;//8255PA4=0,数码管4显示for(count=0;count<200;count++);//延时,大约200us}main(){control=0x81;//8255A口和B口为输出time_

6、init();while(1)display();//一直显示脉冲的频率}voidTIME()interrupt3//定时器1中断服务程序{int16counter=20;int8FH,FL;TH1=0X4C;TL1=0X01;counter++;if(counter==20){counter=0;FL=TL0;//将计数器计到的频率值送入FL,FH。保证任一秒只显示这一秒的频率FH=TH0;frequency=FH*256+FL;//取计数的频率值,送去数码管显示,TL0=0;TH0=0;//将计数器重新置0,计下一秒的频率

7、}}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。