Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <pic.h>
- #define _XTAL_FREQ 4000000 //Hz
- void InitUART(void)
- {
- //TRISC7 = 1;
- SPBRG = 25; //9600 Baudrate@4MHz11
- BRGH = 1; //fast baudrate
- BRG16 = 0;
- SYNC = 0; //asynchonyous mode
- SPEN = 1; //enable TX as output on RC6
- CREN = 1; //enalbe RX as input on RC7
- SREN = 0; //no Effect
- TXIE = 0; //Disaple TX interrupts
- RCIE = 1; //Enable RX Interrupts
- TX9 = 0; //8bit mode
- RX9 = 0; //8bit mode
- TXEN = 0; //Reset transmitter
- TXEN = 1; //Eanbel transmitter
- }
- void send_char_UART(char value)
- {
- while(!TXIF); //wait while TXREG is busy
- TXREG=value;
- }
- unsigned char Read_char_UART() // Reads a character from the serial port
- {
- if(OERR) // If over run error, then reset the receiver
- {
- CREN = 0;
- CREN = 1;
- }
- while(!RCIF); // Wait for transmission to receive
- return RCREG;
- }
- main()
- {
- InitUART();
- ANSELH = 0;
- TRISD = 0;
- PORTD = 0;
- while(1)
- {
- if (Read_char_UART()==1)
- {
- PORTD = 1;
- __delay_ms(500);
- PORTD = 0;
- __delay_ms(500);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement