1樓:做而論道
週期是 10us。
50% 的佔空比?
那就是 5us 高電平、5us 低電平。
程式如下:
loop:
setb p1.0
nopnop
nopnop
clr p1.0
nopnop
sjmp loopend
51微控制器晶振頻率12mhz,程式設計實現p1.0輸出頻率為2khz,佔空比為50%的方波,使用定時器
2樓:匿名使用者
#include
#define uchar unsigned charuchar num;
sbit p10=p1^0;
void t0isr() interrupt 3}main()
mcs-51微控制器時鐘為12mhz,利用定時器t0程式設計令p1.0引腳輸出2ms的矩形波程式,要求佔空比係數為1:2。 5
3樓:匿名使用者
2ms週期方
bai波du,1:2佔空比
zhi的話得不dao
到精回確值答
。*** 0000h
ljmp main
*** 000bh
ljmp t0isr
*** 0030h
main:
mov tmod,#02h
mov th0,#246
mov tl0,#246
setb tr0
setb et0
setb ea
setb p1.0
clr a
sjmp $
t0isr:
inc a
cjne a,#67,t01
t01:
jc t02
clr p1.0
cjne a,#200,t03
t03:
jc t0e
clr a
t0e:
reti
t02:
setb p1.0
retiend
4樓:匿名使用者
2ms是高電平時間還是低電平時間的
51微控制器時脈頻率6mhz,要求從p1.0處產生一個頻率100hz,佔空比為1:2。寫出相關程式,急用,正確一定給分
5樓:做而論道
如下即可:
*** 0000h
sjmp beg
*** 000bh
mov tl0, #low(65536 - 2500)mov th0, #high(65536 - 2500)cpl p1.0
reti
beg:
mov tmod, #01h
mov tl0, #low(65536 - 2500)mov th0, #high(65536 - 2500)mov ie, #82h
setb tr0
sjmp $end
6樓:匿名使用者
^#include
#include
sbit p1=p1^0;
void t0isr(void) interrupt 1void main(void)
編譯已通過版。權
微控制器時鐘為12mhz 利用定時器t1 使p1.0引腳輸出2ms 的矩形波,要求佔空比例1:2 試編寫程式
7樓:匿名使用者
#include //12mhz
sbit pause = p1^0;
void main(void)
void timeint(void) interrupt 3 //佔空比例bai1:2
else if(i == 3)
} 不懂得還可以問我zhi……
在中dao斷中的變數專i需是靜態變數static,在中斷結束屬時不釋放,所以樓上的程式是不可以的!
8樓:匿名使用者
^#include //12mhz
sbit p10 = p1^0;
unsigned char i=0;
void main(void)
void t0_int() interrupt 3 //佔空du比zhi例1:2
if(i==3)}
9樓:安子熙丷啦
我想說你寫的tmod=ox10是什麼鬼。應該是0x01吧
51微控制器晶振頻率為12mhz,利用定時器在p1.0口線上產生週期為500毫秒,佔空比為2:5
10樓:匿名使用者
流程圖就不畫了,自己搞定吧,給你編個程
版序。權
#include
#define uchar unsigned charuchar t**t=0,num=0;
sbit p10=p1^0;
void t0isr() interrupt 1}}main()
11樓:匿名使用者
那就是延時200ms和延時300ms呀,自己畫一下流程圖和寫寫**還不行?
定時時間就是計時器溢位值減去計數時間
12樓:匿名使用者
我告訴你一個非常簡單的方法,你有串列埠除錯助手這個軟體嗎?它可以自動生產,不會的話,在問我!
微控制器晶振頻率為12mhz,要求p1.0輸出週期為1ms方波,p1.1輸出週期為3ms矩形波
13樓:匿名使用者
mov tmod,#01h
clr tf0
setb tr0
loop:mov th0,t0初值
復mov tl0,t0初值
loop1:jnb tf0,loop1
cpl p1.0
sjmp loop
t0初值自己
制計算拉,th0為高位,tl0為低位
p1.1的輸出只要將t0的初值和p1.0修改即可!
14樓:匿名使用者
mov r0,#03
mov tmod,#01h
setb tr0
loop: mov th0,#fc
mov tl0,#18
loop1:jnb tf0,loop1
clr tf0
cpl p1.0
djnz r0,loop
mov r0,#03
cpl p1.1
sjmp loop
15樓:匿名使用者
《微控制器原理及應用》這本書上有
51微控制器晶振頻率為12mhz,利用中斷在p1.1口輸出50hz的方波,c語言,哪位大俠幫幫忙,幫忙寫個程式
16樓:匿名使用者
#include
sbit port=p1^1;
void timer0init(void) //10毫秒@12.000mhz
void main()
void timer0() interrupt 0
17樓:紅樓再夢傳奇
若微控制器的晶振頻bai率為
du12mhz,用51微控制器內部zhi定時\\/計數器t0,工作方式dao為1,在專微控制器p1.0口產生週期為20ms的方波
屬,波形佔空比為50%。試解答下列問題: 1) 計算定時器的裝入初值; 2) 用中斷的方式使用定時器,編寫相關程式序
微控制器時間中斷,51微控制器中的定時器中斷是怎麼用的 ?
while 1 在那 會使微控制器停在那 相當於是等待當中斷來臨時 執行中斷 下面那個就是當到50ms的時候 執行計時器1中斷如果沒有那個while 1 則主程式就執行完了 中斷會沒有作用中斷和程式主程式各個執行是同步的 因為你把那個et0開了 則就有時鐘中斷了 當到了50ms 中斷就會自動作用 停...
51微控制器怎麼通過串列埠傳送小數,51微控制器怎麼通過串列埠傳送小數?
方法多的去了,把數字37.5轉換為字串 37.5 傳送可以,用壓縮bcd碼0x37 0x05傳送也可以,多得是。不一定一定要浮點處理。你自己定一個協議,1次發6個資料,選擇其中的2個作為資料,其他作為驗證碼,另一個微控制器接收到就演算法處理 微控制器不支援浮點運算的,你可以申請兩個變數,把整數和小數...
關於51微控制器的中斷,關於51微控制器的中斷。
中斷的概念 cpu在處理某一事件a時,發生了另一事件b請求cpu迅速去處理 中斷髮生 cpu暫時中斷當前的工作,轉去處理事件b 中斷響應和中斷服務 待cpu將事件b處理完畢後,再回到原來事件a被中斷的地方繼續處理事件a 中斷返回 這一過程稱為中斷 二 中斷源 在51微控制器中有5箇中斷源 中斷號 優...