led變量是用來跟蹤程序執行的流程,結果目標板上的LED不停的閃爍,表示程序在不停的重復執行
watch窗口里看到TXREG寄存器里的數據一直沒有沒清空,不知道為什么,按理把數據丟進TXREG后,發送就會開始,發送結束后TEREG就會被清空
;
;TARANS.ASM
;baud rate:9600
;
list p=16F73
#include
trans_c equ 0x20
led equ 0x21
org 0x00
nop
goto initial
initial:
;set baud rate
banksel SPBRG
movlw .129 ;baud rate=9600
movwf SPBRG
;TX init
bcf TXSTA,SYNC
bsf TXSTA,BRGH
banksel TXSTA
bsf TXSTA,TXEN
;RC init
banksel RCSTA
bsf RCSTA,SPEN
trans:
incf led
movf led,w
banksel PORTB
clrf PORTB
movwf PORTB
banksel TRISB
clrf TRISB
banksel TXREG
movlw 0x54
movwf TXREG
end