這段微控制器程式有16處錯誤的為錯),不知道如何修改,希望高手援手

2022-04-18 07:44:36 字數 2880 閱讀 5206

1樓:匿名使用者

;要註釋,就用;分號,下面的;號後面的都是註釋內容,修改後的程式編譯通過了

org 000h

ljmp start

rs bit p3.7 ;沒有:號

rw bit p3.6 ;沒有:號

e bit p3.5 ;沒有:號

start: mov sp,#40h

mov p3,#0ffh ;f前要加0,後面這麼寫過呀

gain: mov p1,#01h

lcall enable

lcall delay

mov p1,#38h

lcall enable

mov p1,#0fh

lcall enable

mov p1,#06h

lcall enable

mov p1,#80h

lcall enable

mov dptr,#buf1

lcall write1

lcall enable

mov p1,#0c0h

lcall enable

mov dptr,#buf2 ;db表中兩個都是buf1

lcall write1

lcall enable

lcall delay

lcall delay

ajmp gain ;沒有again這個標號

enable:clr rs ;因前面定義有錯

clr rw ;因前面定義有錯

clr e ;因前面定義有錯

lcall delay

setb e ;因前面定義有錯

retwrite1:mov r7,#16h

next: mov a,#00h

movc a,@a+dptr

lcall write2

djnz r7,next ;沒有loop這條指令

retwrite2:mov p1,a

setb rs ;因前面定義有錯

clr rw ;因前面定義有錯

clr e ;因前面定義有錯

call delay

setb e ;因前面定義有錯

retdelay: mov r6,#0ffh

del1: mov r5,#0ffh

del2: djnz r5,del2

djnz r6,del1

retbuf1: db " welcome to " ;20h是空格,可以直接打空格呀

;buf1: db 20h,20h,"welcome",20h,20h,20h,"to",20h,20h,這行保留,用來比較

buf2: db"xidianuniversity" ;重複用buf1end

2樓:匿名使用者

定義變數不用 冒號 帶冒號的是 標號,助記

變數不能重複定義

微控制器流水燈程式 自己編寫的有乙個錯誤怎麼改

3樓:匿名使用者

流水燈程式很簡單的。給你乙個例項,怎麼修改需要你的源**。

#include

#include

#define uchar unsigned charvoid delay(uchar a)

main()}

51微控制器如何用乙個按鍵控制一段程式的執行與停止

4樓:刺友互

1、建立專案檔案。

2、按鍵:s1=p3^2,點亮: led=p1^5。

3、建立c語言主函式。

4、建立迴圈效果,檢測效果。while(1)    {}。

5、選擇輸出的效果。

6、當按下乙個按鍵時,關閉燈,整個程式執行,再按一次,程式停止。

5樓:擺渡人生

樓上方法有誤,假如程式段含有較長延時的 程式比如延時 一小時 那豈不是 按住一小時測能檢測得到?

應該利用 外部中斷 按下開關 進入中斷給予 停止條件狀態使其復位 然後判斷狀態 是否執行 這樣才能保證實時性。。,,

6樓:元飛珍

你這段程式,如果按下按鍵,則程式會進入 while(1) 裡面一直執行,不會跳出,所以除非斷電,無論按什麼按鍵都不會影響燈閃程式。

如果要求k1=0時燈閃爍,k1=1時燈滅掉,可以在delay_ms程式之後改為以下內容:

#define light 1

#define black 2

void main (void)

else key=black;

if(key==light)

else }}

7樓:一萬光年

很簡單if(key==1)

else

微控制器高手進來有分 這個程式定義了幾個指標? *p的含義是什麼? 該程式有什麼作用 5

8樓:

「定義了幾個指標」

定義了乙個指標p。

「*p的含義是什麼」

從p指向的位址取資料。

該程式有什麼作用?

將外部定址空間的0xfff8反覆填充0。我估計程式的本意是將外部定址空間的0xfff8~0xffff以及0x0000、0x0001填充為0,不過寫錯了。

另外貼出的這段**缺一堆分號,還有幾處拼寫錯誤。是不可能編譯成功的。

微控制器的程式儲存器疑問,微控制器程式儲存器的問題

早期的微控制器mcs 8051,片內不帶程式儲存器,需要擴充套件程式儲存器,一般是紫外線可擦除的,有個玻璃窗口 供紫外線照射擦除的,稱為eprom,晶元可重複擦除和寫入.eprom內資料的寫入要用專用的程式設計器,並且往晶元中寫內容時必須要加一定的程式設計電壓 vpp 12 24v,隨不同的晶元型號...

微控制器編寫能延時1秒的子程式,微控制器編寫乙個能延時1秒的子程式

通用辦法,可以類推 delay1s mov r5,08h 1s 1000000us mov r6,0a2h 1000000 2 500000 mov r7,20h 500000用16進製表示為 07a120 所以 r5 07h 1 08h r6 0a1h 1 0a2h r7 20h loop djn...

微控制器問題,微控制器的問題有哪些?

微控制器是指乙個整合在一塊晶元上的完整計算機系統。微控制器是一種積體電路晶元,是採用超大規模積體電路技術把具有資料處理能力的 處理器cpu 隨機儲存器ram 唯讀儲存器rom 多種i o口和中斷系統 定時器 計數器等功能 可能還包括顯示驅動電路 脈寬調製電路 模擬多路轉換器 a d轉換器等電路 整合...