单片机关断
A. 判断开关闭或断的单片机源程序
估计你要汇编程序吧,我写一个。
你的开关最好接个上拉电阻,这样断开就是高电专平,闭合就是低属电平。依据这个下下面的程序,假设你的是用P2口的P2.0到P2.5接按键:
MOV A,p2
CJNE A,#3FH,TT
RET
TT:CJNE A,#1FH,L1
SJMP P1
L1:CJNE A,#2FH,L2
SJMP P2
L2:CJNE A,#37H,L3
SJMP P3
L3:CJNE A,#3BH,L4
SJMP P3
L4:CJNE A,#3DH,L5
SJMP P5
L5:CJNE A,#3EH,L6
SJMP P6
L6:
MOV A,#0FFH
RET
P1:MOV A,#1
RET
P2:MOV A,#2
RET
P3:MOV A,#3
RET
P4:MOV A,#5
RET
P5:MOV A,#5
RET
P6:MOV A,#6
RET
这个子程序,调用一下,如果返回值A是ffh,就是没有键按下,如果为1就是一号键按下。
B. 单片机C语言如何满足条件就立即退出中断函数
举例:
#include<reg51.h>
void main()
{
IE=0x81;
while(1);
}
void INT0 () interrupt 0
{
do
{if (P1=0x30)
return;}
while(1);
}
比如上例复:中断0原本是制死循环,但当p1w为0x30,则跳出。跟别的函数一样,可以用return返回。
C. 单片机可不可以直接控制三极管的导通和关断求指点……谢谢。
是完全可以控制的,使单片机的对应的一个I/O口高电平或低电平,即可控制三极管的通与断.
希望能帮助到您,谢谢!
D. 单片机中的开中断,关中断是什么意思
开中抄断就是当有中断信号产生时,单片机会进入中程序
如P3^2口 有低电平信号或下降沿信号(由TCON寄存器控制),单片机会暂时放下当前工作,去执行中断程序中的程序,当中断程序中的工作结束后,再返回主程序继续做。
关中断的话,就是关闭中断,让P2^3口接收到低电平信号或下降沿信号(由TCON寄存器控制)后,不在进入中断。
通俗点就是把尿意比作中断信号,开中断 就是在人群中必须马上去上厕所,关中断就是穿了尿不湿或者可以憋住,暂时不用去理会尿意,直接跳过这个命令进入下一个 执行命令。
E. 求一个单片机自关断电源电路 : 开关按键,开按键给高电平,7805工作,单片机工作,关按键低电
在7805的电源输入前加一个继电器,但是需要手动复位。
F. 单片机进入中断后,关闭中断,这时如果已经进入中断,中断会继续执行吗
当然会继续执行 一般程序开发时利用这样的指令防止中断的反复触发 即进入中断服务程序后关闭中断 执行完中断服务程序后打开并重新初始化中断
G. 单片机如何开始中断
单片机中断产生条件:
1、EA=1
2、相应的外设中断使能位有效,如串口则需ES=1
3、外设满足中断产生条件,如串口接收到一帧数据或发送完一帧数据
H. 单片机: 关闭所有中断,最简单的方法是用一条什么指令
EA是总中断。直接SETB 就是开了所有中断,再开相关的位则可以开启对应的中断。
关闭时,不管你开了几个中断。直接将EA清零则关闭所有中断。希望可以帮到你。
I. 关于单片机控制可控硅关断的问题
不要用moc3021,用moc3061或者3081。
http://..com/question/1795762120910757707
3061内部有过零检测电路,不需要程序处理过零信号回。输入端发光管加上电流答信号,3061输出不会立即开通,而是等到内部检测到过零信号之后,输出才会开通。过零的时候,电压是零,这个时候输出导通,电流应该也从零开始按正弦增加,不会剧烈变化。
J. 单片机开了中断一定要关了中断吗。
这是你程复序编写上的问题了制,主程序—中断服务程序(键值判断完成后返回断点)再由主程序通过中断返回的键值再调用对应的应用子程序,应用程序执行完后返回主程序再次等待中断。如过有优先级得解决好优先级问题。中断完成后必须返回断点否则程序会死掉。