標(biāo)題:
為什么用平時(shí)普通的51程序下載到stc12c5a60s2上,顯示出來(lái)的效果很快呢
[打印本頁(yè)]
作者:
wzwzwwh
時(shí)間:
2016-10-24 21:35
標(biāo)題:
為什么用平時(shí)普通的51程序下載到stc12c5a60s2上,顯示出來(lái)的效果很快呢
為什么用平時(shí)普通的51程序下載到stc12c5a60s2上,顯示出來(lái)的效果很快呢?例如都是點(diǎn)亮LED,都是延時(shí)相同的時(shí)間,但是下載到stc12c5a60s2led閃爍的頻率要快很多?這個(gè)是不是由于stc12c5a60s2處理速度比較快而造成的?
作者:
wuyibin2003
時(shí)間:
2016-10-24 21:41
那是因?yàn)闃?biāo)準(zhǔn)51是12周期 STC是單周期 速度快所以閃爍比較快
作者:
wuyibin2003
時(shí)間:
2016-10-24 21:43
單周期的速度肯定要比12周期的處理速度快
作者:
wzwzwwh
時(shí)間:
2016-10-24 21:44
wuyibin2003 發(fā)表于 2016-10-24 21:43
單周期的速度肯定要比12周期的處理速度快
嗯嗯,多謝啦
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:00
樓上正解!
如果你的顯示節(jié)拍是用時(shí)間中斷做的就看不出來(lái)了。
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:10
CPU從取指、解析、執(zhí)行需要一步步地來(lái)做,這就必須有節(jié)拍。這是必然的設(shè)計(jì)!
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:11
51的設(shè)計(jì)者把以上分成了12節(jié)拍來(lái)完成一條指令過(guò)程。
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:12
本帖最后由 yzwzfyz 于 2016-10-26 00:12 編輯
所有智能IC都是這個(gè)思路方案。
后來(lái)者更高明:設(shè)想在執(zhí)行第一條指令的時(shí)候,能不能將第二條,甚至第三、四條準(zhǔn)備好,甚至提前完成其中的部分作業(yè)。這就是現(xiàn)在的流水取指方式。STC就是這樣的。
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:13
STC雖然指令系統(tǒng)與傳統(tǒng)51一樣。但運(yùn)行速度會(huì)快一點(diǎn)。
流水取指的方式,對(duì)于用硬延時(shí)的方式來(lái)說(shuō),延時(shí)的時(shí)間計(jì)算起來(lái)會(huì)麻煩一點(diǎn)。甚至?xí)皇谴_定值!
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:21
依序執(zhí)行的指令,因下條指令是確定的,所以好流水(先做處理),但條件轉(zhuǎn)移命令就會(huì)產(chǎn)生分支,如果連續(xù)條件轉(zhuǎn)移則分支會(huì)很多,CPU無(wú)法預(yù)計(jì)下一步是要做哪條指令(資源有限,否則太復(fù)雜,未來(lái)也許會(huì)有解決方案),在這種情況下,CPU就按傳統(tǒng)的12節(jié)拍運(yùn)行。
對(duì)于跳與不跳就會(huì)有可流水,不可流水之分。執(zhí)行的時(shí)間就可能有差別。
作者:
yzwzfyz
時(shí)間:
2016-10-25 08:26
通常在單一延時(shí)程序中,程序比較單調(diào),條件轉(zhuǎn)移不多,且每次轉(zhuǎn)移的時(shí)機(jī)都是確定的。即條件是確定的,所以每次調(diào)用被延時(shí)的時(shí)間是確定的。
作者:
累不死的狗
時(shí)間:
2019-1-4 01:39
這是因?yàn)槭莾煞N單片機(jī)的型號(hào)不一樣,兩種單片機(jī)使用的起振晶振也不一樣
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1