返回信息流最近小学期,想要实现通过蓝牙控制继电器工作,在用CP2102USB转TTL调试时,发现程序始终没有进入中断,单片机没有收到PC发送的数据,检查了初始化等,发现没有什么问题,求大神指导~~程序是用汇编编写的
代码如下:
VAL_US equ .249
VAL_MS equ .200
;***********************************
STATUS equ 3h
Z equ 2h
INTCON equ 0bh
PORTC equ 07h
TRISC equ 87h
TRISD equ 88h
PORTD equ 08h
RP0 equ 5h
PIR1 equ 0ch
PIE1 equ 8ch
RCSTA equ 18h
TXSTA equ 98h
SPBRG equ 99h
RCREG equ 1ah
TXREG equ 19h
GIE equ 7
PEIE equ 6
RCIF equ 5
RCIE equ 5
W_TEMP EQU 20H
PCLATH_TEMP EQU 25H
STATUS_TEMP EQU 30H
PCLATH EQU 0AH
;**************************************
count equ 0x70
count_ms equ 0x71
;**************************************
ORG 0X0000
GOTO Startup
ORG 0x0004
;*****************中断程序*********************
MOVWF W_TEMP
SWAPF STATUS,W
CLRF STATUS
MOVWF STATUS_TEMP
MOVF PCLATH,W
MOVWF PCLATH_TEMP
CLRF PCLATH;**********************保护现场
BSF PORTC,0
BCF PIR1,RCIF
MOVF PCLATH_TEMP,W;***************************恢复现场
MOVWF PCLATH
SWAPF STATUS_TEMP,W
MOVWF STATUS
SWAPF W_TEMP,F
SWAPF W_TEMP,W
;***************初始化***********************
Startup
bsf STATUS,RP0
BCF TRISC,0
bsf TRISC,6
bsf TRISC,7
MOVLW 00H
MOVFW PORTC
bsf INTCON,GIE
bsf INTCON, PEIE
movlw 0X19
movwf SPBRG
movlw 0x24
movwf TXSTA
bsf PIE1, RCIE
BCF PIR1,RCIF
bcf STATUS, RP0
movlw 0x90
movwf RCSTA
;**************************************
main
call delay_ms
call delay_ms
goto main
;**************************************
delay_ms:
movlw VAL_MS
movwf count_ms
loop_ms call delay_us
decfsz count_ms,f
goto loop_ms
return
;**************************************
delay_us:
nop
movlw VAL_US
movwf count
loop_us nop
decfsz count,f
goto loop_us
return
end
;**************************************
这是一条镜像帖。来源:北邮人论坛 / circuit / #26623同步于 2016/9/7
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Circuit机器人发帖
PIC16F877蓝牙串口通信问题
sunze
2016/9/7镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复