
mbed2 pre-final
Dependencies: LCD_DISCO_F429ZI mbed BSP_DISCO_F429ZI
uart.cpp@5:7ca9ea4cde3a, 2020-06-15 (annotated)
- Committer:
- domino5740
- Date:
- Mon Jun 15 17:33:23 2020 +0000
- Revision:
- 5:7ca9ea4cde3a
- Parent:
- 2:7dc265489818
final
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
domino5740 | 2:7dc265489818 | 1 | #include "uart.h" |
domino5740 | 2:7dc265489818 | 2 | #include "mbed.h" |
domino5740 | 2:7dc265489818 | 3 | |
domino5740 | 2:7dc265489818 | 4 | extern Serial pc; |
domino5740 | 2:7dc265489818 | 5 | |
domino5740 | 2:7dc265489818 | 6 | unsigned int Uart::puts (char *pcCharTab, unsigned int uiCharTabSize) { |
domino5740 | 2:7dc265489818 | 7 | |
domino5740 | 2:7dc265489818 | 8 | unsigned int uiNullCheck; |
domino5740 | 2:7dc265489818 | 9 | |
domino5740 | 2:7dc265489818 | 10 | for(unsigned int i = 0; i < uiCharTabSize; i++) { |
domino5740 | 2:7dc265489818 | 11 | if((pcCharTab[i] == '\0')) { |
domino5740 | 2:7dc265489818 | 12 | uiNullCheck += 1; |
domino5740 | 2:7dc265489818 | 13 | } |
domino5740 | 2:7dc265489818 | 14 | } |
domino5740 | 2:7dc265489818 | 15 | for(unsigned int i = 0; pcCharTab[i] != 0; i++) { |
domino5740 | 2:7dc265489818 | 16 | pc.putc(pcCharTab[i]); |
domino5740 | 2:7dc265489818 | 17 | } |
domino5740 | 2:7dc265489818 | 18 | pc.putc('\r'); |
domino5740 | 2:7dc265489818 | 19 | return uiNullCheck ? 0 : 1; |
domino5740 | 2:7dc265489818 | 20 | } |
domino5740 | 2:7dc265489818 | 21 | |
domino5740 | 2:7dc265489818 | 22 | unsigned int Uart::gets (char *pcRecCharTab, unsigned int uiCharTabSize) { |
domino5740 | 2:7dc265489818 | 23 | |
domino5740 | 2:7dc265489818 | 24 | unsigned int uiCharCounter = 0; |
domino5740 | 2:7dc265489818 | 25 | char cRecChar = 0; |
domino5740 | 2:7dc265489818 | 26 | |
domino5740 | 2:7dc265489818 | 27 | do { |
domino5740 | 2:7dc265489818 | 28 | cRecChar = pc.getc(); |
domino5740 | 2:7dc265489818 | 29 | pcRecCharTab[uiCharCounter] = cRecChar; |
domino5740 | 2:7dc265489818 | 30 | if(uiCharCounter >= (uiCharTabSize - 1)) { |
domino5740 | 2:7dc265489818 | 31 | return 1; |
domino5740 | 2:7dc265489818 | 32 | } |
domino5740 | 2:7dc265489818 | 33 | uiCharCounter++; |
domino5740 | 2:7dc265489818 | 34 | } |
domino5740 | 2:7dc265489818 | 35 | while (cRecChar != '\r'); |
domino5740 | 2:7dc265489818 | 36 | pcRecCharTab[uiCharCounter - 1] = '\0'; |
domino5740 | 2:7dc265489818 | 37 | return 0; |
domino5740 | 2:7dc265489818 | 38 | } |
domino5740 | 2:7dc265489818 | 39 | |
domino5740 | 2:7dc265489818 | 40 | /* |
domino5740 | 2:7dc265489818 | 41 | unsigned int Uart::gets (char *pcRecCharTab, unsigned int uiRecCharTabSize) { |
domino5740 | 2:7dc265489818 | 42 | unsigned int iTabIterator = 0; |
domino5740 | 2:7dc265489818 | 43 | char cRecChar = 0; |
domino5740 | 2:7dc265489818 | 44 | for(iTabIterator = 0; cRecChar != 13 ; iTabIterator++) { |
domino5740 | 2:7dc265489818 | 45 | cRecChar = pc.getc(); |
domino5740 | 2:7dc265489818 | 46 | pcRecCharTab[iTabIterator] = cRecChar; |
domino5740 | 2:7dc265489818 | 47 | if(iTabIterator >= (uiRecCharTabSize - 1)) { |
domino5740 | 2:7dc265489818 | 48 | return 1; |
domino5740 | 2:7dc265489818 | 49 | } |
domino5740 | 2:7dc265489818 | 50 | } |
domino5740 | 2:7dc265489818 | 51 | pcRecCharTab[iTabIterator - 1] = 0; |
domino5740 | 2:7dc265489818 | 52 | return 0; |
domino5740 | 2:7dc265489818 | 53 | } |
domino5740 | 2:7dc265489818 | 54 | */ |
domino5740 | 2:7dc265489818 | 55 |