sky999 发表于 2023-8-1 13:23:28

有个程序不知道怎么写,求思路

编码器对单片机输出脉冲,速度是1分钟3500转,1转输出600个脉冲,
单片机每收到17个编码器脉冲,输出2个脉冲,
这程序好烧脑,想了很久都不知道怎么写,求思路

qepuemc 发表于 2023-8-2 09:37:26

直接用中断。单片机每接收到17个中断就进行输出操作。中断速度可以满足要求。

huhuan 发表于 2023-12-4 04:45:08

定时器当计算器用

社区闲人 发表于 2023-12-4 07:09:01

类似于电子齿轮比。

飞捷 发表于 2023-12-4 10:18:21

外部中断输入,每收到一个上升沿就中断一次,计数+1,    每次累积17/2 =8.5, 每收到8.5发送一个脉冲,   那么你每累计到4个IO口就高电平,每累计到9个就低电平,每累地到13个就高电平,每累计到17个就低电平,然后清零计数,如此反复。
当然你要考虑每分钟3500转每转600,就是每秒35K脉冲的接收速度和发送脉冲速度,你的晶震的频率不要太低就好了

小白 发表于 2023-12-4 11:59:29

试试用PWM的输入捕获/比较功能,一个通道捕获9,一个通道捕获17,17个脉冲内中断两次,这样单片机就有足够的时间处理数据
页: [1]
查看完整版本: 有个程序不知道怎么写,求思路