微控制器語言求解釋,每一行是什麼意思,謝謝啊,感激不盡

時間 2022-08-31 19:30:10

1樓:匿名使用者

org 0000h;微控制器復位後從這個位址開始執行指令

sjmp start;跳轉到標號為start處繼續執行

org 0030h;表示標號start的位址

start: mov a,#0ffh;將0ffh這個立即數送累加器a

mov p1,a;將累加器a的資料輸出到p0口

mov a,#0feh;將0feh這個立即數送累加器a

loop1: mov p1,a;將累加器a的資料輸出到p1口

lcall delay;呼叫延時子程式

rl a;累加器a的內容左環移1位

cjne a,#07fh,loop1;累加器a的資料與立即數07fh比較,不相等則跳轉到標號loop1

;否則繼續

loop2: mov p1,a;將累加器a的資料輸出到p1口

lcall delay;呼叫延時子程式

rr a;累加器a的內容右環移1位

cjne a,#0feh,loop2;累加器a的資料與立即數07eh比較,不相等則跳轉到標號loop2

;否則繼續

ljmp start;跳轉到標號start處繼續迴圈執行程式

;延時子程式模組

delay: mov r7,#0ffh;立即數送暫存器r7

loop: mov r6,#0ffh;立即數送暫存器r6

djnz r6,$;r6減1不為0在此行自迴圈遞減,直到r6為0繼續

djnz r7,loop;r7減1不為0在跳轉到標號loop處迴圈遞減,直到r7為0繼續

ret;子程式返回

end;偽指令,編寫的程式在這裡結束

2樓:起跑泡泡

第一位朋友回答的很好。

微控制器鬧鐘,微控制器定時鬧鐘程式分布解釋

不知道你原來的系統有哪些資源。至少需要有設定時鐘與鬧鐘的按鍵,遙控鍵也算,以及時間顯示。傳統的方法,一般是加時鐘晶元,最主要的是時鐘晶元要加電池,一般是加鈕扣電池,這樣停電或關機的時候,時鐘繼續跑,不會停。當然,如果你的系統是一直加電的,不用時鐘晶元和電池也沒問題,直接用cpu跑時鐘,就是費點電。但...

微控制器for什麼意思,微控制器c語言中,for 是什麼意思

死迴圈,一般用於等待中斷。for語句的一般形式如下 for 表示式1 表示式2 表示式3 需要執行的語句 其執行過程是 表示式1首先執行且只執行一次 然後執行表示式2,通常都是乙個用於判定條件的表示式,如果表示式2條件成立,就執行 需要執行的語句 然後再執行表示式3 再判斷表示式2,再執行表示式3....

微控制器c語言右移指令怎麼用,微控制器C語言右移指令怎麼用?

吉祥二進位制 在c語言中 代表右移運算子,就相當於 shr 該運算子為雙目運算子,結合方向為從左到右,作用是把乙個整型數的所有位向右移動指定的位數,移動到右邊界之外的多餘二進位制位會被丟棄,並從左邊界移入0。舉例 計算表示式14 2的值。表示式14 2的值為3,因為14 即二進位制的0000 111...

微控制器c語言程式 高手進,微控制器C語言程式 高手進

include define uchar unsigned char define uint unsigned int define ulong unsigned long const uchar code led7code 共陰數碼管 uchar ledbuffer 8 數碼顯示緩衝區 const...

微控制器彙編問題,微控制器組合語言的問題

改好了,可以編譯。但是,程式設計的思路,可能還有錯。org 0000h ljmp main org 0003h ljmp pint0 org 0200h main mov ie,81h cpu開放中斷,int0允許中斷setb it0 外部中斷為邊沿觸發方式mov sp,30h 指標入口位址。set...