sra-romi

Dependencies:   BufferedSerial Matrix

Committer:
joaopsousa99
Date:
Tue May 11 18:10:22 2021 +0000
Revision:
4:1defb279922a
Parent:
1:dc87724abce8
as.djvblaskdvj

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fabiofaria 1:dc87724abce8 1 #include "Communication.h"
fabiofaria 1:dc87724abce8 2 #include "mbed.h"
fabiofaria 1:dc87724abce8 3 #include "MessageBuilder.h"
fabiofaria 1:dc87724abce8 4
fabiofaria 1:dc87724abce8 5 const char max_len = 30;
fabiofaria 1:dc87724abce8 6 Serial *serial_object;
fabiofaria 1:dc87724abce8 7 MessageBuilder bin_msg;
fabiofaria 1:dc87724abce8 8
fabiofaria 1:dc87724abce8 9 void init_communication(Serial *serial_in)
fabiofaria 1:dc87724abce8 10 {
fabiofaria 1:dc87724abce8 11 serial_object = serial_in;
fabiofaria 1:dc87724abce8 12 }
fabiofaria 1:dc87724abce8 13
fabiofaria 1:dc87724abce8 14 void write_bytes(char *ptr, unsigned char len)
fabiofaria 1:dc87724abce8 15 {
fabiofaria 1:dc87724abce8 16 for(int i=0; i<len; i++)
fabiofaria 1:dc87724abce8 17 {
fabiofaria 1:dc87724abce8 18 serial_object->putc(ptr[i]);
fabiofaria 1:dc87724abce8 19 }
fabiofaria 1:dc87724abce8 20 }
fabiofaria 1:dc87724abce8 21
fabiofaria 1:dc87724abce8 22 void send_odometry(int value1, int value2, int ticks_left, int ticks_right, float x, float y, float theta)
fabiofaria 1:dc87724abce8 23 {
fabiofaria 1:dc87724abce8 24 bin_msg.reset();
fabiofaria 1:dc87724abce8 25 bin_msg.add('O');
fabiofaria 1:dc87724abce8 26 bin_msg.add(value1);
fabiofaria 1:dc87724abce8 27 bin_msg.add(value2);
fabiofaria 1:dc87724abce8 28 bin_msg.add(ticks_left);
fabiofaria 1:dc87724abce8 29 bin_msg.add(ticks_right);
fabiofaria 1:dc87724abce8 30 bin_msg.add(x);
fabiofaria 1:dc87724abce8 31 bin_msg.add(y);
fabiofaria 1:dc87724abce8 32 bin_msg.add(theta);
fabiofaria 1:dc87724abce8 33
fabiofaria 1:dc87724abce8 34 write_bytes(bin_msg.message, bin_msg.length());
fabiofaria 1:dc87724abce8 35 }