Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@1:afb4a0df7ff1, 2014-12-07 (annotated)
- Committer:
- sakthipriya
- Date:
- Sun Dec 07 07:38:30 2014 +0000
- Revision:
- 1:afb4a0df7ff1
- Parent:
- 0:ee332448b24c
commands with switch case
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| sakthipriya | 0:ee332448b24c | 1 | #include "mbed.h" | 
| sakthipriya | 0:ee332448b24c | 2 | |
| sakthipriya | 0:ee332448b24c | 3 | #define interrupt D9 | 
| sakthipriya | 0:ee332448b24c | 4 | |
| sakthipriya | 0:ee332448b24c | 5 | |
| sakthipriya | 0:ee332448b24c | 6 | I2CSlave slave(D14,D15); | 
| sakthipriya | 0:ee332448b24c | 7 | Serial pc(USBTX,USBRX); | 
| sakthipriya | 0:ee332448b24c | 8 | InterruptIn m2s_interrupt(interrupt); | 
| sakthipriya | 0:ee332448b24c | 9 | |
| sakthipriya | 0:ee332448b24c | 10 | void execute_command(char* cmd); | 
| sakthipriya | 0:ee332448b24c | 11 | |
| sakthipriya | 0:ee332448b24c | 12 | void read_command() | 
| sakthipriya | 0:ee332448b24c | 13 | { | 
| sakthipriya | 1:afb4a0df7ff1 | 14 | printf("\nEntered slave \n\r"); | 
| sakthipriya | 1:afb4a0df7ff1 | 15 | char *command = new char; | 
| sakthipriya | 1:afb4a0df7ff1 | 16 | slave.address(0x20); | 
| sakthipriya | 1:afb4a0df7ff1 | 17 | int slave_status =1; | 
| sakthipriya | 1:afb4a0df7ff1 | 18 | slave.stop(); | 
| sakthipriya | 1:afb4a0df7ff1 | 19 | while(slave.receive()!=3); | 
| sakthipriya | 1:afb4a0df7ff1 | 20 | while(slave_status) | 
| sakthipriya | 1:afb4a0df7ff1 | 21 | slave_status=slave.read(command,1); | 
| sakthipriya | 1:afb4a0df7ff1 | 22 | printf("\nread %c from master\n\r",*command); | 
| sakthipriya | 0:ee332448b24c | 23 | execute_command(command); //assumed command is very important | 
| sakthipriya | 0:ee332448b24c | 24 | printf("\n done \n \r"); | 
| sakthipriya | 0:ee332448b24c | 25 | delete command; | 
| sakthipriya | 0:ee332448b24c | 26 | } | 
| sakthipriya | 0:ee332448b24c | 27 | |
| sakthipriya | 0:ee332448b24c | 28 | void execute_command(char* cmd) | 
| sakthipriya | 0:ee332448b24c | 29 | { | 
| sakthipriya | 0:ee332448b24c | 30 | switch(*cmd) | 
| sakthipriya | 0:ee332448b24c | 31 | { | 
| sakthipriya | 0:ee332448b24c | 32 | case '0':printf("\n command 0 executed \n\r"); | 
| sakthipriya | 0:ee332448b24c | 33 | break; | 
| sakthipriya | 0:ee332448b24c | 34 | case '1':printf("\n command 1 executed \n\r"); | 
| sakthipriya | 0:ee332448b24c | 35 | break; | 
| sakthipriya | 0:ee332448b24c | 36 | case '2':printf("\n command 2 executed \n\r"); | 
| sakthipriya | 0:ee332448b24c | 37 | break; | 
| sakthipriya | 0:ee332448b24c | 38 | case '3':printf("\n command 3 executed \n\r"); | 
| sakthipriya | 0:ee332448b24c | 39 | break; | 
| sakthipriya | 0:ee332448b24c | 40 | case '4':printf("\n command 4 executed \n\r"); | 
| sakthipriya | 0:ee332448b24c | 41 | break; | 
| sakthipriya | 0:ee332448b24c | 42 | } | 
| sakthipriya | 0:ee332448b24c | 43 | } | 
| sakthipriya | 0:ee332448b24c | 44 | |
| sakthipriya | 0:ee332448b24c | 45 | |
| sakthipriya | 0:ee332448b24c | 46 | |
| sakthipriya | 1:afb4a0df7ff1 | 47 | int main() | 
| sakthipriya | 1:afb4a0df7ff1 | 48 | { | 
| sakthipriya | 1:afb4a0df7ff1 | 49 | printf("\nwaiting for command from master\n\r"); | 
| sakthipriya | 0:ee332448b24c | 50 | m2s_interrupt.rise(&read_command); | 
| sakthipriya | 0:ee332448b24c | 51 | while(1) | 
| sakthipriya | 0:ee332448b24c | 52 | { | 
| sakthipriya | 0:ee332448b24c | 53 | ; | 
| sakthipriya | 0:ee332448b24c | 54 | } | 
| sakthipriya | 1:afb4a0df7ff1 | 55 | } |