This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
microcontroller_annoyances [2008/06/10 16:48] pcbgcode Added precautions for using debugWIRE |
microcontroller_annoyances [2016/01/28 18:05] (current) |
||
---|---|---|---|
Line 4: | Line 4: | ||
====== AVRs ====== | ====== AVRs ====== | ||
+ | |||
===== Calculating Fuses ===== | ===== Calculating Fuses ===== | ||
Line 9: | Line 10: | ||
WinAVR is great, better than AVR studio but there's no nice fuse selector like there is with AVR studio. Luckily there are two calculators | WinAVR is great, better than AVR studio but there's no nice fuse selector like there is with AVR studio. Luckily there are two calculators | ||
- [[http://www.vonnieda.org/AVRFuses/ | AVRFuses]] is a simple fuse programmer for the AVR series of microcontrollers from Atmel. It is written in C#.NET with the intention of being cross platform compatible with Windows, OS X and Linux. It is written to mimic the look, feel and utility of the AVR Studio fuse programmer. | - [[http://www.vonnieda.org/AVRFuses/ | AVRFuses]] is a simple fuse programmer for the AVR series of microcontrollers from Atmel. It is written in C#.NET with the intention of being cross platform compatible with Windows, OS X and Linux. It is written to mimic the look, feel and utility of the AVR Studio fuse programmer. | ||
- | - [[http://palmavr.sourceforge.net/cgi-bin/fc.cgi | AVR Fuse Calculator]] is a webpage that does it all | + | - [[http://www.engbedded.com/cgi-bin/fc.cgi/ | AVR Fuse Calculator]] is a webpage that does it all |
===== Fixing fuses ===== | ===== Fixing fuses ===== | ||
Line 56: | Line 57: | ||
So make sure to always use BOD fuses! | So make sure to always use BOD fuses! | ||
+ | |||
+ | ===== EEPROM corruption from brownouts ===== | ||
+ | Brownouts can cause the first location of the on-board EEPROM to be overwritten. | ||
+ | |||
+ | ''In addition to the precautions elsewhere on this Wiki, consider not using the first EEPROM location.'' | ||
+ | |||
===== Brownout fuses ===== | ===== Brownout fuses ===== | ||
Line 89: | Line 96: | ||
MOSI -> PE0, MISO -> PE1, SCK -> PB1 // --- //[[http://www.avrfreaks.net/wiki/index.php/Documentation:Things_That_Are_Broken|AVR Wiki]]// | MOSI -> PE0, MISO -> PE1, SCK -> PB1 // --- //[[http://www.avrfreaks.net/wiki/index.php/Documentation:Things_That_Are_Broken|AVR Wiki]]// | ||
+ | ===== SPI Master mode ===== | ||
+ | On some (all?) AVRs, if the SPI slave select (SS_) pin is an input and low, then the SPI interface will go into slave mode, even if you have previously selected master mode. Hope you weren't using that pin for something else. | ||
====== PIC ====== | ====== PIC ====== |