From 003c9d202aeeb428640cecfece1c20f9bcd7ddbd Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Tue, 27 Sep 2016 23:05:26 +0000 Subject: usb-serial: functional on f1. --- tests/usb-serial-rs485/usb_cdcacm.h | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) (limited to 'tests/usb-serial-rs485/usb_cdcacm.h') diff --git a/tests/usb-serial-rs485/usb_cdcacm.h b/tests/usb-serial-rs485/usb_cdcacm.h index 3228d0a..d4e47e0 100644 --- a/tests/usb-serial-rs485/usb_cdcacm.h +++ b/tests/usb-serial-rs485/usb_cdcacm.h @@ -32,18 +32,36 @@ extern "C" { #include #include - void usb_cdcacm_init(usbd_device **usb_dev); + enum cdcacm_pin { + CDCACM_PIN_NONE, + CDCACM_PIN_LED_TX, + CDCACM_PIN_LED_RX, + CDCACM_PIN_RS485DE, + }; + + usbd_device * usb_cdcacm_init(const usbd_driver *driver, const char *userserial); void usb_cdcacm_setup_pre_arch(void); - void usb_cdcacm_setup_post_arch(void); - void cdcacm_send_data(uint8_t *buf, uint16_t len); + void usb_cdcacm_setup_post_arch(usbd_device *dev); + void usb_cdcacm_poll(usbd_device *usbd_dev); void cdcacm_line_state_changed_cb(uint8_t linemask); - /* Call this if you have data to send to the usb host */ - void glue_data_received_cb(uint8_t *buf, uint16_t len); - /* These will be called by usb_cdcacm code */ - void glue_send_data_cb(uint8_t *buf, uint16_t len); + /** + * Called by the cdcacm core to toggle pins as need be + * @param port which serial port, 0 normally + * @param pin logical pin + * @param set set or clear + */ + void cdcacm_arch_pin(int port, enum cdcacm_pin pin, bool set); + + /** + * enable the tx emmpty irq for the logical port + * @param port + * @param set + */ + void cdcacm_arch_txirq(int port, bool set); + + void cdcacm_arch_set_line_state(int port, uint8_t dtr, uint8_t rts); - void glue_set_line_state_cb(uint8_t dtr, uint8_t rts); int glue_set_line_coding_cb(uint32_t baud, uint8_t databits, enum usb_cdc_line_coding_bParityType cdc_parity, enum usb_cdc_line_coding_bCharFormat cdc_stopbits); -- cgit