Serial
Page last updated 10 Dec 2014, by
1 reply
.
Example 1: On-board LEDs Control with Serial
#include "mbed.h" Serial pc(USBTX, USBRX); DigitalOut ledA(LED1); DigitalOut ledB(LED2); DigitalOut ledC(LED3); DigitalOut ledD(LED4); char cmd; int main() { pc.printf("Lighting Management System\n"); while(1) { if (pc.readable()) { cmd = pc.getc(); switch (cmd) { case 'A': ledA = 1; break; case 'B': ledB = 1; break; case 'C': ledC = 1; break; case 'D': ledD = 1; break; case 'a': ledA = 0; break; case 'b': ledB = 0; break; case 'c': ledC = 0; break; case 'd': ledD = 0; break; } } } }
Example 2: On-board LEDs Control with Serial
#include "mbed.h" DigitalOut Led1(LED1); DigitalOut Led2(LED2); DigitalOut Led3(LED3); DigitalOut Led4(LED4); Serial pc(USBTX, USBRX); // tx, rx char ch; int main() { pc.printf("Lighting Control Program!\r\n"); pc.printf("Press <n> to toggle LED <n>\r\n"); while (1) { ch = pc.getc(); if (ch == '1') Led1 = !Led1; else if (ch == '2') Led2 = !Led2; else if (ch == '3') Led3 = !Led3; else if (ch == '4') Led4 = !Led4; } }
Example 3: On-board LEDs Control with Serial and Automatic Switch Off
#include "mbed.h" DigitalOut Led1(LED1); DigitalOut Led2(LED2); DigitalOut Led3(LED3); DigitalOut Led4(LED4); Timeout TimerInterrupt; void SwitchOff() { Led1 = Led2 = Led3 = Led4 = 0;} Serial pc(USBTX, USBRX); // tx, rx char ch; int main() { pc.printf("Lighting Control Program!\r\n"); pc.printf("Press <n> to toggle LED <n>\r\n"); while (1) { ch = pc.getc(); if (ch == '1') Led1 = !Led1; else if (ch == '2') Led2 = !Led2; else if (ch == '3') Led3 = !Led3; else if (ch == '4') Led4 = !Led4; else if (ch == 'a' || ch == 'A') {Led1 = Led2 = Led3 = Led4 = 1;} else if (ch == 'z' || ch == 'Z') {Led1 = Led2 = Led3 = Led4 = 0;} if (Led1 || Led2 || Led3 || Led4) TimerInterrupt.attach(&SwitchOff, 5.0); } }
1 comment on Serial:
Please log in to post comments.
Hi,
Great series of programs. They work with my BBC micro:bit. LED1 to pin 0, LED2 to pin 1, LED 3 to pin 2 and LED4 to pin 16.
Many thanks,
Gary