aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32f4/src/bin/usb_hid_mouse.rs
diff options
context:
space:
mode:
authorVo Trung Chi <[email protected]>2024-03-07 00:57:18 +0700
committerVo Trung Chi <[email protected]>2024-03-07 00:57:18 +0700
commit61653229b6c0c77235704dc3b4283f57deabc02b (patch)
treef252d7197f0857d2bbd3ec03d8875abb95fad881 /examples/stm32f4/src/bin/usb_hid_mouse.rs
parent315fb040ee15306158d1c7c24249ee08cd22e36a (diff)
stm32: add usb_hid_mouse example
Signed-off-by: Vo Trung Chi <[email protected]>
Diffstat (limited to 'examples/stm32f4/src/bin/usb_hid_mouse.rs')
-rw-r--r--examples/stm32f4/src/bin/usb_hid_mouse.rs32
1 files changed, 16 insertions, 16 deletions
diff --git a/examples/stm32f4/src/bin/usb_hid_mouse.rs b/examples/stm32f4/src/bin/usb_hid_mouse.rs
index add1ef306..0dc5f5804 100644
--- a/examples/stm32f4/src/bin/usb_hid_mouse.rs
+++ b/examples/stm32f4/src/bin/usb_hid_mouse.rs
@@ -10,8 +10,8 @@ use embassy_time::Timer;
10use embassy_usb::class::hid::{HidWriter, ReportId, RequestHandler, State}; 10use embassy_usb::class::hid::{HidWriter, ReportId, RequestHandler, State};
11use embassy_usb::control::OutResponse; 11use embassy_usb::control::OutResponse;
12use embassy_usb::Builder; 12use embassy_usb::Builder;
13use usbd_hid::descriptor::{MouseReport, SerializedDescriptor};
14use futures::future::join; 13use futures::future::join;
14use usbd_hid::descriptor::{MouseReport, SerializedDescriptor};
15use {defmt_rtt as _, panic_probe as _}; 15use {defmt_rtt as _, panic_probe as _};
16 16
17bind_interrupts!(struct Irqs { 17bind_interrupts!(struct Irqs {
@@ -127,22 +127,22 @@ join(usb_fut, hid_fut).await;
127struct MyRequestHandler {} 127struct MyRequestHandler {}
128 128
129impl RequestHandler for MyRequestHandler { 129impl RequestHandler for MyRequestHandler {
130fn get_report(&self, id: ReportId, _buf: &mut [u8]) -> Option<usize> { 130 fn get_report(&self, id: ReportId, _buf: &mut [u8]) -> Option<usize> {
131 info!("Get report for {:?}", id); 131 info!("Get report for {:?}", id);
132 None 132 None
133} 133 }
134 134
135fn set_report(&self, id: ReportId, data: &[u8]) -> OutResponse { 135 fn set_report(&self, id: ReportId, data: &[u8]) -> OutResponse {
136 info!("Set report for {:?}: {=[u8]}", id, data); 136 info!("Set report for {:?}: {=[u8]}", id, data);
137 OutResponse::Accepted 137 OutResponse::Accepted
138} 138 }
139 139
140fn set_idle_ms(&self, id: Option<ReportId>, dur: u32) { 140 fn set_idle_ms(&self, id: Option<ReportId>, dur: u32) {
141 info!("Set idle rate for {:?} to {:?}", id, dur); 141 info!("Set idle rate for {:?} to {:?}", id, dur);
142} 142 }
143 143
144fn get_idle_ms(&self, id: Option<ReportId>) -> Option<u32> { 144 fn get_idle_ms(&self, id: Option<ReportId>) -> Option<u32> {
145 info!("Get idle rate for {:?}", id); 145 info!("Get idle rate for {:?}", id);
146 None 146 None
147} 147 }
148} 148}