diff options
author | Nick Foster <nick@nerdnetworks.org> | 2010-08-12 15:17:58 -0700 |
---|---|---|
committer | Nick Foster <nick@nerdnetworks.org> | 2010-08-12 15:17:58 -0700 |
commit | e42230e7fae59d91186d21ab6ba8311421649375 (patch) | |
tree | ae04e44e64ead60a01e51149fddd5b67232da236 /firmware/microblaze/lib/hal_io.c | |
parent | 0d7c9c86aa3b307b652378d3bb17e052cbc987e1 (diff) | |
download | uhd-e42230e7fae59d91186d21ab6ba8311421649375.tar.gz uhd-e42230e7fae59d91186d21ab6ba8311421649375.tar.bz2 uhd-e42230e7fae59d91186d21ab6ba8311421649375.zip |
Added UART transactions to the DUDE/BRO protocol.
Diffstat (limited to 'firmware/microblaze/lib/hal_io.c')
-rw-r--r-- | firmware/microblaze/lib/hal_io.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/firmware/microblaze/lib/hal_io.c b/firmware/microblaze/lib/hal_io.c index 8bb5e2af8..549990311 100644 --- a/firmware/microblaze/lib/hal_io.c +++ b/firmware/microblaze/lib/hal_io.c @@ -206,6 +206,18 @@ fputstr(hal_uart_name_t u, const char *s) } int +fnputstr(hal_uart_name_t u, const char *s, int len) +{ + int x; + while (*s && (len > x)) { + fputchar(u, *s++); + x++; + } + + return x; +} + +int putstr(const char *s) { return fputstr(DEFAULT_UART, s); @@ -233,6 +245,15 @@ fgets(hal_uart_name_t u, char * const s) return s; } +int +fngets(hal_uart_name_t u, char * const s, int len) +{ + char *x = s; + while(((*x=(char)hal_uart_getc(u)) != '\n') && ((x-s) < len)) x++; + *x = 0; + return (x-s)-1; +} + char * gets(char * const s) { |