Updated with info on the crystal and timing issues.w
This commit is contained in:
parent
65928780d9
commit
083b95b61d
23
README.md
23
README.md
|
@ -9,6 +9,7 @@ Over time, I'm planning to add support for multiple AVR MCUs, however that
|
|||
may end up requiring more memory, so extensive of use of define macros will
|
||||
likely end up being the end result.
|
||||
|
||||
|
||||
## Features:
|
||||
|
||||
- Multiple Baud Rates: 300, 600, 1200, 2400, 9600 ...
|
||||
|
@ -18,6 +19,7 @@ likely end up being the end result.
|
|||
- Hardware abstraction API
|
||||
- No Interrupt service routines required.
|
||||
- BSD-3 Licensing, aka you can use this for whatevery you want pretty much.
|
||||
- Runtime configuration of serial settings.
|
||||
|
||||
|
||||
|
||||
|
@ -49,6 +51,10 @@ void echo_char(char* cmd) {
|
|||
}
|
||||
|
||||
int main() {
|
||||
usart0_init();
|
||||
serial0_enable_parity_bit(2); //odd parity
|
||||
sei(); //enable interrupts, not needed right now.
|
||||
|
||||
while(1) {
|
||||
echo_char();
|
||||
}
|
||||
|
@ -62,5 +68,20 @@ int main() {
|
|||
It's required to set the fuses in the chip for 8Mhz, otherwise a baud rate
|
||||
of 9600 will result in errors at a 7% rate.
|
||||
|
||||
Another is that I need to design a standard naming scheme.
|
||||
### Internal Crystal
|
||||
|
||||
The internal crystal oscillator can have up too 10% variation. This doesn't
|
||||
seem like a lot, but it makes a huge differnce.
|
||||
|
||||
for one of the Atmega 328p MCUs I tested it woul return garbage data to a
|
||||
a serial terminal at 8-N-1 4800 baud.
|
||||
|
||||
when I set the usb to serial adapter too 7-N-1 I would stop having issues
|
||||
suddenly.
|
||||
|
||||
going back to 8-N-1 on the usb to serial adapter and then changing it's baud
|
||||
rate too 4825 totally fixed the issue. This told me that the crystal that
|
||||
the 328p was clocking off of was faster than it should be.
|
||||
|
||||
TLDR; You should really use a decent external clock for async serial otherwise
|
||||
you are going to have a bad time.
|
||||
|
|
Loading…
Reference in New Issue