• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 手機與無線通信 > 設計應用 > 利用USART實現單片機與PC通信

    利用USART實現單片機與PC通信

    作者: 時間:2012-10-31 來源:網絡 收藏

    ;實驗目的:熟悉
    ;通過“串口調試助手”協助工作
    ;串口調試助手發送數據給877,877收到后再轉發回串口助手
    ;硬件要求:撥碼開關S7全置ON,其他撥碼開關置OFF
    #INCLUDEP16F877A.INC> ;調用芯片頭文件,省去特殊寄存器等的定義
    __CONFIG _DEBUG_OFF_CP_ALL_WRT_HALF_CPD_ON_LVP_OFF_BODEN_OFF_PWRTE_ON_WDT_OFF_HS_OSC
    VAL_US EQU .249 ;短延時定時參數
    VAL_MS EQU .200 ;長延時定時參數
    COUNT EQU 25H
    COUNT_MS EQU 26H
    ORG 00H
    NOP
    GOTO MAIN
    ORG 04H ;中斷入口地址
    BTFSS PIR1,RCIF ;判斷是否是串口接收中斷
    GOTO EXIT ;否,轉中斷結束程序
    MOVF RCREG,0 ;讀取接收寄存器的數據
    MOVWF TXREG ;保存到發送寄存器,隨后發送出去
    EXIT
    RETFIE

    本文引用地址:http://www.czjhyjcfj.com/article/153766.htm

    MAIN

    BANKSEL TRISC ;選擇體1
    BSF TRISC,7 ;斷開RC模塊與 TX引腳的聯系
    BSF TRISC,6 ;斷開RC模塊與USART RX引腳的聯系
    MOVLW 0CH ;裝載波特率發生器,為19.2kbd
    MOVWF SPBRG
    MOVLW 24H ;勢能USART,設置波特率發生器為高速方式
    MOVWF TXSTA
    BSF PIE1,RCIE ;使能接收中斷
    CLRF STATUS ;返回體0
    MOVLW 90H
    MOVWF RCSTA ;使能USART連續接收
    BSF INTCON,GIE ;使能全局中斷使能位
    BSF INTCON,PEIE ;使能外設中斷使能位

    USART_1
    CALL DELAY_MS ;調用2次延時程序
    CALL DELAY_MS
    GOTO USART_1 ;返回!

    ;*************************200ms延時程序***********************
    DELAY_MS
    MOVLW VAL_MS
    MOVWF COUNT_MS
    LOOP_MS
    CALL DELAY_US
    DECFSZ COUNT_MS,1
    GOTO LOOP_MS
    RETURN

    ;*************************100us延時程序***********************
    DELAY_US
    MOVLW VAL_US
    MOVWF COUNT
    LOOP_US
    NOP
    DECFSZ COUNT,1
    GOTO LOOP_US
    RETURN

    DELAY_S
    MOVLW 0FFH
    MOVWF 50H
    CALL DELAY_MS
    DECFSZ 50H,1
    GOTO $-2
    RETURN
    END

    數字通信相關文章:數字通信原理




    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 峡江县| 上林县| 神木县| 米易县| 鹿邑县| 越西县| 武功县| 浦江县| 兴海县| 禄丰县| 正镶白旗| 松滋市| 克什克腾旗| 古田县| 丰原市| 方山县| 英山县| 清原| 恩平市| 皋兰县| 兰州市| 浮梁县| 上栗县| 鄂伦春自治旗| 华蓥市| 恩施市| 宜丰县| 盐山县| 黄石市| 农安县| 德阳市| 灵宝市| 布尔津县| 河津市| 进贤县| 正安县| 肃南| 襄城县| 蓝田县| 黄浦区| 调兵山市|