微控制器定時計數器輸出預設口是P1 0嗎

時間 2022-08-16 19:15:20

1樓:匿名使用者

不是,p1.0和p1.1的第二功能時t2定時器的輸入,作為輸出只是普通的io,與定時器沒有關係。

從提問中可以看出你現在比較熟悉彙編,這是一個好的開始,彙編熟悉後再轉學c程式設計,你會發現如虎添翼,相反先c入門,那麼對微控制器這座大廈而言,就有空中樓閣的味道了。

2樓:

一般的通用i/o,做輸入輸出用的,都是用p1口。p0一般做資料/地址線,不用於通用io口。可以通過組合語言寫完啟動**後呼叫c入口程式,也可以全部用匯編寫,不過c寫的程式設計效率要高些。

p1.0輸出方波很容易啊,通過定時器定時,產生定時中斷後,在中斷服務程式裡面把p1.0取反就行了,這裡的輸出方波只是通過引腳輸出相應電平而已,p1口任何引腳都行。

3樓:匿名使用者

我剛學微控制器不久,定時器計數器沒有什麼輸出的,只是一個計數功能,c語言相對更好移植,層次結構好,更容易組織,c語言經過編譯還是要轉化組合語言,學習學習。。。

4樓:德人山莊

暫存器分為方向暫存器和資料暫存器,一般i/o口的輸入輸出由方向暫存器的高底電平設定

至於你說的題目,比如p1.0口是某個模組的資料暫存器,其輸出,我們不加設定,僅僅寫讀取該位資料的程式就好

微控制器如何利用定時/計數器使p1.0口輸出週期為10ms的脈衝? 5

5樓:匿名使用者

org 0000h

ljmp main

org 000bh

ljmp t0isr

org 0030h

main:

mov tmod,#02h

mov th0,#6

mov tl0,#6

setb tr0

setb et0

setb ea

mov r2,#10

sjmp $

t0isr:

djnz r2,t0e

cpl p1.0

mov r2,#10

t0e:

retiend

6樓:超左右搖擺

只要讓p1.0口輸出5ms高電平然後5ms低電平就可以了。自己看看書吧

7樓:匿名使用者

只要讓p1.0口輸出5ms高電平然後5ms低電平就可以了

求微控制器彙編程式:用定時器/計數器在p1.0口線上產生週期為500微秒,佔空比為2:5的連續矩形波?

8樓:匿名使用者

;500us週期方抄波 ,佔空比 2:5 。即高電平bai200us,低du電zhi平300usorg 0000h

ajmp start

org 000bh

ajmp t0int

org 0030h

start: mov sp,#60h

setb ea

setb et0

mov tmod,#01 ;t0為工作

方式1clr p1.0 ;先低電平

mov th0,#0feh

mov tl0,#0d4h ;300us 定時daosetb tr0;啟動定時

ajmp $

t0int: cpl f0

cpl p1.0

jb f0,high1

low0: mov th0,#0feh

mov tl0,#0d4h

reti

high1: mov th0,#0ffh

mov tl0,#38h ;200us 定時retiend

微控制器,用定時器中斷方式輸出週期性方波,在p1.0口輸出一個週期為1ms的方波

9樓:匿名使用者

週期1ms,定時器應為500us定時。反覆求反就是1ms方波

10樓:ta戀雪

先把p1.0置1,然後定時器1ms定時,時間到置低,方波就出來了

用微控制器定時計數器值p1.0埠上產生一個10khz的方波。 50

編寫一段彙編程式,實現p1.0口輸出週期為20ms的方波(用微控制器定時器t1採用定時方式1)各位高手幫幫忙

11樓:做而論道

晶振頻率選用 12mhz。

如下程式即可:

org 0000h

mov tmod, #10h

setb tr1

loop:

mov th1, #0d8h

mov tl1, #0f0h

cpl p1.0

wait:

jbc tf1, loop

sjmp wait

end這些就夠用了。

12樓:匿名使用者

org 0000h

ljmp main

org 001bh

ljmp t1isr

org 0030h

main:

mov tmod,#10h

mov th1,#high(65536-10000)mov tl1,#low(65536-10000)setb tr1

setb et1

setb ea

sjmp $

t1isr:

clr tr1

mov th1,#high(65536-10000)mov tl1,#low(65536-10000)setb tr1

cpl p1.0

retiend

stc11f60xe微控制器定時器/計數器2用於計數模式,計數p1.0口發出的脈衝,求c程式,高手幫幫忙

13樓:匿名使用者

中斷中你還需要把wake_clko暫存器配置一下,關閉p1.0的clkout2功能,還原到正常的io模式,才能保證p1=0xff有效

利用微控制器的定時器t0工作於方式1,實現從p1.0引腳上輸出週期為10ms的連續方波,設系統時鐘為

14樓:匿名使用者

因為週期為10毫秒,定時器中斷方式,所以初值應該為:65536-(10/2)*1000=65536-5000

th0=(65536-5000)/256

tl0=(65536-5000)%256

程式如下:

org 0000h

ljmp main

org 000bh

ljmp t0isr

org 0030h

main:

mov tmod,#01h

mov th0,#high(65536-5000)mov tl0,#low(65536-5000)setb tr0

setb et0

setb ea

sjmp $

t0isr:

clr tr0

mov th0,#high(65536-5000)mov tl0,#low(65536-5000)setb tr0

cpl p1.0

retiend

51微控制器定時計數器工作方式疑點

65536 x是模值減去計數個數得到計數初值 至於取整還是取餘,可以從十進位制看 如果x是整型變數,x 10整除就是看有幾個10,x 10就是取不足10的那個餘數 2 8 256,10換成256是一樣的。因為你選的是16的計數方式,th0和tlo合起來才是個完整的16位,所以可以說th0為商的話,那...

簡述8051微控制器的定時計數器的四種工作方式的特點

生活如歌 方式0為13位定時計數方式 方式1為16位定時計數方式 為最常用方式 方式2為8位自動重灌初值計數方式 方式3只適用t0,把16位的t0分為兩個8位定時計數器 沙裡波特 對樓上的回答,稍做補充 方式0為13位定時計數方式 計數範圍 0 8192,定時 0 8192us 12mhz晶振時 方...

51微控制器的定時器和計數器分別定時和計數的週期是多長時間,這個脈衝週期有規定嗎

應該每個定時器都是有timrh和timrl,最大計數時間就是timrh timrl 匯流排頻率 時鐘分頻後的頻率 徐志尚 與晶振 工作方式 初值有關 51微控制器,計數器和定時器具體這麼用?計數器記的是誰的脈衝數? 水依若雨 定時器和計數器雖然有定時和技術兩種工作模式,但其本質都是使用加法計數器對脈...