微控制器實驗彙編案例 計數器實驗

2021-10-07 09:36:24 字數 1606 閱讀 8166

一.實驗要求

8031內部定時計數器,按計數器模式和方式1工作,對p3.4(t0)引腳進行計數。使用8031的t1作定時器,50ms中斷一次,看t0內每0.50ms來了多少脈衝,將其數值按二進位制數在74ls273驅動led燈上顯示出來,5秒後再次測試。

二.實驗目的

1.學習8031內部定時/計數器使用方法。

2.進一步掌握中斷處理程式設計方法。

三.實驗電路及連線

p3.4接一計數脈衝( 25模組中的149.06k頻率)。 po0~po7接 l1~l8。 cs273接8300h。

四.實驗說明

1.本實驗中內部計數器起計數器的作用。外部事件計數脈衝由p3.4引入定時器t0。微控制器在每個機器週期取樣一次輸入波形,因此微控制器至少需要兩個機器週期才能檢測到一次跳變。這就要求被取樣電平至少維持乙個完整的機器週期,以保證電平在變化之前即被取樣。同時這就決定了輸入波形的頻率不能超過機器週期頻率。

2.實驗時p3.4對應的連線為149.06khz孔,0.5ms內來了80次(50h)脈衝。

五.實驗程式框圖

org 000bh ;t0中斷入口位址

reti

org 001bh ;t1中斷入口位址

ajmp int_t1

org 0040h

start:

mov sp,#60h

mov tmod,#1dh ;置t1為方式1

;置t0為方式1

,計數方式,

;門控選通位有效

mov tl0,#0h ;計數器清零

mov th0,#0h

mov tl1,#32h ;延時0.50ms常數

mov th1,#0feh

mov r0,#20

;延時 5 秒常數

setb tr0 ;啟動t0

setb et0

setb tr1 ;啟動t1

setb et1

setb ea ;開中斷

sjmp $

int_t1:

push acc

push psw

clr tr1

mov tl1,#32h ;延時0.50ms 常數

mov th1,#0feh

mov r1,tl0 ;儲存計數值

mov r2,th0

mov tl0,#00h ;清計數器

mov th0,#00h

setb tr1

djnz r0,exit

mov r0,#20

;延時 5 秒常數

mov dptr,#8300h ;led位址

mov a,r1

movx @dptr,a ;把計數值在led上顯示

exit:

pop psw

pop acc

reti

end

微控制器實驗彙編 A D轉換實驗

一.實驗要求 利用實驗板上的adc0809做a d轉換器,利用實驗板上的電位器w1提供模擬量輸入。編制程式,將模擬量轉換成二進位制數字量,用發光二極體顯示。二.實驗目的 1 掌握a d轉換與微控制器的介面方法。2 了解a d晶元adc0809轉換效能及程式設計。3 通過實驗了解微控制器如何進行資料採...

微控制器實驗彙編 擴充套件儲存器讀寫實驗

擴充套件儲存器讀寫實驗 一.實驗要求 編制簡單程式,對實驗板上提供的外部存貯器 62256 進行讀寫操作。二.實驗目的 1 學習片外儲存器擴充套件方法。2 學習資料儲存器不同的讀寫方法。三.實驗電路及連線 將p1.0接至l1。cs256連gnd孔。四.實驗說明 1 微控制器系統中,對片外存貯器的讀寫...

微控制器 定時器 計數器

一 簡述 mcs 51系列微控制器內部有兩個16位定時器 計數器,即定時器t0和定時器t1。它們都具有定時和計數功能,可用於定時或延時控制,對外部事件進行檢測 計數等。定時器 計數器是乙個加 1 計數器,來一脈衝即做加1計數,直至暫存器各位全為1,再來一脈衝,計數器回0且使tf0 定時器t0 tf1...