新人发帖:
实验六、实验内容
1. 连线并编制程序。使用定时器1中断,按方式1工作,得到1S的定时;按方式2工作,得到4ms的定时。
2.初始化程序
包括定时器初始化和中断系统初始化。主要对IP,IE,TCON,TMOD 的相应位进行正确的设置,并将时间常数送入定时器中。由于只有定时器中断,IP不必设置。
3.设计中断服务程序和主程序
中断服务程序除了要完成计时工作外,还要实现动态显示。
软件设计:扩展单个按键,使其具有“开启/停止/清除”的功能,开启:可以实现0—99S的计时,停止:能显示记录的时间,清除:具有清除当前记录重新记录数据。
仿真原理图如下
单片机源程序如下:
#include #define uchar unsigned char #define uint usigned int #define SEG P2 uchar key_idx,key_state; #define SCANP P1; sbit LED=P0^7; sbit K1=P1^7; char code TAB[10]={0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x83,0xf8,0x80,0x98}; char disp[2]={0xc0,0xc0}; char seconds=0; //秒数 char scan=0; //扫描信号 int count_T0=0; //中断次数 int count_T1=0; void delay(int x) { uchar i; while(x--) for(i=0;i<100;i++); } void key_envent() { if(key_state==0) { key_idx=(key_idx+1)%3; switch(key_idx) { case 1:EA=1;TR0=1;break; case 2:TR0=0;break ; case 0:TR0=1;seconds=0; } } } main() { key_idx=0; //按键次数(0,1,2,3) key_state=1;//按键状态 IE=0x8a; TMOD=0x21; TH0=(65636-50000)/256; TL0=(65636-50000)%256; TR0=1; TH1=256-250; TL1=256-250; TR1=1; LED=1; while(1) { if(key_state!=K1) { delay(10); key_state=K1; key_envent(); } } } //T0中断子程序,计算显示秒数 void T0_1s(void) interrupt 1 { TH0=(65636-50000)/256; TL0=(65636-50000)%256; if(++count_T0==20) //20*0.05=1s { count_T0=0; if(key_idx==1) seconds++; if(seconds==100) { seconds=0; LED=~LED;} } disp[1]=TAB[seconds/10]; disp[0]=TAB[seconds%10]; //个位 } void T1_8ms(void) interrupt 3 { if(++count_T1==32) //0.25*32=8ms { count_T1=0; if(++scan==3) scan=1; SEG=0xff; P1=~scan; SEG=disp[scan-1]; } }
上一篇:单片机+ADC0832热电阻PT100测温程序
下一篇:格雷码转换为二进制码_51单片机汇编语言子程序
推荐阅读最新更新时间:2024-11-13 13:29
设计资源 培训 开发板 精华推荐
- LTM4628EY 双路 8A、1.5V 和 1.2V 输出 DC/DC 模块稳压器的典型应用电路
- XHU_NFC 西华大学校园地图NFC卡
- 基于STP24DP05和STM32的具有LED错误检测功能的高亮度RGB LED阵列
- NCN4555GEVB:Sim 卡接口评估板
- power功率计V2
- IRU3034 Pentium Core 电源应用的典型应用(IRU3034 和 IRU3033 双布局)低成本 4 位 VID
- 使用 Analog Devices 的 LT3066EMSE-3.3 的参考设计
- 使用 Analog Devices 的 LTC2992HDE-1 的参考设计
- 基于KP1071非隔离LED恒流驱动
- LTC3588IMSE-1 电场能量收集器的典型应用电路
- 有奖直播:新科技、新课堂、新学期~ ADI软件定义无线电ADALM-Pluto入门实战
- MPS e-store清空购物车2020
- 下载有礼:2017年泰克亚太专家大讲堂第四期: 如何应对新型半导体材料表征测试挑战
- 有奖直播 | 是德科技信号完整性测试的演变和更新
- 有奖直播|相约Keysight World 2019“汽车电子及新能源汽车测试”论坛
- TE专题:可靠连接解决方案大集合
- 有奖直播:助力AI算力,下一代GPU服务器中卡缘高速互连解决方案哪里找?
- 下载MPS汽车电机控制技术干货,赢【Keep体脂秤、自动洗手机套装、小米保温杯】,开启汽车技术进阶之旅!
- 有奖直播:Microchip适用于CryptoAuthentication™系列的可信任平台