51单片机外部中怎么写程序,格式是什么,怎么读的程序,举个例子,谢谢
答案:2 悬赏:70 手机版
解决时间 2021-03-22 10:13
- 提问者网友:却不属于对方
- 2021-03-21 13:39
51单片机外部中怎么写程序,格式是什么,怎么读的程序,举个例子,谢谢
最佳答案
- 五星知识达人网友:我住北渡口
- 2021-03-21 14:40
你好:
1.寄存器方面需要设置两个:
一个是TCON[2]或TCON[0]设置外部中断1或0是什么方式触发。
然后打开总中断开关,再打开外部中断EX1或EX0,外部中断开关。
2.程序方面这样写:
void initEX0() //外部中断初始化函数
{
IT0=1;EA=1;EX0=1; //下降沿
}
void INT0() interrupt 0 //外部中断服务函数
{
...;
}
有不懂再回复。
希望我的回答能帮助到你。
追问你上面写的我能看懂,就是用在具体程序上,或者说某个功能上不会用。打个比方:我要用外部中断去控制数码管,让数码管自动走起来,相隔一点的时间。要是我用外部中断的话,我怎么做到时间一到就中断到下一位?追答外部中断意思就是单片机外部给的一个中断信号,你说时间一到就进入外部中断,我能想到这两者结合的就是定时器加外部中断。
定时器定时时间到,给一个非INT0/1的IO一个脉冲,然后自己出发自己的外部中断,在外部中断服务里设置标志位。。。。
你是这个意思不?好浪费的说追问谢谢你!yuwen gongdi bu hao!
1.寄存器方面需要设置两个:
一个是TCON[2]或TCON[0]设置外部中断1或0是什么方式触发。
然后打开总中断开关,再打开外部中断EX1或EX0,外部中断开关。
2.程序方面这样写:
void initEX0() //外部中断初始化函数
{
IT0=1;EA=1;EX0=1; //下降沿
}
void INT0() interrupt 0 //外部中断服务函数
{
...;
}
有不懂再回复。
希望我的回答能帮助到你。
追问你上面写的我能看懂,就是用在具体程序上,或者说某个功能上不会用。打个比方:我要用外部中断去控制数码管,让数码管自动走起来,相隔一点的时间。要是我用外部中断的话,我怎么做到时间一到就中断到下一位?追答外部中断意思就是单片机外部给的一个中断信号,你说时间一到就进入外部中断,我能想到这两者结合的就是定时器加外部中断。
定时器定时时间到,给一个非INT0/1的IO一个脉冲,然后自己出发自己的外部中断,在外部中断服务里设置标志位。。。。
你是这个意思不?好浪费的说追问谢谢你!yuwen gongdi bu hao!
全部回答
- 1楼网友:逐風
- 2021-03-21 15:27
mov
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯