當前位置:編程學習大全網 - 編程語言 - 單片機編程註釋分離

單片機編程註釋分離

ORG 00H程序的起始地址由單片機硬件決定。

AJMP START跳轉到START。進入程序段

開始:MOV SP,#06H向SP指針寄存器發送6。

MOV·SCON,#50H發送50H到SCON註冊。

MOV TMOD,#20H發送20H到TMOD寄存器,在那裏設置定時器模式。

MOV TH1,#0E6H向TH1寄存器發送0E6H,其中設置了定時器的定時參數。

SETB TR1啟動計時器1進行計數。

MOV 30H,#0FFH向30H緩沖器(RAM)發送0FFH。

讀取:MOV A,P1將單片機的P1口讀入累加器。

CJNE A,30H,SAVE比較累加器和30H緩沖區是否相等,如果不相等,跳轉保存,如果相等,執行下壹句。

JMP讀取跳轉到讀取段。

保存:MOV 30H,A將累加器A的數據存入30H緩沖區。

MOV SBUF,A將累加器A的數據送入UART串行緩沖器SBUF並發送出去。

WAIT:JBC TI,READ判斷TI標誌是否為1,如果是1,跳轉到READ段。

AJMP等待跳轉到等待段。

結束程序結束

這是壹個按鍵檢測程序,當檢測到壹個按鍵時,數據通過UART串口發送出去。前面有初始化,UART串口參數設置,定時器1作為波特率發生器。具體的波特率與晶體振蕩器有關。看本書就知道怎麽算了!這也是調試的常用手段,通過串口查看具體數據。

2、

ORG 00H程序的起始地址由單片機硬件決定。

AJMP START跳轉到START。進入程序段

開始:MOV SP,#06H向SP指針寄存器發送6。

MOV·SCON,#50H發送50H到SCON註冊。

MOV TMOD,#20H發送20H到TMOD寄存器,在那裏設置定時器模式。

MOV TH1,#0E6H向TH1寄存器發送0E6H,其中設置了定時器的定時參數。

SETB TR1啟動計時器1進行計數。

讀取:JB RI,UART判斷RI是否為1,如果是1,跳轉到UART段。

AJMP READ跳轉到READ段。

UART:MOV A,SBUF從SBUF獲取UART數據,並發送到累加器A

MOV P1,A將累加器A的數據發送到P1端口。

CLR RI清除RI標誌,

AJMP READ跳轉到READ段。

結束程序結束

這個程序是讀取UART接收到的數據的程序,接收到的數據可以通過P1口輸出。

這兩個程序壹個是通過UART發送鍵值,壹個是通過P1口接收UART數據並輸出。

建議直接學習C語言,沒有這些跳轉指令,學習會很輕松!

  • 上一篇:智能可穿戴哪個品牌好
  • 下一篇:大哥 急切啊 數控機床主軸變頻驅動控制部分的設計
  • copyright 2024編程學習大全網