本帖最后由 wsmysyn 于 2018-5-26 10:06 编辑
这个片子是4T的8051,如果CPU用48MHz的话,实际相当于单个指令周期是12MHz的。。
从汇编代码看一共是5条指令(认为if条件不成立,实际每次循环执行的指令为5条)
JNB --> 4 cycles
LCALL --> 4 cycles
SJMP --> 3 cycles
(TD_Poll汇编指令2条)
CPL --> 2 cycles
RET --> 4 cycles
这样算起来执行一次循环是17 个cycles; 一个方波周期就是 34个cycles
12MHz / 34 ≈ 352.941kHz
没错,非常符合你测到的频率
以前搞过这个片子,直接写机器码到SRAM里,,,
最快的指令就是,, CPL --> 2 cycles; SJMP --> 3 cycles;
方波一周期需要10个 cycles;
12MHz / 10 = 1.2MHz
   
|