|
|
|
@ -95,14 +95,21 @@ void setup()
|
|
|
|
// Clear the buffer
|
|
|
|
// Clear the buffer
|
|
|
|
display.clearDisplay();
|
|
|
|
display.clearDisplay();
|
|
|
|
display.display();
|
|
|
|
display.display();
|
|
|
|
display.setCursor(0, 0);
|
|
|
|
|
|
|
|
display.setTextSize(1); // Draw 1X-scale text
|
|
|
|
display.setTextSize(1); // Draw 1X-scale text
|
|
|
|
display.setTextColor(SSD1306_WHITE);
|
|
|
|
display.setTextColor(SSD1306_WHITE);
|
|
|
|
|
|
|
|
display.
|
|
|
|
|
|
|
|
setCursor(int
|
|
|
|
|
|
|
|
((display.width() -
|
|
|
|
|
|
|
|
(strlen("Hoverboard Serial") * 6)) / 2), 0);
|
|
|
|
display.println("Hoverboard Serial");
|
|
|
|
display.println("Hoverboard Serial");
|
|
|
|
display.println("v1.0");
|
|
|
|
display.setCursor(52, 8);
|
|
|
|
|
|
|
|
display.println("v0.2");
|
|
|
|
|
|
|
|
/*
|
|
|
|
display.print("Nunchuk ");
|
|
|
|
display.print("Nunchuk ");
|
|
|
|
nchuk.connect()? display.print("") : display.print("not ");
|
|
|
|
nchuk.connect()? display.print("") : display.print("not ");
|
|
|
|
display.println("connected");
|
|
|
|
display.println("connected");
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
display.display();
|
|
|
|
display.display();
|
|
|
|
|
|
|
|
|
|
|
|
Serial1.begin(HOVER_SERIAL_BAUD); // RX, TX from arduino to TX RX on hoverboard board. ! be carreful 3v3
|
|
|
|
Serial1.begin(HOVER_SERIAL_BAUD); // RX, TX from arduino to TX RX on hoverboard board. ! be carreful 3v3
|
|
|
|
@ -159,11 +166,11 @@ void Receive()
|
|
|
|
if (idx == sizeof(SerialFeedback)) {
|
|
|
|
if (idx == sizeof(SerialFeedback)) {
|
|
|
|
uint16_t checksum;
|
|
|
|
uint16_t checksum;
|
|
|
|
checksum =
|
|
|
|
checksum =
|
|
|
|
(uint16_t) (NewFeedback.start ^ NewFeedback.cmd1 ^ NewFeedback.
|
|
|
|
(uint16_t) (NewFeedback.start ^ NewFeedback.
|
|
|
|
cmd2 ^ NewFeedback.speedR ^ NewFeedback.
|
|
|
|
cmd1 ^ NewFeedback.cmd2 ^ NewFeedback.
|
|
|
|
speedL ^ NewFeedback.speedR_meas ^ NewFeedback.
|
|
|
|
speedR ^ NewFeedback.speedL ^ NewFeedback.
|
|
|
|
speedL_meas ^ NewFeedback.batVoltage ^ NewFeedback.
|
|
|
|
speedR_meas ^ NewFeedback.speedL_meas ^
|
|
|
|
boardTemp);
|
|
|
|
NewFeedback.batVoltage ^ NewFeedback.boardTemp);
|
|
|
|
|
|
|
|
|
|
|
|
// Check validity of the new data
|
|
|
|
// Check validity of the new data
|
|
|
|
if (NewFeedback.start == START_FRAME
|
|
|
|
if (NewFeedback.start == START_FRAME
|
|
|
|
@ -259,8 +266,8 @@ void loop(void)
|
|
|
|
display.print("Speed : ");
|
|
|
|
display.print("Speed : ");
|
|
|
|
old_cursorX = display.getCursorX();
|
|
|
|
old_cursorX = display.getCursorX();
|
|
|
|
old_cursorY = display.getCursorY();
|
|
|
|
old_cursorY = display.getCursorY();
|
|
|
|
display.fillRect(old_cursorX,old_cursorY,(6*4),8,SSD1306_BLACK); // erase previous display
|
|
|
|
display.fillRect(old_cursorX, old_cursorY, (6 * 4), 8, SSD1306_BLACK); // erase previous display
|
|
|
|
display.setCursor(old_cursorX,old_cursorY);
|
|
|
|
display.setCursor(old_cursorX, old_cursorY);
|
|
|
|
display.print(iTest);
|
|
|
|
display.print(iTest);
|
|
|
|
display.display();
|
|
|
|
display.display();
|
|
|
|
// Calculate test command signal
|
|
|
|
// Calculate test command signal
|
|
|
|
|