summaryrefslogtreecommitdiffstats
path: root/watch-library/hardware/watch/watch_private.c
diff options
context:
space:
mode:
authorjoeycastillo <joeycastillo@utexas.edu>2022-08-03 11:56:52 -0600
committerGitHub <noreply@github.com>2022-08-03 11:56:52 -0600
commite790a025787e0e1aa59b98b95e194cf4318d1578 (patch)
tree149bd53bbd46ebddd31957cc827a7c40ccf6f1a0 /watch-library/hardware/watch/watch_private.c
parent6d87f5a6268a9a516d8c577dfd71b39a5bfc384a (diff)
parentbcd3b666848214a735f37a5a4f08b157ba7bb3a1 (diff)
downloadSensor-Watch-e790a025787e0e1aa59b98b95e194cf4318d1578.tar.gz
Sensor-Watch-e790a025787e0e1aa59b98b95e194cf4318d1578.tar.bz2
Sensor-Watch-e790a025787e0e1aa59b98b95e194cf4318d1578.zip
Merge pull request #80 from joeycastillo/lfs
Movement: add a lil file system with lfs
Diffstat (limited to 'watch-library/hardware/watch/watch_private.c')
-rw-r--r--watch-library/hardware/watch/watch_private.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/watch-library/hardware/watch/watch_private.c b/watch-library/hardware/watch/watch_private.c
index 4b010d4a..cd607b8e 100644
--- a/watch-library/hardware/watch/watch_private.c
+++ b/watch-library/hardware/watch/watch_private.c
@@ -255,8 +255,15 @@ int _write(int file, char *ptr, int len) {
return 0;
}
-// this method could be overridden to read stuff from the USB console? but no need rn.
-int _read(void) {
+static char buf[256] = {0};
+
+int _read(int file, char *ptr, int len) {
+ (void)file;
+ int actual_length = strlen(buf);
+ if (actual_length) {
+ memcpy(ptr, buf, min(len, actual_length));
+ return actual_length;
+ }
return 0;
}
@@ -264,8 +271,17 @@ void USB_Handler(void) {
tud_int_handler(0);
}
+static void cdc_task(void) {
+ if (tud_cdc_n_available(0)) {
+ tud_cdc_n_read(0, buf, sizeof(buf));
+ } else {
+ memset(buf, 0, 256);
+ }
+}
+
void TC0_Handler(void) {
tud_task();
+ cdc_task();
TC0->COUNT8.INTFLAG.reg |= TC_INTFLAG_OVF;
}