Simple UART0 usage with SimpleLib

Dependencies:   mbed SimpleLib

Committer:
Alkorin
Date:
Sat Nov 13 11:21:01 2010 +0000
Revision:
1:6a9f5827b72e
Parent:
0:60e8d7bb5545
Child:
2:d367033913a2

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Alkorin 1:6a9f5827b72e 1 #include "mbed.h"
Alkorin 1:6a9f5827b72e 2
Alkorin 1:6a9f5827b72e 3 #include "mbed_globals.h"
Alkorin 1:6a9f5827b72e 4 #include "interrupts.h"
Alkorin 1:6a9f5827b72e 5 #include "serial.h"
Alkorin 1:6a9f5827b72e 6 #include "leds.h"
Alkorin 1:6a9f5827b72e 7
Alkorin 1:6a9f5827b72e 8 Serial pc(USBTX, USBRX);
Alkorin 1:6a9f5827b72e 9
Alkorin 1:6a9f5827b72e 10 void serialOut(unsigned char c) {
Alkorin 1:6a9f5827b72e 11 SERIAL_PUTCHAR(c);
Alkorin 1:6a9f5827b72e 12 }
Alkorin 1:6a9f5827b72e 13
Alkorin 1:6a9f5827b72e 14 void serialOutString(const char * c) {
Alkorin 1:6a9f5827b72e 15 while (*c) {
Alkorin 1:6a9f5827b72e 16 SERIAL_PUTCHAR(*c);
Alkorin 1:6a9f5827b72e 17 c++;
Alkorin 1:6a9f5827b72e 18 }
Alkorin 1:6a9f5827b72e 19 }
Alkorin 1:6a9f5827b72e 20
Alkorin 1:6a9f5827b72e 21 SERIAL_INTERRUPT_HANDLER(void) {
Alkorin 1:6a9f5827b72e 22 // Check if interrupt is pending
Alkorin 1:6a9f5827b72e 23 if(!SERIAL_CHECK_INTERRUPT())
Alkorin 1:6a9f5827b72e 24 return;
Alkorin 1:6a9f5827b72e 25
Alkorin 1:6a9f5827b72e 26 // While some data to read
Alkorin 1:6a9f5827b72e 27 while (SERIAL_DATA_TO_READ()) {
Alkorin 1:6a9f5827b72e 28 char c = SERIAL_GETCHAR();
Alkorin 1:6a9f5827b72e 29 serialOut('[');
Alkorin 1:6a9f5827b72e 30 serialOut(c);
Alkorin 1:6a9f5827b72e 31 serialOut(']');
Alkorin 1:6a9f5827b72e 32 }
Alkorin 1:6a9f5827b72e 33 }
Alkorin 1:6a9f5827b72e 34
Alkorin 1:6a9f5827b72e 35 int main() {
Alkorin 1:6a9f5827b72e 36 // Hardware Init
Alkorin 1:6a9f5827b72e 37 // SERIAL_INIT();
Alkorin 1:6a9f5827b72e 38 // SERIAL_SETBAUD(9600);
Alkorin 1:6a9f5827b72e 39 pc.baud(9600);
Alkorin 1:6a9f5827b72e 40 SERIAL_ENABLE_INTERRUPT(SERIAL_INT_RX);
Alkorin 1:6a9f5827b72e 41
Alkorin 1:6a9f5827b72e 42 serialOutString("Simple UART Sample Code\r\n");
Alkorin 1:6a9f5827b72e 43
Alkorin 1:6a9f5827b72e 44 while (1);
Alkorin 0:60e8d7bb5545 45 }