Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@2:153ec87771a0, 2014-06-01 (annotated)
- 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?
User | Revision | Line number | New 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 |