Siva ram
/
PLYD_CDMS_1_2
PYLD_CDMS
Fork of PLYD_CDMS_1 by
Diff: main.cpp
- Revision:
- 2:623747e75e3c
- Parent:
- 1:72227bdac415
- Child:
- 3:d2307fb2455c
--- a/main.cpp Wed Jul 01 08:36:55 2015 +0000 +++ b/main.cpp Sat Oct 03 10:20:07 2015 +0000 @@ -5,16 +5,18 @@ // packet length = 32*16 bits (32 bins --> each 2 bytes) #include "mbed.h" - +//int f; void FUNC_MASTER_WRITE(void); const int addr = 0x20<<1; const int addr1 = (0x20<<1|0); Timer Siv ; I2C master (D14,D15); InterruptIn PYLD_I2C_Int(PTA13); +//DigitalIn test(PTA13); SPISlave device(PTD6, PTD7, PTD5,PTD4 ); // mosi, miso, sclk, ssel --> using SPI1 InterruptIn PYLD_SPI_Interrupt(PTD2); -int payloadBins = 32; +DigitalOut flash(LED4); +int payloadBins = 3096; float Stability_delay = 0.005228 ;// 0.005228 Serial pc(USBTX, USBRX); // tx, rx --> serial feedback for debug @@ -44,13 +46,42 @@ } int dt3; bool f = 1; -char rdata[10],rdata2; +char rdata[30],rdata2; void readds() { //wait(Stability_delay); + flash = !flash; + - f = master.read(addr,rdata,2); + + //while(!f) + //{ + f= master.read(addr1,rdata,26); + //} + /* + for(int i = 0;i<10;i++) + { + master.start(); + master.write(addr1); + rdata[i] = master.read(1); + master.stop(); + } + + master.read(addr1,&rdata[0],1); + master.read(addr1,&rdata[1],1); + master.read(addr1,&rdata[2],1); + master.read(addr1,&rdata[3],1); + master.read(addr1,&rdata[4],1); + master.read(addr1,&rdata[5],1); + master.read(addr1,&rdata[6],1); + master.read(addr1,&rdata[7],1); + master.read(addr1,&rdata[8],1); + master.read(addr1,&rdata[9],1); + master.read(addr1,&rdata[10],1); + master.read(addr1,&rdata[11],1); + master.read(addr1,&rdata[12],1); + */ // dt3 = master.read(1); @@ -58,10 +89,17 @@ int loop=1; char *writedata = new char; -char data[100]= "kitten"; +char data = 1,data1 = 2, data2 = 3, test[136] ; + void FUNC_MASTER_WRITE(void) -{ int data1 = pc.getc(); +{ + +for (dt3 = 0;dt3 <11 ; dt3++) +{ +test [dt3] = 1 ; +} + int data5 = pc.getc(); loop=1; @@ -69,37 +107,52 @@ *writedata = data1; while(loop) { - // bool check = (bool)master.write(addr,data,8); - bool check = (bool)master.write(addr,data,13); - /* - master.start(); - bool check1 = master.write(addr1); - bool check2 = master.write(83); - master.write(97); - //wait(1); - master.write(107); - master.write(116); - master.write(104); - master.write(105); - master.write(32); - master.write(80); - master.write(114); - master.write(105); - master.write(121); - master.write(97); + + bool check = (bool)master.write(addr,test,135); + + //wait_us(10); + + //check = (bool)master.write(addr,&data1,1); + // check = (bool)master.write(addr,&data1,1); + //check = (bool)master.write(addr,&data2,1); + //bool check = master.write(addr,test,3); + + // while(!test); + + // readds(); - master.stop(); - */ + //master.start(); + //bool check1 = master.write(addr1); + // wait_us(10); + // bool check2 = master.write(3); + //wait_us(10); + // check2 = master.write(1); + // master.write(97); + //master.write(107); + //master.write(116); + //master.write(104); + //master.write(105); + //wait_us(10); + //master.write(32); + //master.write(80); + //master.write(114); + //master.write(105); + //master.write(121); + //master.write(97); + + // master.stop(); + loop = 0; } } + int main() { - int dt1 = 0,dt2 = 0; + int dt1 = 0,dt2 = 0 ,P= 0; device.format(16,0); // SPI format --> 16 bits, mode = 0 device.frequency(1000000); - master.frequency(400000); + // master.frequency(400000); pc.printf("Example code demonstarting Payload - CDMS SPI & I2C communication!\r\n"); PYLD_SPI_Interrupt.rise(&payloadProcess); @@ -109,11 +162,14 @@ { FUNC_MASTER_WRITE(); wait(1); - dt1 = rdata[0] ; - dt2 = rdata[1] ; - //pc.printf("Temperature %d \n\r",rdata); - pc.printf("Temperature %d \n\r",dt1); - pc.printf("Temperature2 %d \n\r",dt2); + //dt1 = rdata[0] ; + //dt2 = rdata[1] ; + for(P = 0 ; P < 26 ; P++ ) + { + pc.printf("Temperature %d \n\r",rdata[P]); + } + // pc.printf("Temperature %d \n\r",dt1); + // pc.printf("Temperature2 %d \n\r",dt2); //pc.printf("Temperature3 %d \n\r",dt3);