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.
Diff: main.cpp
- Revision:
- 4:558b29109618
- Parent:
- 3:f24de3613c5c
- Child:
- 5:af9b6ec6b9b5
--- a/main.cpp Sun Jun 01 11:07:01 2014 +0000
+++ b/main.cpp Sun Jun 01 11:48:26 2014 +0000
@@ -21,35 +21,35 @@
//Converts the data from the buffer into values
//and puts it in a struct which we can pass to another fn
- control_p set_cp_values(int packet_num){
+control_p set_cp_values(int packet_num){
control_p packet_data;
- int bit_index = 0;
+ int bit_idx = 0;
int sequence = 0;
int furnace = 0;
int interval = 0;
int bit_decrement = 0;
bit_decrement = 3;
- for(; bit_index < 4; bit_index++){
- if( read_buffer[packet_num][2 + bit_index] == 1){ //need to add 2 because starrt bits
+ for(; bit_idx < 4; bit_idx++){
+ if( read_buffer[packet_num][2 + bit_idx] == 1){ //need to add 2 because starrt bits
sequence += pow(2.0,bit_decrement);
}
bit_decrement--;
}
bit_decrement = 3;
- for(; bit_index < 8; bit_index++){
- if( read_buffer[packet_num][2 + bit_index] == 1){
+ for(; bit_idx < 8; bit_idx++){
+ if( read_buffer[packet_num][2 + bit_idx] == 1){
furnace += pow(2.0,bit_decrement);
}
bit_decrement--;
}
bit_decrement = 6;
- for(; bit_index < 18; bit_index++){
- if( read_buffer[packet_num][2 + bit_index] == 1){
+ for(; bit_idx < 18; bit_idx++){
+ if( read_buffer[packet_num][2 + bit_idx] == 1){
interval += pow(2.0,bit_decrement);
}
bit_decrement--;
@@ -79,83 +79,62 @@
int main() {
char* a;
- // string a;
- // string result;
- // buffer2.push(a);
-
+
myled4 = 1;
- int index = 0;
+ int idx = 0;
int num_packets = 0;
- /*
- while(1){
- pc.printf("PYTHON PLZ");
- myled3= 1;
- wait(1);
- }
-
- return 0;
- */
- // a[0] = 'x';
- // a[1] = 'y';
-
- FILE *fp = fopen("/local/packet.txt", "w");
- // fprintf(fp,"%c",a[0]);
- // fclose(fp);
- // return 0;
-
-for(; num_packets < PACKET_COUNT; num_packets++){
- a = (char *) malloc(sizeof(char) * 20);
- for(; index < 19; index++){
- a[index] = char(pc.getc());
+ FILE *fp = fopen("/local/packet.txt", "w");
+ for(; num_packets < PACKET_COUNT; num_packets++){
+ a = (char *) malloc(sizeof(char) * 21);
+
+ if(a==NULL){
+ myled3 = 1;
+ return 1;
+ }
+
+ if(fp==NULL){
+ myled3 = 1;
+ fclose(fp);
+ return 1;
+ }
+ for(idx=0; idx < 20; idx++){
+ a[idx] = char(pc.getc());
+
+ fprintf(fp,"%c",a[idx]);
+ if(idx == 1)
+ fprintf(fp,".");
+ if(idx == 5)
+ fprintf(fp,".");
+ if(idx == 9)
+ fprintf(fp,".");
+ if(idx == 16)
+ fprintf(fp,".");
+ if(idx == 18)
+ fprintf(fp,".");
+ if(idx == 19)
+ a[idx] = 0;
+ }
+
+ idx = 0;
+ fprintf(fp,"\n");
+ // buffer2.push(a);
+
+ buffer4.put((char**)&a[0]);
- fprintf(fp,"%c",a[index]);
- if(index == 1)
- fprintf(fp,".");
- if(index == 5)
- fprintf(fp,".");
- if(index == 9)
- fprintf(fp,".");
- if(index == 16)
- fprintf(fp,".");
- if(index == 18)
- fprintf(fp,".");
-
- }
-
-
- index = 0;
- fprintf(fp,"\n");
- // buffer2.push(a);
-
-
- buffer4.put((char**)&a);
-
-
- osEvent evt = buffer4.get();
+ osEvent evt = buffer4.get();
if (evt.status != osEventMessage) {
printf("Furnace: queue->get() returned %02x status\n\r", evt.status);
} else {
fprintf(fp,"Queue: %s\n\r",evt.value.v);
//printf("Furnace: %s", evt.value.v);
}
-
- free(a);
-
-
-
- // myled3 = 1;
- // result = buffer2.back();
- // fprintf(fp,"BufferVal=%s\n",result);
- myled3 = 1;
- fclose(fp);
- return 0;
-
-
- }
-
+ free(a);
+ }
//fclose(fp);
+ fclose(fp);
+ return 0;
}