publishing to check changes in cdms code
Dependencies: FreescaleIAP SimpleDMA mbed-rtos mbed
Fork of CDMS_CODE_samp_23SEP_DMA_flag by
i2c.h@35:3beac900a034, 2016-01-07 (annotated)
- Committer:
- ee12b079
- Date:
- Thu Jan 07 10:35:40 2016 +0000
- Revision:
- 35:3beac900a034
- Child:
- 55:39e59903bc3a
- Child:
- 69:20f09a0c3fd2
Relay_tmtc function, i2c.h, Flash.h, cdms_rtc.h added to the code, giving no errors. To be tested with CDMS TCs.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ee12b079 | 35:3beac900a034 | 1 | #define tm_len 134 |
ee12b079 | 35:3beac900a034 | 2 | #define tc_len 135 |
ee12b079 | 35:3beac900a034 | 3 | #define tc_test_len 135 |
ee12b079 | 35:3beac900a034 | 4 | |
ee12b079 | 35:3beac900a034 | 5 | DigitalOut irpt_2_slv(PIN67); //I2C interrupt to CDMS |
ee12b079 | 35:3beac900a034 | 6 | I2C master(PIN32,PIN31); |
ee12b079 | 35:3beac900a034 | 7 | DigitalOut led1(PIN46); |
ee12b079 | 35:3beac900a034 | 8 | DigitalOut led2(PIN95); |
ee12b079 | 35:3beac900a034 | 9 | const int addr = 0x20; //slave address |
ee12b079 | 35:3beac900a034 | 10 | char telecommand[tc_len]; |
ee12b079 | 35:3beac900a034 | 11 | char telemetry[tm_len]; |
ee12b079 | 35:3beac900a034 | 12 | Timer test; |
ee12b079 | 35:3beac900a034 | 13 | Timer t_read; |
ee12b079 | 35:3beac900a034 | 14 | bool write_ack = true; |
ee12b079 | 35:3beac900a034 | 15 | bool read_ack = true; |
ee12b079 | 35:3beac900a034 | 16 | |
ee12b079 | 35:3beac900a034 | 17 | int count = 0; |
ee12b079 | 35:3beac900a034 | 18 | |
ee12b079 | 35:3beac900a034 | 19 | void FCTN_I2C_WRITE(char *data) |
ee12b079 | 35:3beac900a034 | 20 | { |
ee12b079 | 35:3beac900a034 | 21 | irpt_2_slv = 1; |
ee12b079 | 35:3beac900a034 | 22 | //t.start(); |
ee12b079 | 35:3beac900a034 | 23 | write_ack = master.write(addr|0x00,data,tc_len); |
ee12b079 | 35:3beac900a034 | 24 | //t.stop(); |
ee12b079 | 35:3beac900a034 | 25 | //if(write_ack == 0) |
ee12b079 | 35:3beac900a034 | 26 | //pc.printf("\n\r data not sent \n"); |
ee12b079 | 35:3beac900a034 | 27 | |
ee12b079 | 35:3beac900a034 | 28 | if (write_ack == 1) |
ee12b079 | 35:3beac900a034 | 29 | { |
ee12b079 | 35:3beac900a034 | 30 | led2 = 1; |
ee12b079 | 35:3beac900a034 | 31 | printf("\n\r data not sent \n"); |
ee12b079 | 35:3beac900a034 | 32 | led2 = 0; |
ee12b079 | 35:3beac900a034 | 33 | } |
ee12b079 | 35:3beac900a034 | 34 | irpt_2_slv = 0; |
ee12b079 | 35:3beac900a034 | 35 | //pc.printf("\n\r %d \n",t.read_us()); |
ee12b079 | 35:3beac900a034 | 36 | //t.reset(); |
ee12b079 | 35:3beac900a034 | 37 | } |
ee12b079 | 35:3beac900a034 | 38 | |
ee12b079 | 35:3beac900a034 | 39 | |
ee12b079 | 35:3beac900a034 | 40 | void FCTN_I2C_READ(char *data) |
ee12b079 | 35:3beac900a034 | 41 | { |
ee12b079 | 35:3beac900a034 | 42 | irpt_2_slv = 1; |
ee12b079 | 35:3beac900a034 | 43 | t_read.start(); |
ee12b079 | 35:3beac900a034 | 44 | read_ack = master.read(addr|1,data,tm_len); |
ee12b079 | 35:3beac900a034 | 45 | t_read.stop(); |
ee12b079 | 35:3beac900a034 | 46 | |
ee12b079 | 35:3beac900a034 | 47 | //if(read_ack == 0) |
ee12b079 | 35:3beac900a034 | 48 | // printf("\n\rData received from BAE %s \n",data); |
ee12b079 | 35:3beac900a034 | 49 | if (read_ack == 1) |
ee12b079 | 35:3beac900a034 | 50 | { |
ee12b079 | 35:3beac900a034 | 51 | led2 = 1; |
ee12b079 | 35:3beac900a034 | 52 | printf("\n \r data not received \n"); |
ee12b079 | 35:3beac900a034 | 53 | led2 = 0; |
ee12b079 | 35:3beac900a034 | 54 | } |
ee12b079 | 35:3beac900a034 | 55 | //if(read_ack == 1) |
ee12b079 | 35:3beac900a034 | 56 | //pc.printf("\n \r data not received \n"); |
ee12b079 | 35:3beac900a034 | 57 | |
ee12b079 | 35:3beac900a034 | 58 | irpt_2_slv = 0; |
ee12b079 | 35:3beac900a034 | 59 | //printf("\n\r %d \n",t.read_us()); |
ee12b079 | 35:3beac900a034 | 60 | //t.reset(); |
ee12b079 | 35:3beac900a034 | 61 | } |