找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2705|回复: 6
收起左侧

51单片机简单编程问题,检测光电开关输入信号

[复制链接]
ID:518441 发表于 2019-5-14 22:44 | 显示全部楼层 |阅读模式
5黑币
检测光电开关输入信号,输入信号为高低电平。

也就是检测到高电平并维持一段时间,程序怎么写?


个人有想法是用中断是可以,但是51外部中断只有两个,所以求教能用其他方法吗?

回复

使用道具 举报

ID:123289 发表于 2019-5-15 18:33 | 显示全部楼层
STC的51外部中断不止两个(引脚也可以中断)。
回复

使用道具 举报

ID:515908 发表于 2019-8-6 14:38 | 显示全部楼层
定义一个IO口;  检测高低电平
回复

使用道具 举报

ID:382826 发表于 2019-8-6 15:55 | 显示全部楼层
程序的主循环用定时器设计成每0.5秒一次,进入主循环后检测是不是高电平,如果是高电平标志位加一,否则标志位清零。标志位累加到10就是5秒。
回复

使用道具 举报

ID:542209 发表于 2019-8-6 17:31 | 显示全部楼层
如果主函数有别的程序要走 实时检测的话只能用外部中断吧 ,要是光电开关相对位移的速度不够快的话 其实定时器中断检测也是可以的
回复

使用道具 举报

ID:388197 发表于 2019-8-6 21:50 | 显示全部楼层
这个找一个有PCA模块的51,看下手册里的例程,略微修改下就可以了.
回复

使用道具 举报

ID:47286 发表于 2019-8-7 13:30 | 显示全部楼层
你算算你要检测的信号间隔 频率是多少 再看看精度要求有多高 不是特别高的频率 不是特别高的精度要求 普通IO一样可以检测 不一定非用中断
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表