标题: At89c2051控制继电器,不论怎么改程序单片机输出高电平 [打印本页]

作者: 饮酒作乐    时间: 2020-4-28 09:11
标题: At89c2051控制继电器,不论怎么改程序单片机输出高电平
不论怎么改,单片机输出还是高电平。(单片机没有问题),我不知道是寄存器设置问题还是端口设置问题。请各位指点一下。电路图中所有引脚都外接了上拉电阻

18Y9S3E[CHW[Z3EH7}(0WY0.png (91.21 KB, 下载次数: 41)

18Y9S3E[CHW[Z3EH7}(0WY0.png

G)J2~8CWWS]RAJPY_HGRB[T.png (29.59 KB, 下载次数: 76)

G)J2~8CWWS]RAJPY_HGRB[T.png

作者: lovezjf234    时间: 2020-4-28 09:11
单片机默认是高电平,你的watchdog一直在往复硬件复位,所以输出一直是高电平。所以应该是你的喂狗方式有问题
作者: 饮酒作乐    时间: 2020-4-28 09:49
给个方向也好
作者: zmc419    时间: 2020-4-28 10:44
直接P3=0x00,测试硬件有无问题。
作者: zmc419    时间: 2020-4-28 10:45
P3双向口,应该不用上拉。
作者: 饮酒作乐    时间: 2020-4-28 11:23
zmc419 发表于 2020-4-28 10:44
直接P3=0x00,测试硬件有无问题。

单片机和硬件电路没有问题。就是我的程序问题,但是我看不出来
作者: 李天泽    时间: 2020-4-28 12:31
直接P3=0x00
作者: bhjyqjs    时间: 2020-4-28 14:20
AT89C2051是老式的51单片机,拉电流只有几十uA,所以高电平输出无法完成。该芯片灌电流最大20mA,所以要更改相应的驱动电路,才能完成设计意图。
作者: 饮酒作乐    时间: 2020-4-28 14:54
bhjyqjs 发表于 2020-4-28 14:20
AT89C2051是老式的51单片机,拉电流只有几十uA,所以高电平输出无法完成。该芯片灌电流最大20mA,所以要更改 ...

这是一个正在使用的产品,硬件电路没有问题,可以使用。只不过,我在硬件上学的太少,不知道怎么驱动。写的程序也没有任何反映。
作者: 394538682    时间: 2020-4-28 17:31
程序问题,第一、main函数里面没有while循环,程序上电执行一遍就跑飞了。第二、没有输出,单片机默认输出高电平
作者: TTQ001    时间: 2020-4-29 01:53
主例程没有无限循环,加电时仅执行初始化,因此输出默认设置为高。
作者: 饮酒作乐    时间: 2020-4-29 10:47
各位大佬。问题已经解决了。程序有错误但是不大,硬件电路也没有错误。最根本的错误是我用错了软件。用KEIL 5 编写2051的程序生成的HEX文件时错误的。我在虚拟机上下载了XP系统,安装了KEIL 2 再生成新的HEX文件就是对的了。





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1