<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > C8051F320-時(shí)鐘和4in1八段管

C8051F320-時(shí)鐘和4in1八段管

作者: 時(shí)間:2012-08-16 來(lái)源:網(wǎng)絡(luò ) 收藏
包含一個(gè)內部振蕩器,也可以采用其他方式提供振蕩。手頭沒(méi)有任何元器件,所以只考慮使用內部振蕩器。

一、設定

系統復位時(shí),默認使用內部振蕩器作為系統,出廠(chǎng)前已經(jīng)將基頻定為12MHZ,可以根據需要對其進(jìn)行分頻操作。

分頻方法: 寄存器OSCICN 最低兩位D1D0的值決定了分頻數,00~11分別為8分頻、4分頻、2分頻、不分頻。

此外,D7=1表示內部振蕩器使能,反之禁止內部振蕩器

D6=1內部振蕩器頻率準備好標志

D5=1強行掛起內部振蕩器

寄存器OSCICL 內部振蕩器校準,D4~D0的數值決定了校準后的頻率偏差,計算方法由如下公式?jīng)Q定:


點(diǎn)擊瀏覽下一頁(yè)

第二項的分母為基準頻率,第三項為D4~D0,浮動(dòng)范圍0~31,根據這個(gè)公式,當基準設置為12M時(shí),能夠設置的偏差很小。

△T=0.0025×0.083us×(0~31)=0 ~ 0.0064325 us

以12Mhz為例,12M對應的周期為0.0833us,加上該偏差為0.0897625us,對應頻率為11.14M。

也就是說(shuō),當基準頻率為12 Mhz時(shí),最多可以調整為11.14M

以此類(lèi)推。2分頻時(shí),6Mhz,最多可以5.57M

4分頻時(shí),3Mhz,最多可以2.78M

8分頻時(shí),1.5Mhz,最多可以1.39M

二、的一點(diǎn)小收獲

偶然發(fā)現自己以前寫(xiě)顯示程序實(shí)在是太老土了,display()鐵打不動(dòng)就是選一個(gè)管,送個(gè)段碼,延時(shí),選下一個(gè)管,段碼,延時(shí),再選下一個(gè)管。。。 這樣一來(lái)顯示程序必定要消耗大量的時(shí)間在顯示程序上。當系統時(shí)序要求高時(shí),這種寫(xiě)法根本就是自殺行為。

正確方法應該是,設置定時(shí)器在一個(gè)足夠小的時(shí)間上,比如10ms,利用一個(gè)變量保存中斷的次數。每次進(jìn)入中斷,根據(變量%4)的值,來(lái)驅動(dòng)一個(gè)管顯示數字,下一次中斷時(shí)切換下個(gè)管,以此類(lèi)推。。

三、F320內部定時(shí)/計數器的使用

芯片內部有4個(gè)定時(shí)計數器,其中T0T1與51兼容,T2T3只能定時(shí)不能計數,但可以實(shí)現16位自動(dòng)重裝計數值。

寄存器TMOD TH0 TL0 TH1 TL1 以及T0T1相應的啟停位中斷位不變。

新增部分:

1、CKCON 控制器 復位值00H

D7D6控制T3高低位的時(shí)鐘源,1為選擇系統時(shí)鐘,0為用戶(hù)設定。

D5D4控制T2高低位的時(shí)鐘源,1為選擇系統時(shí)鐘,0為用戶(hù)設定。

*如果設置為單個(gè)16位定時(shí)器,則D5D7無(wú)效

D3D2作用類(lèi)似,分別控制T1T0的時(shí)鐘源,1為系統時(shí)鐘,0為分頻時(shí)鐘,默認為分頻時(shí)鐘。其分頻系數由D1D0決定,

00——12分頻 01——4分頻 10——48分頻 11——8分頻

2、定時(shí)器T2

和T0做個(gè)對照:

TH0 —— TMR2H TL0 —— TMR2L

TMOD —— TMR2CN (D4D3決定T2工作方式)

TF0 —— TF2H(16位時(shí),H起作用)/TF2L ET0 —— IE.5 TR0 —— TR2(雙8位時(shí),只能控制高八位定時(shí)器,低八位永遠工作)

TF2LEN =1 低八位時(shí)鐘中斷允許位

TMR2RLH TMR2RLL 專(zhuān)用于高低八位的計數值重載

設為2個(gè)八位時(shí)鐘時(shí),共用一個(gè)中斷,必須在中斷程序中檢查對應的標志位才能確定是哪一個(gè)時(shí)鐘計數到,且標志位必須手動(dòng)清零

另有usb起始幀捕捉模式,暫時(shí)不研究

細節: TMR2H 控制字 D7D6 為T(mén)F2H 、TF2L,中斷標志

D5為 TF2LEN,定時(shí)器2低字節中斷允許位

D4 為T(mén)2SOF 沒(méi)研究那部分,應該給0,表示禁用

D3 為T(mén)2SPLIT 1表示雙8位,0表示單16位,均可自動(dòng)重載計數值

D2 為T(mén)R2,高八位時(shí)鐘啟動(dòng)(16位時(shí)鐘不知道怎么啟動(dòng)。。。。)

D1無(wú)用D0 為T(mén)2外部時(shí)鐘選擇,需要與上面的CKCON對應,沒(méi)研究。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: C8051F320 時(shí)鐘 八段管

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>