Specifications

mikroElektronika | Free Online Book | PIC Microcontrollers | Appendix B: Examples
movwf TRISA
movlw b'00000000'
movwf TRISB
;---------------------------------------
; Setting initial values
;---------------------------------------
banksel PORTA
movlw b'11111100'
movwf PORTA
movwf Port_A
movlw b'00000000'
movwf PORTB
movwf Port_B
;---------------------------------------
; USART - setting for 38400 bps
;---------------------------------------
banksel TRISC
bcf TRISC, 6 ; RC6/TX/CK = output
bsf TRISC, 7 ; RC7/RX/DT = input
banksel BAUDCTL
bsf BAUDCTL, BRG16
banksel SPBRG
movlw .51 ; baud rate = 38400
; ( Fosc/(4*(SPBRG+1)) ) Error +0.16%
movwf SPBRG
clrf SPBRGH
banksel TXSTA
bcf TXSTA, TX9 ; Data is 8-bit wide
bsf TXSTA, TXEN ; Data transmission enabled
bcf TXSTA, SYNC ; Asynchronous mode
bsf TXSTA, BRGH ; High-speed Baud rate
banksel RCSTA
bsf RCSTA, SPEN ; RX/DT and TX/CK outputs configuration
bcf RCSTA, RX9 ; Select mode for 8-bit data receive
bsf RCSTA, CREN ; Receive data enabled
bcf RCSTA, ADDEN ; No address detection, ninth bit may be
; used as parity bit
movf RCSTA, W
movf RCREG, W
;---------------------------------------
; Interrupts enabled
;---------------------------------------
banksel PIE1
bsf PIE1, RCIE ; USART Rx interrupt enabled
bsf INTCON, PEIE ; All peripheral interrupts enabled
bsf INTCON, GIE ; Global interrupt enabled
;---------------------------------------
; Remain here
;---------------------------------------
goto $
end ; End of program
Previous Chapter | Table of Contents | Next Chapter
http://www.mikroe.com/en/books/picmcubook/appb/ (54 of 54)5/3/2009 11:36:02 AM