日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实验六、8254定时/计数器实验

發(fā)布時間:2023/12/29 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实验六、8254定时/计数器实验 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

實(shí)驗(yàn)六、8254定時/計(jì)數(shù)器實(shí)驗(yàn)

1、實(shí)驗(yàn)?zāi)康?/h4>
  • 了解定時計(jì)數(shù)器8254的初始化及用法。
  • 了解定時計(jì)數(shù)器8254各種工作方式的特點(diǎn)。
  • 2、實(shí)驗(yàn)內(nèi)容

    編寫程序,使8254的計(jì)數(shù)器1 分別工作在方式 0、1、2、3下,在示波器上觀察各工作方式下 OUT1 的輸出波形。

    3、實(shí)驗(yàn)原理

    8253/8254 是 Intel公司生產(chǎn)的通用定時/計(jì)數(shù)器。8254是在8253的基礎(chǔ)上稍加改進(jìn)而推出的改進(jìn)型產(chǎn)品,它們的引腳定義與排列、硬件組成等基本上是相同的。因此 8254 的編程方式與 8253 是兼容的,凡是使用 8253 的地方均可用 8254代替。 相對 8253,8254芯片的改進(jìn)之處包括:

  • 允許最高計(jì)數(shù)脈沖(CLK)的頻率不同。8253的最高頻率為2MHz,而 8254允許的最高計(jì)數(shù)脈沖頻率可達(dá) 10MHz。
  • 8254每個計(jì)數(shù)器內(nèi)部都有一個狀態(tài)寄存器和狀態(tài)鎖存器,而8253沒有。
  • 8254有一個讀回命令字,用于讀出當(dāng)前減 1 計(jì)數(shù)器CE的內(nèi)容和狀態(tài)寄存器的內(nèi)容,而8253沒有此讀回命令字。
  • 8254的工作方式如下述:
    (1)方式0:計(jì)數(shù)到0結(jié)束輸出正躍變信號方式。
    (2)方式1:硬件可重觸發(fā)單穩(wěn)方式。
    (3)方式2:頻率發(fā)生器方式。
    (4)方式3:方波發(fā)生器。
    (5)方式4:軟件觸發(fā)選通方式。
    (6)方式5:硬件觸發(fā)選通方式。

    8254 的控制字有兩個:一個用來設(shè)置計(jì)數(shù)器的工作方式,稱為方式控制字;另一個用來設(shè)置讀回命令,稱為讀回控制字。這兩個控制字共用一個地址,由標(biāo)識位來區(qū)分。控制字格式如表 1、表 2 所示。

    4、實(shí)驗(yàn)記錄

    (博主做完實(shí)驗(yàn)后,將一些需要理解的點(diǎn)在此記錄一下。)

    引腳說明:每個計(jì)數(shù)器都有CLK,OUT,GATE三個接口
  • CLK 連接外部時鐘,外部時鐘信號的每次輸入都會使計(jì)數(shù)值減一。(假設(shè)外部時鐘頻率為 x Hz,則計(jì)數(shù)器初值設(shè)置為 x 可以作成計(jì)時1秒的計(jì)數(shù)器)
  • OUT 是計(jì)數(shù)器的輸出端,每當(dāng)計(jì)數(shù)器歸零時,會按工作方式輸出不同的信號。(連接到AD轉(zhuǎn)換器可以在示波器里觀察到波形)
  • GATE 是由外部輸入的門控制端,用于控制和啟動計(jì)數(shù)器的工作。(在某些工作方式下用于控制啟動計(jì)數(shù)器,在某些工作方式下用于控制允許或禁止計(jì)數(shù))
  • 工作方式:基礎(chǔ)實(shí)驗(yàn)要求熟悉使用工作方式0~3
  • 方式0:寫入計(jì)數(shù)器初值,計(jì)數(shù)器工作期間維持輸出低電平,計(jì)數(shù)器歸零后維持輸出高電平。如果在計(jì)數(shù)器歸零后重新賦予計(jì)數(shù)器初值,則會讓計(jì)數(shù)器重新進(jìn)入工作狀態(tài)。(無須啟動,GATE置零時禁止計(jì)數(shù))
  • 方式1:寫入計(jì)數(shù)器初值,啟動計(jì)數(shù)器,計(jì)數(shù)器工作期間維持輸出低電平,計(jì)數(shù)器歸零后維持輸出高電平。如果在計(jì)數(shù)器歸零后重新賦予計(jì)數(shù)器初值,則需要重新啟動計(jì)數(shù)器才能讓計(jì)數(shù)器重新進(jìn)入工作狀態(tài)。(GATE出現(xiàn)0->1上升沿時啟動計(jì)數(shù))
  • 方式2:寫入計(jì)數(shù)器初值,計(jì)數(shù)器工作期間維持輸出高電平,當(dāng)計(jì)數(shù)到1時,輸出低電平,當(dāng)計(jì)數(shù)到0時,重新填充初值,并開啟下一輪計(jì)數(shù)。(無須啟動,GATE置零時禁止計(jì)數(shù))
  • 方式3:寫入計(jì)數(shù)器初值,計(jì)數(shù)器會輸出近似1:1的方波,計(jì)數(shù)器歸零后,會自動重新填充初值,并開啟下一輪計(jì)數(shù)。(無須啟動,GATE置零時禁止計(jì)數(shù))
  • 擴(kuò)展:計(jì)數(shù)器串聯(lián)(降頻)

    已知計(jì)數(shù)器的CLK引腳輸入的信號會讓該計(jì)數(shù)器的計(jì)數(shù)值減一,所以將計(jì)數(shù)器1CLK和(工作方式3的)計(jì)數(shù)器0OUT相接時,可以實(shí)現(xiàn) “由計(jì)數(shù)器0充當(dāng)計(jì)數(shù)器1的CLK輸入時鐘“ 的效果。(假設(shè)計(jì)數(shù)器0計(jì)時1秒,那么計(jì)數(shù)器1的計(jì)數(shù)值將每秒減1)

    5、代碼記錄:

    A8254 EQU 0600H ;8254的計(jì)數(shù)器0地址 B8254 EQU 0602H ;8254的計(jì)數(shù)器1地址 C8254 EQU 0604H ;8254的計(jì)數(shù)器2地址 M8254 EQU 0606H ;8254的控制寄存器地址 CODE SEGMENTASSUME CS:CODESTART:;MOV AL,30H ;timer0 work on mode 0;MOV AL,32H ;timer0 work on mode 1;MOV AL,34H ;timer0 work on mode 2MOV AL,36H ;timer0 work on mode 3MOV DX,M8254OUT DX,AL MOV DX,A8254 ;因?yàn)檫B接到18.432kHz的時鐘上,所以2400H剛好是0.5秒的計(jì)時MOV AL,00HOUT DX,ALMOV AL,24HOUT DX,AL;MOV AL,70H ;timer1 work on mode 0;MOV AL,72H ;timer1 work on mode 1MOV AL,54H ;timer1 work on mode 2;MOV AL,56H ;timer1 work on mode 3MOV DX,M8254OUT DX,AL MOV DX,B8254MOV AL,03H ;三分頻OUT DX,ALLP: JMP LP ;在循環(huán)里等待并觀察計(jì)數(shù)器工作CODE ENDSEND START

    總結(jié)

    以上是生活随笔為你收集整理的实验六、8254定时/计数器实验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。