sd 32 update
Dependencies: FreescaleIAP mbed-rtos mbed
Fork of COM_MNG_TMTC_SIMPLE by
i2c.h
00001 #define tm_len 134 00002 #define tc_len 135 00003 #define tc_test_len 135 00004 00005 DigitalOut irpt_2_slv(PIN67); //I2C interrupt to CDMS 00006 I2C master(PIN32,PIN31); 00007 DigitalOut led1(PIN46); 00008 DigitalOut led2(PIN95); 00009 const int addr = 0x20; //slave address 00010 char telecommand[tc_len]; 00011 char telemetry[tm_len]; 00012 Timer test; 00013 Timer t_read; 00014 bool write_ack = true; 00015 bool read_ack = true; 00016 00017 int count = 0; 00018 00019 void FCTN_I2C_WRITE(char *data) 00020 { 00021 irpt_2_slv = 1; 00022 //t.start(); 00023 write_ack = master.write(addr|0x00,data,tc_len); 00024 //t.stop(); 00025 //if(write_ack == 0) 00026 //pc.printf("\n\r data not sent \n"); 00027 00028 if (write_ack == 1) 00029 { 00030 led2 = 1; 00031 printf("\n\r data not sent \n"); 00032 led2 = 0; 00033 } 00034 irpt_2_slv = 0; 00035 //pc.printf("\n\r %d \n",t.read_us()); 00036 //t.reset(); 00037 } 00038 00039 00040 void FCTN_I2C_READ(char *data) 00041 { 00042 irpt_2_slv = 1; 00043 t_read.start(); 00044 read_ack = master.read(addr|1,data,tm_len); 00045 t_read.stop(); 00046 00047 //if(read_ack == 0) 00048 // printf("\n\rData received from BAE %s \n",data); 00049 if (read_ack == 1) 00050 { 00051 led2 = 1; 00052 printf("\n \r data not received \n"); 00053 led2 = 0; 00054 } 00055 //if(read_ack == 1) 00056 //pc.printf("\n \r data not received \n"); 00057 00058 irpt_2_slv = 0; 00059 //printf("\n\r %d \n",t.read_us()); 00060 //t.reset(); 00061 }
Generated on Tue Jul 12 2022 10:59:22 by 1.7.2