-
Recent Posts
Recent Comments
Archives
- May 2022
- December 2021
- September 2021
- July 2021
- May 2021
- April 2021
- October 2019
- August 2019
- April 2019
- February 2019
- January 2019
- May 2018
- January 2018
- November 2017
- May 2017
- January 2017
- December 2016
- November 2016
- May 2016
- April 2016
- March 2016
- February 2016
- January 2016
- December 2015
- November 2015
- October 2015
- September 2015
- August 2015
- July 2015
- June 2015
- April 2015
- March 2015
- February 2015
- January 2015
- December 2014
- July 2014
- June 2014
- May 2014
- April 2014
- November 2013
- October 2013
- September 2013
- July 2013
- June 2013
- May 2013
- April 2013
- March 2013
- February 2013
- December 2012
- November 2012
- October 2012
- August 2012
- June 2012
- May 2012
- April 2012
- March 2012
- February 2012
Categories
Meta
Monthly Archives: May 2013
Arduino Blink Using GCC Inline Assembly
At less than 490 bytes, this version is less than half the size of the Arduino example program. Obviously, it could be made smaller. Note: Updated 3.16.2016 to conform with Arduino Inline Assembly Tutorials. Also available as a book, with … Continue reading
-Poof- My Delay Was Optimized Away!
In the Arduino IDE, compiler optimization is set at “–Os”, which means optimization for reduced code size (this level includes most level 2 optimizations also). It might have some surprising affects on your code. For example, Look at the below … Continue reading
Posted in Uncategorized
Tagged arduino, avr, compile, compiler, optimization, optimize
Leave a comment
Nested Interrupts
Normally, the AVR hardware clears the global interrupt flag (in SREG) before entering an interrupt. This means other interrupts are disabled inside the running handler until the handler finishes and exits. The RETI instruction is the normal function epilogue for … Continue reading
Bad Interrupt
If during the running of your program, an unexpected interrupt were to occur (an interrupt for which no handler is installed) bad things could occur. Default behavior is for the program to jump through the reset interrupt vector and attempt … Continue reading
Simple Test LED
This is an easy method to conduct quick pin/port tests with a microcontroller. It’s helpful for debugging purposes and can be used many times without needing to wire up a breadboard. I have a few of these scattered around the … Continue reading
Un-Bricking an ATtiny13
I was playing with my ATtiny13 timer #0 fast PWM settings to test the range of frequencies I could achieve. I started with the fastest setting using the internal oscillator. 9.6MHz, no prescaler, no timer divider and using a TCNT0 … Continue reading
Posted in Uncategorized
Tagged atmel, attiny, attiny13, avr, avrdude, brick, pwm, timer
Leave a comment
ATtiny13 Blink Using an Interrupt
Note to self: Ensure you set the fuse bits for internal oscillator correctly. Code:
ATtiny13 Project & SparkFun AVR Programmer
I decided to work on an ATtiny13 project. I will be using a test board based on the following schematic: Here is the board. Top: Bottom: Here are the results of a simple “blink” test program: Code: SparkFun AVR Programmer … Continue reading