51单片机怎么检测不到外加电压的变化
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/21 04:40:44
51单片机怎么检测不到外加电压的变化
我想用两组红外对射广电开关测速.有物体遮挡时,开关输出高电平,遮挡几乎输出为0.我按照一些网友的方法,将接受信号的I/O口置为0,然后进行检测,当有物体遮挡时,用万用表测得光电门输出5.6V.按理讲I/O口应该熄灭的.但怎么也观察不到Led的变化?
并且,当用万能表,测得时候本是高电位的输出端,变成了低电位.
我想用两组红外对射广电开关测速.有物体遮挡时,开关输出高电平,遮挡几乎输出为0.我按照一些网友的方法,将接受信号的I/O口置为0,然后进行检测,当有物体遮挡时,用万用表测得光电门输出5.6V.按理讲I/O口应该熄灭的.但怎么也观察不到Led的变化?
并且,当用万能表,测得时候本是高电位的输出端,变成了低电位.
你初始化端口搞反了吧.应该是将接受信号的I/O口置为1,再读该端口的状态.在硬件上还应检查你的接法对不对.标准的光电开关的接法草图如下:
再问: 您好,很感谢您的讲解。之前我是置为1的,但是没效果,后来换成了0.既然置为1,有低电平的话就会亮,那么我置为0的话,有高电平输出,他不就会从暗到亮吗?我就是么想的!
再答: 你说的“会亮”,指的是什么会亮呢?你是把那个口设成读入得,不是输出的呀!例如你设的是P0.0口,你只需要一条MOV P0,20H指令,把P0口的状态读到20H寄存器,然后判断20H的数值就好了。
再问: 我用的是C语言,会变学的不是很好。我是把Io口作为读入端的,用来检测外部是否有低电平。
还有一个问题,我感觉是不是我的两个电路共的接地端不一至造成的。因为我的单片机是电脑供电的,接地段是单片机的GND,红外光电开关时实验室的直流源供电,接地段是电源的负极,最后的电路相当于是将直流源的负极和单片机的GND相连,光电开光的输出和I/O口相连。这样有影响吗?回复
再答: 共地是不影响的,不共地和电源的话,就是光电隔离的电路,这样会更好的。我估计你还是程序中的处理方式不对。C语言我不懂,所以帮不到你了。只能等懂C语言的高手来了。
再问: 您好,很感谢您的讲解。之前我是置为1的,但是没效果,后来换成了0.既然置为1,有低电平的话就会亮,那么我置为0的话,有高电平输出,他不就会从暗到亮吗?我就是么想的!
再答: 你说的“会亮”,指的是什么会亮呢?你是把那个口设成读入得,不是输出的呀!例如你设的是P0.0口,你只需要一条MOV P0,20H指令,把P0口的状态读到20H寄存器,然后判断20H的数值就好了。
再问: 我用的是C语言,会变学的不是很好。我是把Io口作为读入端的,用来检测外部是否有低电平。
还有一个问题,我感觉是不是我的两个电路共的接地端不一至造成的。因为我的单片机是电脑供电的,接地段是单片机的GND,红外光电开关时实验室的直流源供电,接地段是电源的负极,最后的电路相当于是将直流源的负极和单片机的GND相连,光电开光的输出和I/O口相连。这样有影响吗?回复
再答: 共地是不影响的,不共地和电源的话,就是光电隔离的电路,这样会更好的。我估计你还是程序中的处理方式不对。C语言我不懂,所以帮不到你了。只能等懂C语言的高手来了。
51单片机怎么检测不到外加电压的变化
太阳能热水器水温水位信号单片机怎么检测,温度是电阻变化,但没发现水位的电阻有变化,
PN结势垒电容随外加电压变化的问题,
我想做个16*16的LED点阵,用51单片机控制,请问是否要外加电压电源已达到亮度,是不是还要加上拉电阻.
设计一个烟雾报警器电路,用51单片机,气体传感器用MQ-2,MQ-2电阻值的怎么转换成电压的变化,求电路图~
电动车漏电只能检测到电压 检测不到电流
求个电压检测电路,要测试一下点的电压,电压变化为 24V.
51单片机的 pc值怎么算?
铜怎么才能让金属探测器检测不到?
AD转换后怎么计算出温度值?温度检测电路:电桥电路+运算放大电路,输出电压输入到单片机内进行AD转换.
单片机复位电路,他的复位电路就是靠给电容充电时候,电阻的电压变化?
如何检测羧酸混凝土外加剂的固含量