单片机按键触发中断_单片机按键触发中断

单片机按键触发中断_单片机按键触发中断满意答案jwp武乡2017.05.12采纳率:55%等级:6已帮助:2258人#include#defineucharunsignedcharucharstepd[]={0x01,0x03,0x02,0x06,0x04

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

jwp武乡

2017.05.12

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:55%    等级:6

已帮助:2258人

#include

#define uchar unsigned char

uchar stepd[]={0x01,0x03,0x02,0x06,0x04,0xc0,0x08,0x09};

uchar num=0,fx=0;

sbit key1=P3^0;

sbit key2=P3^1;

sbit key3=P3^2;

unsigned int fcnt,scnt,ft,st;

void t0isr() interrupt 1

{

if(ft>0)

{

TH0=(65536-fcnt)/256;

TL0=(65536-fcnt)%256;

ft–;

}

else

{

TH0=(65536-fcnt)/256;

TL0=(65536-fcnt)%256;

st–;

}

if(ft==0 && st==0)TR0=0;

P2=stepd[num];

if(fx==0){num++;num%=8;}

if(fx==1)

{

if(num==0)num=7;

else num–;

}

}

main()

{

TMOD=0x01;

fcnt=5000;

scnt=10000;

TH0=(65536-fcnt)/256;

TL0=(65536-fcnt)%256;

TR0=1;

ET0=1;

EA=1;

while(1)

{

if(key1==0)

{

while(key1==0);

TR0=~TR0;

ft=1000;

st=500;

}

if(key2==0)

{

while(key2==0);

fx=0;

}

if(key3==0)

{

while(key3==0);

fx=1;

}

}

}

00分享举报

今天的文章单片机按键触发中断_单片机按键触发中断分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82024.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注