mbed2 pre-final

Dependencies:   LCD_DISCO_F429ZI mbed BSP_DISCO_F429ZI

uart.cpp

Committer:
domino5740
Date:
2020-06-15
Revision:
5:7ca9ea4cde3a
Parent:
2:7dc265489818

File content as of revision 5:7ca9ea4cde3a:

#include "uart.h"
#include "mbed.h"

extern Serial pc;

unsigned int Uart::puts (char *pcCharTab, unsigned int uiCharTabSize) {
    
    unsigned int uiNullCheck;
    
    for(unsigned int i = 0; i < uiCharTabSize; i++) {
        if((pcCharTab[i] == '\0')) {
            uiNullCheck += 1;
        }
    }
    for(unsigned int i = 0; pcCharTab[i] != 0; i++) {
        pc.putc(pcCharTab[i]);
    }
    pc.putc('\r');
    return uiNullCheck ? 0 : 1;
}

unsigned int Uart::gets (char *pcRecCharTab, unsigned int uiCharTabSize) {
    
    unsigned int uiCharCounter = 0;
    char cRecChar = 0;
    
    do {
        cRecChar = pc.getc();
        pcRecCharTab[uiCharCounter] = cRecChar;
        if(uiCharCounter >= (uiCharTabSize - 1)) {
            return 1;
        }
        uiCharCounter++;
    }
    while (cRecChar != '\r');
    pcRecCharTab[uiCharCounter - 1] = '\0';
    return 0;
}

/*
unsigned int Uart::gets (char *pcRecCharTab, unsigned int uiRecCharTabSize) {
    unsigned int iTabIterator = 0;
    char cRecChar = 0;
    for(iTabIterator = 0; cRecChar != 13 ; iTabIterator++) {
        cRecChar = pc.getc();
        pcRecCharTab[iTabIterator] = cRecChar;
        if(iTabIterator >= (uiRecCharTabSize - 1)) {
            return 1;
        }
    }
    pcRecCharTab[iTabIterator - 1] = 0;
    return 0;
}
*/