[2.0.x] LPC176x Serial cleanup (#11032)

This commit is contained in:
Chris Pepper
2018-06-17 02:59:22 +01:00
committed by Scott Lahteine
parent c1269c2ec1
commit 0312c42f9d
17 changed files with 152 additions and 290 deletions

View File

@ -40,7 +40,8 @@ class Print {
void setWriteError(const int err = 1) { write_error = err; }
public:
Print() : write_error(0) {}
virtual ~Print() {}
int getWriteError() { return write_error; }
void clearWriteError() { setWriteError(0); }
@ -74,7 +75,7 @@ class Print {
size_t println(double, int = 2);
size_t println(const Printable&);
size_t println(void);
size_t printf(const char *argList, ...);
virtual size_t printf(const char *argList, ...);
};
#endif // _CMSIS_PRINT_H_

View File

@ -47,9 +47,9 @@ class Stream : public Print
int peekNextDigit(); // returns the next numeric digit in the stream or -1 if timeout
public:
virtual int available() = 0;
virtual int read() = 0;
virtual int peek() = 0;
virtual size_t available() = 0;
virtual int16_t read() = 0; // signed int required for error (empty buffer) value
virtual int16_t peek() = 0;
virtual void flush() = 0;
Stream() {_timeout=1000;}

View File

@ -211,7 +211,7 @@ void CDC_BulkIn(void) {
if (numBytesAvail > 0) {
numBytesAvail = numBytesAvail > (USB_CDC_BUFSIZE - 1) ? (USB_CDC_BUFSIZE - 1) : numBytesAvail;
for(uint32_t i = 0; i < numBytesAvail; ++i) {
BulkBufIn[i] = usb_serial.transmit_buffer.read(); //todo: optimise
usb_serial.transmit_buffer.read(&BulkBufIn[i]);
}
USB_WriteEP(CDC_DEP_IN, &BulkBufIn[0], numBytesAvail);
} else {

View File

@ -499,7 +499,7 @@ void SystemCoreClockUpdate (void) /* Get Core Clock Frequency */
}
// detect 17x[4-8] (100MHz) or 17x9 (120MHz)
static int can_120MHz() {
int isLPC1769() {
#define IAP_LOCATION 0x1FFF1FF1
uint32_t command[1];
uint32_t result[5];
@ -558,7 +558,7 @@ void SystemInit (void)
LPC_SC->CCLKCFG = 0x00000002; /* Setup CPU Clock Divider */
if(can_120MHz()) {
if(isLPC1769()) {
LPC_SC->PLL0CFG = 0x0000000E; /* configure PLL0 */
LPC_SC->PLL0FEED = 0xAA;
LPC_SC->PLL0FEED = 0x55;