1#include "ch32_usbcan_shared.hpp"
3#if defined(RCC_APB1Periph_USB) && defined(CAN1) && !defined(CAN2)
6extern "C" __attribute__((interrupt(
"WCH-Interrupt-fast"))) void
7USB_LP_CAN1_RX0_IRQHandler(
void)
9 using namespace LibXR::CH32UsbCanShared;
11 if (
auto fn = usb_irq_cb.load(std::memory_order_acquire))
15 if (
auto fn = can1_rx0_cb.load(std::memory_order_acquire))
22extern "C" __attribute__((interrupt(
"WCH-Interrupt-fast"))) void
23USB_HP_CAN1_TX_IRQHandler(
void)
25 using namespace LibXR::CH32UsbCanShared;
27 if (
auto fn = usb_irq_cb.load(std::memory_order_acquire))
31 if (
auto fn = can1_tx_cb.load(std::memory_order_acquire))