X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fcommon%2Fusb_serial.rs;h=3f9e48f7faff8a81e244e477744dad5e0fce5c68;hb=0871390c5b1e3a48169af1aa545951bca7c8253f;hp=6f28e52652baf245fa902ce42d97fe65f41db471;hpb=1364963a63e0f2ed2c46eebbb7afcd3997258c78;p=gps-watch.git diff --git a/src/common/usb_serial.rs b/src/common/usb_serial.rs index 6f28e52..3f9e48f 100644 --- a/src/common/usb_serial.rs +++ b/src/common/usb_serial.rs @@ -25,11 +25,16 @@ use nvic; use clock; extern { - fn USB_VcomInit(); + fn USB_VcomInit(vid: u16, pid: u16); + fn USB_VcomDeinit(); } pub unsafe fn init(vid: u16, pid: u16) { - USB_VcomInit(); + USB_VcomInit(vid, pid); +} + +pub unsafe fn shutdown() { + USB_VcomDeinit(); } #[no_mangle] @@ -43,6 +48,15 @@ pub unsafe extern fn USB_DeviceIsrEnable() nvic::enable_irq(irq_number); } +#[no_mangle] +#[allow(non_snake_case)] +pub unsafe extern fn USB_DeviceIsrDisable() +{ + let irq_number = 24; // USB0 + + nvic::disable_irq(irq_number); +} + #[no_mangle] #[allow(non_snake_case)] pub unsafe extern fn USB_DeviceClockInit()