久久丫精品无码视频|亚洲成人黄色电影|超碰国产在线观看|亚洲Aⅴ综合免费在线|久久青青草原国产精品|极品美女三级片国产无码a|女人的黄色片子综合AV|日韩成人?毛片

技術(shù)熱線: 4007-888-234
設計開發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應用測試 完善的開發(fā)代碼案例庫分享

技術(shù)支持

從全面的產(chǎn)品導入到強大技術(shù)支援服務 全程貼心伴隨服務,創(chuàng)造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競爭力

新聞中心

提供最新的單片機資訊,行業(yè)消息以及公司新聞動態(tài)

基于MCD

更新時間: 2019-03-25
閱讀量:965

基于MCD-DEMO板與PC機的RS232串口通信實例
;利用串口調(diào)試精靈或PC端的超級終端,波特率設為9600,數(shù)據(jù)位8位,
;停止位1位,無校驗位.
;首選從PC機向串串口發(fā)送一個字符如"2",單片機收到后返發(fā)收到這個數(shù)如"2-PIC16"給電腦.
;注意實驗板的設定:S4,S5,S1要全部到OFF,S13第6,7腳一定要ON.
;燒寫時注意振蕩方式XT,WDT要禁止.
   LIST P=16F877
   INCLUDE "P16F877.INC"
;***********************************
__CONFIG _DEBUG_OFF&_CP_ALL&_WRT_HALF&_CPD_ON&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC;
;************************
   CBLOCK  0x20
TXBUFF   :9
TXPTR
TXCOUNT
RXBUFF   :9
PUTPTR
GETPTR
STATUS_TEMP
FSR_TEMP
   ENDC

W_TEMP EQU 7FH
;-------------------------
   ORG 0X000
   GOTO MAIN
;-------------------------
   ORG 0X004
   GOTO INT
   ORG 0X008
INT
   MOVWF W_TEMP
   SWAPF STATUS,W
   CLRF STATUS
   MOVWF STATUS_TEMP
   MOVFW FSR
   MOVWF FSR_TEMP
CHKRXINT
   BANKSEL PIR1
   BTFSS PIR1,RCIF
   GOTO  CHKTXINT
_RDRXFIFO
   BTFSC RCSTA,FERR
   GOTO _FERR_PRO
   MOVLW RXBUFF
   MOVWF FSR
   MOVF PUTPTR,W
   ADDWF FSR,F
   MOVF RCREG,W
   MOVWF INDF
   INCF PUTPTR,F
   MOVLW .7
   ANDWF PUTPTR,F
   BTFSC PIR1,RCIF
   GOTO _RDRXFIFO
   BTFSS RCSTA,OERR
   GOTO ENDOFINT
_OERR_PRO
   BCF RCSTA,CREN
   BSF RCSTA,CREN
   GOTO ENDOFINT
_FERR_PRO
   MOVF RCREG,W
   GOTO ENDOFINT
;------------------------
CHKTXINT
   BSF STATUS,RP0
   BTFSS PIE1,TXIE
   GOTO  ENDOFINT
   BCF STATUS,RP0
   BTFSS PIR1,TXIF
   GOTO  ENDOFINT
   MOVLW TXBUFF
   MOVWF FSR
   MOVF TXPTR,W
   ADDWF FSR,F
   MOVF INDF,W
   MOVWF TXREG
   INCF TXPTR,F
   DECFSZ TXCOUNT,F
   GOTO ENDOFINT
   BSF  STATUS,RP0
   BCF PIE1,TXIE
   BCF STATUS,RP0
ENDOFINT
   CLRF STATUS
   MOVFW FSR_TEMP
   MOVWF FSR
   SWAPF STATUS_TEMP,W
   MOVWF STATUS
   SWAPF W_TEMP,F
   SWAPF W_TEMP,W
   RETFIE
;-------------------
MAIN
   BANKSEL TXSTA
   MOVLW B'00100100'
   MOVWF TXSTA
   MOVLW .25
   MOVWF SPBRG
   CLRF PIE1
   BSF PIE1,RCIE
   CLRF STATUS
   CLRF TXCOUNT
   CLRF GETPTR
   CLRF PUTPTR
   MOVLW B'10010000'
   MOVWF RCSTA
   CLRF INTCON
   BSF INTCON,PEIE
   BSF INTCON,GIE
LOOP
   CALL CHECK_DATA
   GOTO LOOP
;-------------------------
CHECK_DATA
   CLRF STATUS
   MOVF TXCOUNT,W
   SKPZ
   RETURN
   MOVF GETPTR,W
   XORWF PUTPTR,W
   SKPNZ
   RETURN
   MOVLW RXBUFF
   MOVWF FSR
   MOVF GETPTR,W
   ADDWF FSR,F
   INCF GETPTR,F
   MOVLW .7
   ANDWF GETPTR,F
   MOVF INDF,W
   MOVWF TXBUFF+0
   MOVLW '-'
   MOVWF TXBUFF+1
   MOVLW 'P'
   MOVWF TXBUFF+2
   MOVLW 'I'
   MOVWF TXBUFF+3
   MOVLW 'C'
   MOVWF TXBUFF+4
   MOVLW '1'
   MOVWF TXBUFF+5
   MOVLW '6'
   MOVWF TXBUFF+6
   MOVLW 0X0D
   MOVWF TXBUFF+7
   MOVLW 0X0A
   MOVWF TXBUFF+8
   MOVLW .9
   MOVWF TXCOUNT
   CLRF TXPTR
   BSF STATUS,RP0
   BSF PIE1,TXIE
   BCF STATUS,RP0
   RETURN
;---------------------
   END