keil软件使用
在keil软件使用的过程中,我设置的晶振频率是12MHz,用的是软件仿真,在进行debug调试的时候,如下图所示:
其中的states指的是状态的个数吗?
如果是状态周的个数的话,那时间算得就不对啊。12MHz的晶振,时钟周期是1/12us,一个状态周期等于两个时钟周期,所以时钟周期是1/6us,再乘上状态的个数,时间也不等于下面的时间sec(秒)。劳烦过来人帮忙解答该以后,不胜感激,谢谢!
[解决办法]
states 就是你所指的状态周期的个数,也就是机器周期的个数。如果是51系列单片机的话,一般一个状态周期等于12个时钟周期,所以机器周期就是1US,每条指令有1个周期,2个周期,3个周期不等的,所以算过来,时间久等于下面的时间了。
[解决办法]
这个写的是states,但实际值是机器周期,这个我以前也试过。
现在许多扩展51单片机已经不再遵循"1个机器周期==6个状态周期==12个时钟周期"定律了,所以我觉得不必太在意这个参数。
如果楼主一定要求个解释的话,建议直接给Keil公司发个邮件问一下。
[解决办法]
恩,有些纯软件的东西就无所谓了,反正你最好写得程序还是要下载的单片机里面了,最好的办法就是写个最小的方波,然后用示波器测试下就知道了。至于Keil里面怎样你真的要较真的话就只能去公司问问了!