eeeck
6ad1acc2ee
Removing duplicate, again...
2026-06-17 18:07:22 +02:00
eeeck
6bcc977c65
Switch ISR semaphore release to normal semaphore release
2026-06-16 23:07:50 +02:00
eeeck
8ec62d9fcd
Fix typo in comment
2026-06-16 23:07:03 +02:00
eeeck
cbefb45099
Add externs
2026-06-16 23:06:54 +02:00
eeeck
e123c0172f
Small variable name change
2026-06-16 22:39:30 +02:00
eeeck
59b0aca092
Refactor: implement data relay from vCANLoggerListen to xUARTQueue
...
- No RTOS event, just queue put and get: cleaner way to send data and
more clear separation of concerns
2026-06-16 22:09:49 +02:00
eeeck
74bf4bde77
Implement identical queue drain for CAN2 to that of CAN1
2026-06-16 21:29:32 +02:00
eeeck
3691918196
Non-blocking on CAN1 queue check
...
- Check queue instantly
- Use DMA to move tx_buffer to UART peripheral
- Use a semaphore to DMA is being done, to avoid moving to next loop
iteration and overwriting tx_buffer
- HAL_UART_TxCpltCallback will release semaphore when DMA done
2026-06-16 21:27:52 +02:00
eeeck
79f317cec5
Wait until CAN1 or CAN2 save anything to FIFO buffer
...
- Moving CAN event flag to vCANLoggerListen to avoid possible race
condition and to make ISR leaner
2026-06-16 21:06:32 +02:00
eeeck
bc71cd7371
Add comment headers
2026-06-16 20:06:21 +02:00
eeeck
84980d2378
Implement hex converter
...
- Avoids snprintf
- Can be read from minicom/screen, but it's also friendly for other MCU
- This single function was AI generated
2026-06-16 19:55:44 +02:00
eeeck
8b1b3b7ff3
Implement safe UART semaphore release inside ISR
...
- It uses safe way to release semaphore
- Yields in case task interrupted was of lower priority: UART has
minimal latency
2026-06-16 19:49:13 +02:00
eeeck
0d0e485193
Initialize cansend headers
2026-06-16 19:34:12 +02:00