中断控制数码管显示程序解释.ppt_第1页
中断控制数码管显示程序解释.ppt_第2页
中断控制数码管显示程序解释.ppt_第3页
中断控制数码管显示程序解释.ppt_第4页
中断控制数码管显示程序解释.ppt_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、简易数码秒表设计示例程序,#include 51单片机寄存器定义的头文件 unsigned char code Tab=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; 数码管显示09的断码表 unsigned char int_time; 定义无符号字符变量,中断次数 unsigned char second; 定义秒 void delay(void) 延时函数 unsigned char i; for(i=0;i200;i+) 延时时间,for循环语句 ; ,秒显示函数,void Display_Second(unsi

2、gned char k) 定义入口参数 P2=0 xfd; P2=11111101,P2.1引脚低电平,DS2亮 P0=Tabk/10; 显示十位 delay(); 调用延时函数 P2=0 xfe; P2=11111110,P2.0引脚低电平,DS1亮 P0=Tabk%10; 显示个位 delay(); P2=0 xff; P2=11111111,关闭所有数码管 ,主函数,void main(void) TMOD=0X01; 工作方式控制寄存器TMOD=00000001,使用 定时器T0工作方式1 TH0=(65536-46083)/256; 将定时时间设为50ms TL0=(65536-46

3、083)%256; 存入寄存器TH0和TL0 EA=1; 开启总中断 ET0=1; 定时器T0中断允许 TR0=1; 启动定时器T0开始运行 int_time=0; 中断次数初始化 second=0; 秒初始化 while(1) 无限循环 Display_Second(second); 调用秒的显示子程序 ,实际计数值= = =46083,void Time0_serve(void)interrupt 1 using 1 定时器T0的中断服务函数,T0的中断编号为1,使用第一组工作寄存器 TR0=0; 关闭定时器T0 int_time +; 每来一次中断,中断次数自加1 if(int_time

4、=20) 20次中断,即1s进行一次时间控制,定时器T0的中断服务程序,CPU通过对PSW中的D4、D3位内容的修改,就能任选一个工作寄存器区,例如: SETB PSW3 CLR PSW4 ;选定第区 SETB PSW4 CLR PSW3 ;选定第2区 SETB PSW3 SETB PSW ;选定第区, int_time=0; 中断次数清0 second +; 秒加1 if(second=60) if语句 second=0; 等于60就返回 TH0=(65536-46083)/256; 重新给计数器T0赋初值 TL0=(65536-46083)/256; TR0=1; 启动定时器T0 ,使用定

5、时器T0的中断控制数码管倒计数显示,自主思考: 比较P141页倒计数示例程序与P112倒计数示例程序的区别,#include unsigned int x; unsigned char code Tab=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; void delay(void) unsigned int m; for(m=0;m600;m+) ; ,void display(unsigned int k) P2=0 xf7; P0=Tabk/1000; delay(); P2=0 xfb; P0=Tab(k%100

6、0)/100; delay(); P2=0 xfd; P0=Tab(k%100)/10; delay(); P2=0 xfe; P0=Tabk%10; delay(); P2=0 xff; ,void main(void) TMOD=0 x01; 使用定时器T0方式1 TH0=(65536-46083)/256; 定时50ms TL0=(65536-46083)%256; EA=1; 开启总中断 ET0=1; 定时器T0允许中断 TR0=1; 启动T0 x=9999; while(1) 无限循环 display(x); 调用显示函数 ,void Time0(void)interrupt 1 using 1 中断服务程序 TR0=0; 关闭T0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论