Some time ago I published a short tutorial concerning the use of the internal EEPROM belonging to the Atmel ATmega328 (etc.) microcontroller in our various Arduino boards. Although making use of the EEPROM is certainly useful, it has a theoretical finite lifespan – according to the Atmel data sheet (download .pdf) it is 100,000 write/erase cycles.
One of my twitter followers asked me “is that 100,000 uses per address, or the entire EEPROM?” – a very good question. So in the name of wanton destruction I have devised a simple way to answer the question of EEPROM lifespan. We will write the number 170 (10101010 in binary) to each EEPROM address, then read each EEPROM address to check the stored number. The process is then repeated by writing the number 85 (01010101 in binary) to each address and then checking it again. The two binary numbers were chosen to ensure each bit in an address has an equal number of state changes.
After both of the processes listed above has completed, then the whole lot repeats. The process is halted when an incorrectly stored number is read from the EEPROM – the first failure. At this point the number of cycles, start and end time data are shown on the LCD.
The result? 1,230,163 write/read cycles (per address) before failure. That’s an order of magnitude+ beyond Atmel’s specs, though Atmel does tend to be conservative with their numbers.
EEPROM Destroyer - [Link]
Some time previous to getting my ham license, I was at a friends house who showed me an LC (inductance) meter built from a kit. It was based on a PIC16C22A, and I certainly do like the PIC mcu’s, but decided I would embark on the task of re-engineering my own that uses an Atmel AVR chip, the Atmega168. It’s been a journey. Also, I am giving away for free the schematics, firmware, and source code as open source under the GPL.
Inductance meter - [Link]
Riley Porter shows you how easy it is to replace a blown Atmel chip (the microcontroller heart of the Arduino) and to flash the Arduino software onto the new chip. For a few bucks and about 15 minutes of work, you can have your Arduino board back in business. [via]
Arduino – Replace and Re-Flash a Blown Microcontroller Chip – [Link]
Atmel has released the beta version of their Atmel® AVR Studio® 5, the Integrated Development Environment (IDE) for developing and debugging embedded Atmel AVR® applications. Version 5 provides one development environment for all 8-bit and 32-bit AVR microcontrollers. [via]
Atmel releases AVR Studio 5 beta – [Link]
Imagecraft has released the demo version of their ICCV8 C compiler tool for Atmel AVR microcontrollers. The demo version is unlimited for 45 days, and code limited thereafter to 64K, non-commercial use only.
Rapid app development with AVR App Builder – [Link]
Evil Mad Scientist Laboratories writes: [via]
One of our all-time favorite chips is the ATtiny2313.
It’s a little 20-pin AVR microcontroller that we’ve used in dozens of projects, including our high tech holiday decorations, some of our coolest pumpkins, our (digital) Larson Scanner, and some wacky papercraft– to name a few. It’s one of those few chips that we used often enough to justify a custom breakout board.
But… if there’s one thing that the ‘2313 is short on, it’s memory. With 2 kB of flash (program) memory and 128 bytes of RAM, it’s perfect for tiny single-purpose projects. But, it’s oh-so-easy to run up against that memory limit. And, that’s why we were so excited when Atmel began to announce their then-forthcoming ATtiny4313 in late 2009.
The 4313 has landed – [Link]
This article discuss in detail how to use development software to write software for Atmel AVR using AVR-Eclipse, AVR-GCC & AVRDude. It is written for beginners and shows step by step how to setup the development environment or IDE. It shows how to write the code and how to flash it on the chip. Check it out.
Developing Software for the Atmel AVR with AVR-Eclipse, AVR-GCC & AVRDude – [Link]
This article discuss how to control I/O ports of an AVR microcontroller using AVR-GCC. It goes through how the ports are organized and how to program AVR ports with AVR – GCC.
Controlling pins is one of the first things to learn when learning microcontrollers. It seems that each microcontroller type has its own port logic’s. So before using them it is important to understand every detail of it so you could efficiently use in projects. Let’s see how ports are organized in AVR and how successfully control them.
Controlling AVR I/O ports with AVR-GCC – [Link]
These are two new prototyping boards based on ATtiny25 and ATtiny2313 Atmel microcontrollers. They include most of the standard components like a reset button, an ISP header and also they have a prototyping area to build your own circuit. Even a 3 AA cell battery holder with on/off switch is included in the kit. Check details on the link below.
Tiny Proto Boards – [Link]