您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机16C5X模拟串口 正文
16C5X模拟串口

16C5X模拟串口

点击数:7664 次   录入时间:03-04 11:50:53   整理:http://www.55dianzi.com   PIC单片机
BAUD_4  equ     .216     ; 3+3X = 1.25*CLKOUT/Baud
BAUD_X  equ     .170     ; 11+3X = CLKOUT/Baud
BAUD_Y  equ     .171     ; 9 +3X = CLKOUT/Baud
        endif
           if BAUDRATE == 2400
            error "Baudrate and clock speed incompatable"
        endif
           if BAUDRATE == 1200
            error "Baudrate and clock speed incompatable"
        endif
    endif
    if CLOCKSPEED == 20
        if BAUDRATE == 19200
BAUD_1  equ     .86      ; 3+3X = CLKOUT/Baud (9600 baud, 10Mhz)
BAUD_4  equ     .108     ; 3+3X = 1.25*CLKOUT/Baud
BAUD_X  equ     .83     ; 11+3X = CLKOUT/Baud
BAUD_Y  equ     .84     ; 9 +3X = CLKOUT/Baud
                error "Baudrate and clock speed incompatable"
        endif
        if BAUDRATE == 9600
BAUD_1  equ     .173     ; 3+3X = CLKOUT/Baud (9600 baud, 10Mhz)
BAUD_4  equ     .216     ; 3+3X = 1.25*CLKOUT/Baud
BAUD_X  equ     .170     ; 11+3X = CLKOUT/Baud
BAUD_Y  equ     .171     ; 9 +3X = CLKOUT/Baud
        endif
        if BAUDRATE == 4800
                error "Baudrate and clock speed incompatable"
        endif
        if BAUDRATE == 2400
                error "Baudrate and clock speed incompatable"
        endif
        if BAUDRATE == 1200
                error "Baudrate and clock speed incompatable"
        endif
    endif

; Generic delay loop
Delay   macro
    local    loop
    movwf   DlyCnt
loop
    decfsz  DlyCnt,f
    goto    loop
    endm

; Specific delay loops... loads counter value then generic delay loop
Delay1  macro        ; 3+3X = CLKOUT/Baud
    movlw   BAUD_1
    Delay
    endm

Delay4  macro        ; 3+3X = 1.25*CLKOUT/Baud
    movlw   BAUD_4           
    Delay
    endm

DelayX  macro       ; 11+3X = CLKOUT/Baud
    movlw   BAUD_X
    Delay
    endm

DelayY  macro       ; 9 +3X = CLKOUT/Baud
    movlw   BAUD_Y
    Delay
    endm
;
;************************  Data RAM Assignments  **********************
;
        udata
RcvReg  res     1   ; Data received
XmtReg  res     1
        global  RcvReg
        global  XmtReg
        global  OpenUART
        global  putcUART
        global  getcUART

        udata_ovr
Count   res     1   ; Counter for #of Bits Transmitted
DlyCnt  res     1
;
        CODE
;
;*****************************************************************
;    Function Name:    OpenUART                                 *
;    Return Value:    none                                     *
;    Parameters:    None (parameters set at assembly time)   *
;    RAM Usage:    0 bytes                                  *
;    ROM Usage:    4 words                                  *
;    Description:    Sets the TRIS register for the UARTPORT  *
;            such that the RX_PIN is an input, the    *

上一页  [1] [2] [3] [4] [5]  下一页


本文关键字:暂无联系方式PIC单片机单片机-工控设备 - PIC单片机