51单片机测量脉冲周期/频率并加以计算、显示

问题遇到的现象和发生背景

51单片机测量脉冲周期/频率并加以计算、显示

img

效果:1. 第一个4位数码管显示一个B周期内A的周期个数,显示商即可;
2. 第二个4位数码管显示一个B高电平宽度内包含A的周期个数,精确到小数点后一位;
3. 非数码管显示,变为1602显示,上行XS:(数值),下行ZT:(数值)。
要求:51/52单片机、汇编语言优先、效果1可显示到千位,效果2可显示100内即可、程序多注释。欢迎解答~
精度高一些,如测量高电平宽度时,先一段低电平,跳到高时开始计时,再到低时结束;测量周期时,多个周期后求平均值。

谢邀。
对于题主的一些描述,我不太理解。
1.效果1中“显示商即可”,这是什么意思?
2.效果2中,“精确到小数点后一位”,个数只能是整数,如果要出现小数,那么就要对最后那个不完整的周期进行监测,程序很复杂。
3.效果3中“变为1602显示”,而上面的效果都是写的数码管。
如果单看“要求”这一段,我觉得应该是,测量一个控制周期内脉冲数,以及该周期内,高电平时,计量的脉冲数。
最后,建议用C语言。

先得到A的周期TA,在获取B的高低电平时间Th和TL,然后计算(Th+TL)/TA 显示到第一个4位,计算Th/TA 显示到第二个四位,第三问1602显示就是显示变一下,数据是一样的

51单片机测量脉冲周期
https://blog.csdn.net/little_white__/article/details/73732674