Files
@ a477ff27aff8
Branch filter:
Location: Jabel/Software/hoverboard-firmware-hack_modified20190825/Src/comms.c - annotation
a477ff27aff8
1.9 KiB
text/x-csrc
Updated Software repo
8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 8d9542865bd2 | #include "stm32f1xx_hal.h"
#include "defines.h"
#include "setup.h"
#include "config.h"
#include "stdio.h"
#include "string.h"
UART_HandleTypeDef huart2;
#ifdef DEBUG_SERIAL_USART3
#define UART_DMA_CHANNEL DMA1_Channel2
#endif
#ifdef DEBUG_SERIAL_USART2
#define UART_DMA_CHANNEL DMA1_Channel7
#endif
volatile uint8_t uart_buf[100];
volatile int16_t ch_buf[8];
//volatile char char_buf[300];
void setScopeChannel(uint8_t ch, int16_t val) {
ch_buf[ch] = val;
}
void consoleScope() {
#if defined DEBUG_SERIAL_SERVOTERM && (defined DEBUG_SERIAL_USART2 || defined DEBUG_SERIAL_USART3)
uart_buf[0] = 0xff;
uart_buf[1] = CLAMP(ch_buf[0]+127, 0, 255);
uart_buf[2] = CLAMP(ch_buf[1]+127, 0, 255);
uart_buf[3] = CLAMP(ch_buf[2]+127, 0, 255);
uart_buf[4] = CLAMP(ch_buf[3]+127, 0, 255);
uart_buf[5] = CLAMP(ch_buf[4]+127, 0, 255);
uart_buf[6] = CLAMP(ch_buf[5]+127, 0, 255);
uart_buf[7] = CLAMP(ch_buf[6]+127, 0, 255);
uart_buf[8] = CLAMP(ch_buf[7]+127, 0, 255);
uart_buf[9] = '\n';
if(UART_DMA_CHANNEL->CNDTR == 0) {
UART_DMA_CHANNEL->CCR &= ~DMA_CCR_EN;
UART_DMA_CHANNEL->CNDTR = 10;
UART_DMA_CHANNEL->CMAR = (uint32_t)uart_buf;
UART_DMA_CHANNEL->CCR |= DMA_CCR_EN;
}
#endif
#if defined DEBUG_SERIAL_ASCII && (defined DEBUG_SERIAL_USART2 || defined DEBUG_SERIAL_USART3)
memset(uart_buf, 0, sizeof(uart_buf));
sprintf(uart_buf, "1:%i 2:%i 3:%i 4:%i 5:%i 6:%i 7:%i 8:%i\r\n", ch_buf[0], ch_buf[1], ch_buf[2], ch_buf[3], ch_buf[4], ch_buf[5], ch_buf[6], ch_buf[7]);
if(UART_DMA_CHANNEL->CNDTR == 0) {
UART_DMA_CHANNEL->CCR &= ~DMA_CCR_EN;
UART_DMA_CHANNEL->CNDTR = strlen(uart_buf);
UART_DMA_CHANNEL->CMAR = (uint32_t)uart_buf;
UART_DMA_CHANNEL->CCR |= DMA_CCR_EN;
}
#endif
}
void consoleLog(char *message)
{
HAL_UART_Transmit_DMA(&huart2, (uint8_t *)message, strlen(message));
}
|