外部中断定时器c语言程序详解(1)

 时间:2024-11-14 04:43:32

使用外部中断定时器c语言程序详解

工具/原料

电脑

方法/步骤

1、利用外部中断0,定时器0从数码管到流水灯显示

2、#include"reg52.h"//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include"intrins.h"

外部中断定时器c语言程序详解(1)

3、#defineuintunsignedint#defineucharunsignedchar

外部中断定时器c语言程序详解(1)

4、ucharled,n,i,count=0;掼鸿乡羰ucharsmg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,扉钛笆哇0x07,0x7f ,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//0-Fucharsm[]={0x00,0x01};//数码管扫描ucharstr[2];//显示两位数码管

外部中断定时器c语言程序详解(1)

5、/***********************************************涯箨唁峦*******************//*延时函数声明惺绅寨瞀*//******************************************************************//*voidmdelay(uintt){ucharn; for(;t>0;t--) for(n=0;n<125;n++) {;}}*//*大约一毫秒的延时函数*/voidmdelay(uintt){ucharn; while(t--) { for(n=0;n<123;n++) {;}} }

外部中断定时器c语言程序详解(1)

6、voidmain(){ EA=1;//开总中断开关 EX0=1;//打开外部中断0 INT0=1;//触发方式为下降沿触发 TH0=0x3c;//设置初值 TL0=0xb0; ET0=1;//打开定时器中断 TR0=1;//启动定时器 TMOD=0x01;//设置定时器0为工作方式1

外部中断定时器c语言程序详解(1)

7、while(1){ for(i=0;i<2;i++)//数码管显示数据 { P1=0xff; P2=sm[i]; P0=smg[str[i]]; mdelay(5); }} }

外部中断定时器c语言程序详解(1)

8、voidint0()interrupt0{ucharc; led=0xfe;P2=0x00; for(c=0;c<8;c++)//流水灯循环一次 { P1=led; led=_crol_(led,1);//左移函数 mdelay(1000); } }

外部中断定时器c语言程序详解(1)

9、voidtime0()interrupt龀音孵茧1{ TH0=0x3c; TL0=0xb0; coun墉掠载牿t++;if(count==20)//延时一秒0-60显示{ count=0; str[0]=n/10; str[1]=n%10; n++; if(n==60) { n=0;}}}

外部中断定时器c语言程序详解(1)

10、本经验只供参考,如有不足,还请见谅,如果有什么疑问请在下边留言,及时给你解答。。。

通过AD10 创建心工程 怎样使用酸度计 上手的日语是什么 便宜实用又能提高幸福感的女性生活用品 大学生时间管理常用的方法
热门搜索
僵尸动漫 动车图片大全 动漫美女被绑架图片 动漫接吻图片 绘画作品图片