mirror of https://github.com/ARMmbed/mbed-os.git
Merge pull request #57 from adamgreen/serialTxDropsRx
serial_putc() can cause rx bytes to be droppedpull/61/merge
commit
d51411294f
|
@ -249,12 +249,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
#warning TODO(@toyowata): need to fix a full-duplex bug? https://mbed.org/forum/bugs-suggestions/topic/4473/
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -247,11 +247,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -247,11 +247,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -283,11 +283,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -283,11 +283,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -276,11 +276,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
|
@ -257,11 +257,6 @@ int serial_getc(serial_t *obj) {
|
||||||
void serial_putc(serial_t *obj, int c) {
|
void serial_putc(serial_t *obj, int c) {
|
||||||
while (!serial_writable(obj));
|
while (!serial_writable(obj));
|
||||||
obj->uart->THR = c;
|
obj->uart->THR = c;
|
||||||
|
|
||||||
uint32_t lsr = obj->uart->LSR;
|
|
||||||
lsr = lsr;
|
|
||||||
uint32_t thr = obj->uart->THR;
|
|
||||||
thr = thr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int serial_readable(serial_t *obj) {
|
int serial_readable(serial_t *obj) {
|
||||||
|
|
Loading…
Reference in New Issue