人狗畜禽COMPANY LIMITED|全是肉的高H文〈男男〉|全篇肉高H秘书被C办公室四爱|全黄H全肉共妻|全黄H全肉短篇禁乱NP慕浅浅|全黄H全肉短篇N男男

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

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

開發(fā)工具

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

技術(shù)支持

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

新品推廣

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

新聞中心

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

基于MCD

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

基于MCD-DEMO板與PC機的RS232串口通信實例
;利用串口調(diào)試精靈或PC端的超級終端,波特率設(shè)為9600,數(shù)據(jù)位8位,
;停止位1位,無校驗位.
;首選從PC機向串串口發(fā)送一個字符如"2",單片機收到后返發(fā)收到這個數(shù)如"2-PIC16"給電腦.
;注意實驗板的設(shè)定: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

福清市| 措勤县| 莱芜市| 乐清市| 元氏县| 临泽县| 全椒县| 通江县| 通化市| 凯里市| 长海县| 汉寿县| 呼图壁县| 淮阳县| 平凉市| 青铜峡市| 鲁山县| 宜兰县| 呼和浩特市| 通山县| 沙雅县| 右玉县| 故城县| 英超| 龙岩市| 沈丘县| 汕头市| 北海市| 阳东县| 广东省| 道真| 青河县| 天峻县| 丹寨县| 安岳县| 建昌县| 肥乡县| 南木林县| 桑日县| 眉山市| 东乡县|