我使用汇编语言编程,带有一个8051微控制器,其上有一个24.5 MHz晶振,时钟周期除以12。
我正忙着一个程序,我必须用LED显示信号列车。因此,我必须在延迟中编程以实现必要的占空比和周期,但是,我无法计算每个周期完成所需的时间。
有人可以帮我解决这个问题吗?
谢谢。
答案 0 :(得分:0)
需要计算机器周期。机器周期是显示执行一条指令的时间的术语。(像NOP这样的简单指令,只需要一个机器周期来执行其他指令需要一个或多个指令取决于指令执行)
你的晶体频率是Fctl = 24.2MHz
首先,将Fctl分为12个部分。 Fctl / 12 = 24.2MHz / 12 = 2.0167MHz
现在这是您的机器频率。你的机器周期是 1 /机器频率= 1 / 2.0167MHz = 0.4959uS
这就是你的机器周期。当你输入一条NOP指令时,它会给你0.4959uS的延迟。