微機原理:8253芯片


8253的工作方式

控制字

方式0:中斷方式

方式0

計數(shù)結束時,OUT信號由低變高,可以用作中斷請求。

【寫入控制字】
??OUT立刻變?yōu)榈碗娖?br> 【寫入初值】
??延遲一個時鐘周期開始計數(shù)
【計數(shù)過程】
??1.計數(shù)過程OUT一直保持低電平,直到計數(shù)器為0,OUT端立即變成高電平。
??2.門電路信號GATE為高電平時,計數(shù)器工作;低電平時,計數(shù)器停止工作,但是計數(shù)值不變,如果GATE再次變高,計數(shù)器繼續(xù)工作,GATE在方式0中相當于暫停開關。
??3. 計數(shù)期間,如果從新寫入計數(shù)值,計數(shù)器按照新寫入的初值從新工作,相當覆蓋原初值。
??4. 方式0的計數(shù)初值為一次有效,當完成一次計數(shù)后,若要再次計數(shù)需要從新寫入初值。
【OUT端輸出】
??直到計數(shù)器為0,OUT端立即變成高電平。(可用于計數(shù)結束時,利用產(chǎn)生的高電平向CPU發(fā)起中斷請求)

方式1:可編程單脈沖發(fā)生器

單脈沖
方式1

【寫入控制字】
??OUT端立刻變?yōu)楦唠娖健?br> 【寫入初值】
??計數(shù)器不立即開始工作,需要等待GATE信號出現(xiàn)一個上升沿才開始計數(shù)。
【計數(shù)過程】
??1. 開始計數(shù)時,OUT由高變低,并在計數(shù)時始終保持低電平。從而形成一個負單脈沖的前沿。
??2. 計數(shù)為0時,OUT由低變高,形成負單脈沖的后沿。
??3. 計數(shù)過程中,GATE信號的變化(高變低)不影響計數(shù)過程,但是如果出現(xiàn)GETA上升沿(低變高),則會從初值從新計數(shù),使得OUT輸出的負單脈沖變寬。
??4. 方式1的計數(shù)值一次有效,完成計數(shù)需要從新寫入初值。
【OUT輸出端】
??輸出單脈沖寬度為CLK周期的n倍(n為計數(shù)初值),并僅產(chǎn)生一個負脈沖。

方式2:頻率發(fā)生器(分頻器)

方式2

【寫入控制字】
??OUT變?yōu)楦唠娖健?br> 【寫入初值后】
??GATE高電平為高電平,立刻開始計數(shù)。
【計數(shù)過程中】
??1.OUT保持高電平不變,計數(shù)到1時,OUT產(chǎn)生一個CLK周期的負脈沖。計數(shù)到0時,自動從初值再次計數(shù),實現(xiàn)循環(huán)計數(shù)。
??2.若計數(shù)過程中,GATE變?yōu)榈碗娖剑瑒t暫停計數(shù),待到GATE恢復高電平后,從初值從新開始計數(shù)。
??3.若計數(shù)過程需要改變OUT輸出頻率,可以在計數(shù)的任何時候?qū)懭胄碌某踔?,并不會影響當前計?shù)周期,且會在下一個計數(shù)周期會根據(jù)新的初值開始計數(shù)。
【OUT輸出端】
??OUT端輸出一定頻率的負脈沖序列,負脈沖寬度為固定的一個CLK周期,重復周期為CKL的n倍(n為初值)。

方式3:方波發(fā)生器

方式3

【寫入控制字】
??OUT端變?yōu)榈碗娖健?br> 【寫入初值】
??OUT端立刻變?yōu)楦唠娖剑珿ATE為高電平時,立刻開始計數(shù)。
【計數(shù)過程】
??1.GATE信號為高電平,計數(shù)器工作。
??2.若初值n為偶數(shù),計數(shù)值減到n/2時,OUT端變?yōu)榈碗娖?,直到計?shù)為0,計數(shù)會從初值從新開始計數(shù)。
??3.若n為奇數(shù),OUT端的高電平寬度為(n+1)/2,低電平為(n-1/)2。
??4.計數(shù)過程GATE變?yōu)榈碗娖?,則暫定計數(shù),待到GATE再次有效時,會從初值從新計數(shù)。
??5.允許計數(shù)過程任何時候改變計數(shù)初值,不影響當前計數(shù)周期,且會在下一個計數(shù)周期開始新的初值計數(shù)。
【OUT輸出】
??n為偶數(shù)時,輸出正脈沖負脈沖1:1的方波。
??n為奇數(shù)時,輸出輸出的正脈沖比負脈沖多一個CLK周期。

方式4:軟件觸發(fā)方式

方式4

??方式4和方式0相似,不同點在于方式0結束時,輸出高電平,方式4輸出低電平。
??因為計數(shù)過程中是由軟件把計數(shù)初值裝入計數(shù)器來觸發(fā)的。
【寫入控制字】
??OUT端變?yōu)楦唠娖健?br> 【寫入初值】
??若GATE為高電平,則立即開始計數(shù)。
【計數(shù)過程】
??若GATE變?yōu)榈碗娖?,則停止計數(shù),待到GATE變?yōu)楦唠娖?,則從初值從新計數(shù)。
【OUT輸出】
??計數(shù)值減到0時,輸出一個寬度為CLK周期的負脈沖。

方式5:硬件觸發(fā)方式

方式5

??方式5和方式2相似,不同點在于方式2結束時,自動循環(huán);方式5需要GATE信號才開始進入下一個循環(huán)。
??由GATE上升沿觸發(fā)計數(shù)開始工作。

【寫入控制字】
??OUT變?yōu)楦唠娖健?br> 【寫入初值】
??需要等待一個GATE上升沿,計數(shù)器才開始工作。
【計數(shù)過程】
??允許計數(shù)過程中任何時候改變初值,不影響當前計數(shù)周期,且會在下個周期,從新的初值開始計數(shù)。
??計數(shù)結束時,會自動裝入初值,但并不會自動開始,需要等待GATE信號上升沿才開始計數(shù)。
【OUT輸出】
??輸出寬度固定為一個CLK周期的負脈沖,表示計數(shù)結束。

8253總結

總結
對比

GATE門電路對不同方式的影響
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容