sakthi priya amirtharaj / Mbed 2 deprecated slave_1

Dependencies:   mbed

Committer:
sakthipriya
Date:
Sat Dec 06 13:03:55 2014 +0000
Revision:
0:ee332448b24c
Child:
1:afb4a0df7ff1
slave

Who changed what in which revision?

UserRevisionLine numberNew 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 0:ee332448b24c 14 bool read_loop = true;
sakthipriya 0:ee332448b24c 15 printf("\nEntered slave \n");
sakthipriya 0:ee332448b24c 16 char *command = new char;
sakthipriya 0:ee332448b24c 17 while(read_loop){
sakthipriya 0:ee332448b24c 18 slave.address(0x20);
sakthipriya 0:ee332448b24c 19 int slave_status =1;
sakthipriya 0:ee332448b24c 20 slave_status=slave.read(command,1);
sakthipriya 0:ee332448b24c 21 if(!slave_status){
sakthipriya 0:ee332448b24c 22 printf("read %c from master\n\r",*command);
sakthipriya 0:ee332448b24c 23 read_loop = false;}
sakthipriya 0:ee332448b24c 24 }
sakthipriya 0:ee332448b24c 25 execute_command(command); //assumed command is very important
sakthipriya 0:ee332448b24c 26 printf("\n done \n \r");
sakthipriya 0:ee332448b24c 27 delete command;
sakthipriya 0:ee332448b24c 28 }
sakthipriya 0:ee332448b24c 29
sakthipriya 0:ee332448b24c 30 void execute_command(char* cmd)
sakthipriya 0:ee332448b24c 31 {
sakthipriya 0:ee332448b24c 32 switch(*cmd)
sakthipriya 0:ee332448b24c 33 {
sakthipriya 0:ee332448b24c 34 case '0':printf("\n command 0 executed \n\r");
sakthipriya 0:ee332448b24c 35 break;
sakthipriya 0:ee332448b24c 36 case '1':printf("\n command 1 executed \n\r");
sakthipriya 0:ee332448b24c 37 break;
sakthipriya 0:ee332448b24c 38 case '2':printf("\n command 2 executed \n\r");
sakthipriya 0:ee332448b24c 39 break;
sakthipriya 0:ee332448b24c 40 case '3':printf("\n command 3 executed \n\r");
sakthipriya 0:ee332448b24c 41 break;
sakthipriya 0:ee332448b24c 42 case '4':printf("\n command 4 executed \n\r");
sakthipriya 0:ee332448b24c 43 break;
sakthipriya 0:ee332448b24c 44 }
sakthipriya 0:ee332448b24c 45 }
sakthipriya 0:ee332448b24c 46
sakthipriya 0:ee332448b24c 47
sakthipriya 0:ee332448b24c 48
sakthipriya 0:ee332448b24c 49 int main(){
sakthipriya 0:ee332448b24c 50
sakthipriya 0:ee332448b24c 51 printf("waiting for commands from master");
sakthipriya 0:ee332448b24c 52 m2s_interrupt.rise(&read_command);
sakthipriya 0:ee332448b24c 53 while(1)
sakthipriya 0:ee332448b24c 54 {
sakthipriya 0:ee332448b24c 55 ;
sakthipriya 0:ee332448b24c 56 }
sakthipriya 0:ee332448b24c 57 //write2slave();
sakthipriya 0:ee332448b24c 58 }