CSE237B_Team / Mbed 2 deprecated read_serial

Dependencies:   mbed-rtos mbed

Committer:
mbed68244
Date:
Sun Jun 01 08:05:23 2014 +0000
Revision:
2:153ec87771a0
Parent:
1:a770d742e28a
Child:
3:f24de3613c5c
final commit before shit goes down with queues;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed68244 0:253a9226eb5b 1 #include "mbed.h"
mbed68244 2:153ec87771a0 2 #include "network.h"
mbed68244 0:253a9226eb5b 3 #include <fstream>
mbed68244 2:153ec87771a0 4 #include <cmath>
mbed68244 2:153ec87771a0 5 #include <queue>
mbed68244 2:153ec87771a0 6
mbed68244 0:253a9226eb5b 7
mbed68244 1:a770d742e28a 8 #define PACKET_COUNT 4
mbed68244 1:a770d742e28a 9
mbed68244 2:153ec87771a0 10 Serial pc(USBTX, USBRX); // tx, rx
mbed68244 2:153ec87771a0 11 DigitalOut myled4(LED4);
mbed68244 0:253a9226eb5b 12 DigitalOut myled3(LED3);
mbed68244 0:253a9226eb5b 13
mbed68244 2:153ec87771a0 14 LocalFileSystem local("local");
mbed68244 0:253a9226eb5b 15 int read_buffer[100][20];
mbed68244 0:253a9226eb5b 16
mbed68244 2:153ec87771a0 17
mbed68244 0:253a9226eb5b 18
mbed68244 2:153ec87771a0 19
mbed68244 2:153ec87771a0 20 //Converts the data from the buffer into values
mbed68244 2:153ec87771a0 21 //and puts it in a struct which we can pass to another fn
mbed68244 2:153ec87771a0 22 control_p set_cp_values(int packet_num){
mbed68244 2:153ec87771a0 23
mbed68244 2:153ec87771a0 24 control_p packet_data;
mbed68244 2:153ec87771a0 25
mbed68244 2:153ec87771a0 26 int bit_index = 0;
mbed68244 2:153ec87771a0 27 int sequence = 0;
mbed68244 2:153ec87771a0 28 int furnace = 0;
mbed68244 2:153ec87771a0 29 int interval = 0;
mbed68244 2:153ec87771a0 30 int bit_decrement = 0;
mbed68244 2:153ec87771a0 31
mbed68244 2:153ec87771a0 32 bit_decrement = 3;
mbed68244 2:153ec87771a0 33 for(; bit_index < 4; bit_index++){
mbed68244 2:153ec87771a0 34 if( read_buffer[packet_num][2 + bit_index] == 1){ //need to add 2 because starrt bits
mbed68244 2:153ec87771a0 35 sequence += pow(2.0,bit_decrement);
mbed68244 2:153ec87771a0 36 }
mbed68244 2:153ec87771a0 37 bit_decrement--;
mbed68244 2:153ec87771a0 38 }
mbed68244 2:153ec87771a0 39
mbed68244 2:153ec87771a0 40 bit_decrement = 3;
mbed68244 2:153ec87771a0 41 for(; bit_index < 8; bit_index++){
mbed68244 2:153ec87771a0 42 if( read_buffer[packet_num][2 + bit_index] == 1){
mbed68244 2:153ec87771a0 43 furnace += pow(2.0,bit_decrement);
mbed68244 2:153ec87771a0 44 }
mbed68244 2:153ec87771a0 45 bit_decrement--;
mbed68244 2:153ec87771a0 46 }
mbed68244 2:153ec87771a0 47
mbed68244 2:153ec87771a0 48 bit_decrement = 6;
mbed68244 2:153ec87771a0 49 for(; bit_index < 18; bit_index++){
mbed68244 2:153ec87771a0 50 if( read_buffer[packet_num][2 + bit_index] == 1){
mbed68244 2:153ec87771a0 51 interval += pow(2.0,bit_decrement);
mbed68244 2:153ec87771a0 52 }
mbed68244 2:153ec87771a0 53 bit_decrement--;
mbed68244 2:153ec87771a0 54 }
mbed68244 2:153ec87771a0 55
mbed68244 2:153ec87771a0 56 // packet_data.sequence = sequence;
mbed68244 2:153ec87771a0 57 // packet_data.furnace = furnace;
mbed68244 2:153ec87771a0 58 // packet_data.interval = interval;
mbed68244 2:153ec87771a0 59
mbed68244 2:153ec87771a0 60 return packet_data;
mbed68244 2:153ec87771a0 61
mbed68244 2:153ec87771a0 62
mbed68244 2:153ec87771a0 63
mbed68244 2:153ec87771a0 64
mbed68244 2:153ec87771a0 65
mbed68244 2:153ec87771a0 66 }
mbed68244 2:153ec87771a0 67
mbed68244 2:153ec87771a0 68
mbed68244 2:153ec87771a0 69 std::queue<vector<int> > buffer;
mbed68244 2:153ec87771a0 70 vector<int> numbers;
mbed68244 2:153ec87771a0 71
mbed68244 2:153ec87771a0 72 std::queue<string> buffer2;
mbed68244 2:153ec87771a0 73
mbed68244 0:253a9226eb5b 74 int main() {
mbed68244 2:153ec87771a0 75
mbed68244 2:153ec87771a0 76 // numbers.push_back(1);
mbed68244 2:153ec87771a0 77 // numbers.push_back(2);
mbed68244 2:153ec87771a0 78 // numbers.push_back(3);
mbed68244 2:153ec87771a0 79 string a;
mbed68244 2:153ec87771a0 80
mbed68244 2:153ec87771a0 81 a[0] = 'a';
mbed68244 2:153ec87771a0 82 a[1] = 'b';
mbed68244 2:153ec87771a0 83
mbed68244 2:153ec87771a0 84
mbed68244 2:153ec87771a0 85 // queue.push(numbers);
mbed68244 2:153ec87771a0 86
mbed68244 2:153ec87771a0 87
mbed68244 1:a770d742e28a 88 myled4 = 1;
mbed68244 1:a770d742e28a 89
mbed68244 0:253a9226eb5b 90 int index = 0;
mbed68244 1:a770d742e28a 91 int num_packets = 0;
mbed68244 2:153ec87771a0 92 /*
mbed68244 2:153ec87771a0 93 while(1){
mbed68244 2:153ec87771a0 94 pc.printf("PYTHON PLZ");
mbed68244 2:153ec87771a0 95 myled3= 1;
mbed68244 2:153ec87771a0 96 wait(1);
mbed68244 2:153ec87771a0 97 }
mbed68244 2:153ec87771a0 98
mbed68244 2:153ec87771a0 99 return 0;
mbed68244 2:153ec87771a0 100 */
mbed68244 2:153ec87771a0 101
mbed68244 1:a770d742e28a 102
mbed68244 0:253a9226eb5b 103 FILE *fp = fopen("/local/packet.txt", "w");
mbed68244 2:153ec87771a0 104 fprintf(fp,"%s",a);
mbed68244 2:153ec87771a0 105 fclose(fp);
mbed68244 2:153ec87771a0 106 return 0;
mbed68244 1:a770d742e28a 107
mbed68244 1:a770d742e28a 108 for(; num_packets < PACKET_COUNT; num_packets++){
mbed68244 1:a770d742e28a 109
mbed68244 1:a770d742e28a 110 for(; index < 19; index++){
mbed68244 1:a770d742e28a 111 read_buffer[num_packets][index] = pc.getc() - 48;
mbed68244 1:a770d742e28a 112 fprintf(fp,"%d",read_buffer[num_packets][index]);
mbed68244 0:253a9226eb5b 113
mbed68244 0:253a9226eb5b 114
mbed68244 1:a770d742e28a 115 if(index == 1)
mbed68244 1:a770d742e28a 116 fprintf(fp,".");
mbed68244 1:a770d742e28a 117 if(index == 5)
mbed68244 1:a770d742e28a 118 fprintf(fp,".");
mbed68244 1:a770d742e28a 119 if(index == 9)
mbed68244 1:a770d742e28a 120 fprintf(fp,".");
mbed68244 1:a770d742e28a 121 if(index == 16)
mbed68244 1:a770d742e28a 122 fprintf(fp,".");
mbed68244 1:a770d742e28a 123 if(index == 18)
mbed68244 1:a770d742e28a 124 fprintf(fp,".");
mbed68244 1:a770d742e28a 125
mbed68244 1:a770d742e28a 126 }
mbed68244 1:a770d742e28a 127 index = 0;
mbed68244 1:a770d742e28a 128 fprintf(fp,"\n");
mbed68244 1:a770d742e28a 129
mbed68244 0:253a9226eb5b 130 }
mbed68244 1:a770d742e28a 131
mbed68244 0:253a9226eb5b 132 fclose(fp);
mbed68244 0:253a9226eb5b 133
mbed68244 0:253a9226eb5b 134 }
mbed68244 2:153ec87771a0 135
mbed68244 2:153ec87771a0 136
mbed68244 2:153ec87771a0 137
mbed68244 2:153ec87771a0 138
mbed68244 2:153ec87771a0 139
mbed68244 2:153ec87771a0 140