单片机89c51控制多个继电器程序

想用单片机控制8个继电器,其中1-4键各控制2个继电器,开机时默认1键的和4键的继电器打开,而且要按1时其余的2-3键控制的继电器要断开,但不影响4键的继电器,按2时其余的1和3键控制的继电器要断开,但不影响4键的继电器,按3时其余的1和2键控制的继电器要断开,但不影响4键的继电器按4时4键控制的继电器要断开其余的1至3键控制的继电器不影响.求程序.

我来帮你做,你稍等。
差不多肯定你这里条件没说明白,因为全是断开没有吸合,先按字面意思来。
假设八个继电器由P1口驱动,高电平有效,及你所谓的打开,这是一个子程序,按键扫描你自己处理,当前键值为KEY,并将1-4键键值定义成KEY1、KEY2、KEY3、KEY4。
。。。。。。
MOV P1,#0C3H;这个加入你的主程序初始化中,1、4键控制的继电器吸合
。。。。。。
MOV A,KEY;这个加入你的主程序键盘处理部分,键值送入A然后调用下面子程序
LCALL ONOFF
。。。。。。
ONOFF:

CJNE A,KEY1,CKEY2;不是1号键转去判断2号键

ANL ,#C3H;2-3键控制的继电器断开

RET
CKEY2:

CJNE A,KEY2,CKEY3;不是2号键转去判断3号键

ANL ,#CCH;1-3键控制的继电器断开

RET
CKEY3:

CJNE A,KEY3,CKEY4;不是3号键转去判断4号键

ANL ,#0F0H;1-2键控制的继电器断开

RET
CKEY4:

CJNE A,KEY4,ERROR;不是4号键键值错误,退出

ANL ,#C0H;1-2-3键控制的继电器断开

ERROR:
RET
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-28

希望对你有用

第2个回答  2015-03-27
需要给你完成一份吗