fix and add main.c
This commit is contained in:
@@ -1,72 +0,0 @@
|
||||
#include "lcd.h"
|
||||
#include "client.h"
|
||||
#include "uart.h"
|
||||
#include "stdbool.h"
|
||||
#include "stdio.h"
|
||||
|
||||
struct Client hdlc;
|
||||
bool flag_connection = false;
|
||||
|
||||
void setup() {
|
||||
Lsd_inciliation();
|
||||
UART_init();
|
||||
init_hdlc_client(&hdlc, 200);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
if (!flag_connection){
|
||||
hdlc_connect(&hdlc);
|
||||
uint8_t buffer;
|
||||
hdlc_get_raw_frame(&hdlc, &buffer, sizeof(buffer));
|
||||
|
||||
UART_send(&buffer, sizeof(buffer));
|
||||
|
||||
bool flag_recive = true;
|
||||
while(flag_recive){
|
||||
uint8_t buffer;
|
||||
UART_receive(&buffer, sizeof(buffer));
|
||||
|
||||
int err = hdlc_timeout_handler(&hdlc, 1);
|
||||
if (err != 0){
|
||||
return err;
|
||||
}
|
||||
|
||||
int ret = hdlc_decode_recived_raw_data(&hdlc, &fake_buffer, sizeof(fake_buffer), 0, 0);
|
||||
|
||||
if (ret == -6){
|
||||
uint8_t buffer;
|
||||
hdlc_get_raw_frame(&hdlc, &hdlc->frame_rej, &buffer, sizeof(buffer));
|
||||
UART_send(&buffer, sizeof(buffer));
|
||||
}
|
||||
|
||||
if (ret == 0 && client->state == READY_STATE){
|
||||
flag_connection = true;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
bool flag_recive = true;
|
||||
while(flag_recive){
|
||||
uint8_t buffer;
|
||||
UART_receive(&buffer, sizeof(buffer));
|
||||
|
||||
int err = hdlc_timeout_handler(&hdlc, 1);
|
||||
if (err != 0){
|
||||
return err;
|
||||
}
|
||||
|
||||
uint8_t recived_data;
|
||||
size_t len_recived_data;
|
||||
|
||||
int ret = hdlc_decode_recived_raw_data(&hdlc, &fake_buffer, sizeof(fake_buffer), &recived_data, &len_recived_data);
|
||||
|
||||
if (ret == -6){
|
||||
uint8_t buffer;
|
||||
hdlc_get_raw_frame(&hdlc, &hdlc->frame_rej, &buffer, sizeof(buffer));
|
||||
UART_send(&buffer, sizeof(buffer));
|
||||
}
|
||||
|
||||
printLsd(recived_data);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user