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 | } |