Files
2022-04-05 15:53:54 +08:00

46 lines
1.2 KiB
C++

#include <cmath>
#include "common_inc.h"
#include "screen.h"
#include "robot.h"
Robot electron(&hspi1, &hi2c1);
/* Thread Definitions -----------------------------------------------------*/
/* Timer Callbacks -------------------------------------------------------*/
/* Default Entry -------------------------------------------------------*/
void Main(void)
{
HAL_Delay(2000);
electron.lcd->Init(Screen::DEGREE_0);
electron.lcd->SetWindow(0, 239, 0, 239);
while (true)
{
for (int p = 0; p < 4; p++)
{
electron.SendUsbPacket(electron.usbBuffer.extraDataTx, 32);
electron.ReceiveUsbPacketUntilSizeIs(224); // last packet is 224bytes
while (electron.lcd->isBusy);
if (p == 0)
electron.lcd->WriteFrameBuffer(electron.GetLcdBufferPtr(),
60 * 240 * 3);
else
electron.lcd->WriteFrameBuffer(electron.GetLcdBufferPtr(),
60 * 240 * 3, true);
}
HAL_Delay(1);
}
}
extern "C"
void HAL_SPI_TxCpltCallback(SPI_HandleTypeDef* hspi)
{
electron.lcd->isBusy = false;
}