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