初学者单片机中断问题 只能加,不能减

qq_37436100 2017-12-02 11:34:36
# include<reg51.h>
unsigned char seg_dm[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char bit_line[5]={0x02,0x04,0x08,0x10,0x20};
unsigned char data_display[5];
unsigned int dat_count=0;

delay(unsigned char time)
{
unsigned char i,j;
for(i=0;i<time;i++)
for(j=0;j<120;j++)
;
}


void data_change(void)
{
data_display[0]=dat_count%10000%1000%100%10;
data_display[1]=dat_count%10000%1000%100/10;
data_display[2]=dat_count%10000%1000/100;
data_display[3]=dat_count%10000/1000;
data_display[4]=dat_count/100000;
}


void INT0_init(void)
{
IT0=1;
EA=1;
EX0=1;
}

void INT1_init(void)
{
IT1=1;
EA=1;
EX0=1;
}


void display(unsigned char dat,unsigned char bit_code)
{
P2=0x00;
P1=seg_dm[dat];
P2=bit_code;
delay(5);
}


main()
{
unsigned char i ;
INT0_init();
INT1_init();
while(1)
{
data_change();
for(i=0;i<5;i++)
display(data_display[i],bit_line[i]);
}
}



void Init0() interrupt 0 using 0
{
EX0=0;
dat_count++;
EX0=1;
}



void Init1() interrupt 2 using 1
{
EX1=0;
dat_count--;
EX1=1;
}
...全文
157 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_37436100 2017-12-05
  • 打赏
  • 举报
回复
高手啊,我查了半天也没查出来
ckc 2017-12-03
  • 打赏
  • 举报
回复
INT1_init函数 EX0=1 应该是 EX1=1

27,370

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧