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]
Jon Chandler at Digital DIY offers these Commandments for using PICs. They’re not just applicable to PICs, however — these tips hold true for most microcontrollers and are good to keep in mind. He writes: [via]
1. All VSS and VDD pins on the chip must be connected.
Multiple pins are not put there for your convenience. They must all be connected for the chip to work properly. In the picture below, the VDD pins 11 and 32 must be connected to V+ and VSS pins 12 and 31 connected to ground.
2. Bypass caps of 0.1 micro-farad are to be installed across VDD and VSS as close to the chip as possible.
Bypass caps must be used regardless of any other capacitors in the power supply circuit. These may appear insignificant compared to large filter capacitors or capacitors used for the voltage regulator, but they must be used.
3. /MCLR must be pulled to VDD with a 10k resistor or explicitly disabled in code as Graham has explained.
A floating /MCLR pin may lead to intermittent operation, if the chip operates at all.
[editors note: on a PIC, the /MCLR pin is used to clear flash memory for reprogramming. Failure to tie it high or disable it in software can result in PIC amnesia]
4. Ensure that multiplexed port pins are correctly set up.
Many port pins can have multiple functions depending on how the PIC is configured. When using these pins, ensure that the desired function is enabled. Most notable are pins with analog functions, which often default to the analog state. When planning to use these pins for digital functions, such as driving an LED or reading a switch, the digital function must be specified.
5. If using a development board, verify the purpose and connection of jumpers and accessories on the board, and understand the effect these may have on your circuit.
For example, if the development board has a pot connected to one of the analog inputs, your sensor input will be inaccurate or not seen at all. Digital inputs may never change if the pot is rotated all the way to one end.
6. The first programming step is a blinking LED program.
Trivial and silly, yes. It verifies that the power supply is working, the chip is running, and that the programmer can actually program the chip. If the LED flash rate is set to 1 second, it’s also easy to verify that the clock is operating at the right frequency.
Commandments for Using PICs – [Link]
This LPC2138 microcontroller-based application converts a standard television into a high-functioning oscilloscope. The digital storage oscilloscope has a sampling rate of 160,000 samples per second and generates high-resolution video at 512 × 240 pixels. Neither a video controller nor extra RAM are required. Five different voltages on the five analog inputs can be monitored simultaneously. [via]
ARM TV-Based Oscilloscope – [Link]
Microcontrollers usually don’t have specific ports for measuring currents, but they do have ADC channels through which you can measure analog voltages of a certain range. This means a dc current can be indirectly measured by a microcontroller’s ADC channel by first converting the current into voltage. The simplest way of doing this is to place a resistance in series with the current path and measure the voltage drop across it. But hold on, if you place an additional resistance in the circuit, it will affect the original current. Therefore, we need to use a very small value resistance so that it’s effect in the circuit current won’t be significant.
How to measure dc current with a microcontroller? – [Link]
James Bowman writes: [via]
Gameduino connects your Arduino to a VGA monitor and speakers, so anyone who can write an Arduino sketch can create video games. It’s packed full of 8-bit game goodness: hundreds of sprites, smooth scrolling, multi-channel stereo sound.
Gameduino: a game adapter for microcontrollers - [Link]
Tact switches are widely used as digital input devices. Normally one tact switch requires one digital I/P pin of a microcontroller but if you want to interface a matrix of such switches (say a 16 digit keypad), assigning a digital I/O pin for each key won’t be a good idea. You need to think about the way to minimize the required number of digital I/O pins of microcontroller. A very popular method is a keypad matrix where the keys are arranged into rows and columns so that a 4×4 (16) tact switches can be interfaced to a microcontroller using only 4+4 = 8 I/O pins. [via]
Theory of Matrix Keypad – [Link]
Microcontrollers are widely used in measuring various physical variables. The techniques involved in the measurements could be different for individual variable type and are mostly based on the characteristics of the variables to be measured. This tutorial describes some methods for measuring the capacitance of a capacitor using microcontrollers. The techniques use the characteristics of the capacitor itself and are therefore universal and can be easily implemented with any microcontrollers.
How to measure capacitance with a microcontroller? – [Link]
RFID is a technology that uses radio waves for transmitting the identity (unique serial number) of an object or a person. If you have an electronic key to access your office building, it probably uses the same technology. An RFID system has a reader and a transponder (also called tag). The reader transmits electromagnectic waves in its surrounding through an antenna system, and when a tag passes passes through the zone, it is activated and the reader can read the identification data stored inside the electronic tag.
Radio frequency identification (RFID) with a microcontroller – [Link]
For his USC Rocket Propulsion Lab, Chris Fenton designed this project using a Picaxe 18X microcontroller which accepts a GPS NMEA data stream, pulls out the altitude and logs it to a 24LC512 external EEPROM. Upon recovery the data is then read from the EEPROM. Source code for the Picaxe and hand drawn schematic for this hasty project are provided. [via]
Model rocket GPS altimeter using Picaxe 18X – [Link]
Many AVR microcontrollers are capable of doing Analogue to Digital Conversion. The ATmega168 has 6 ports (8 ports on the SMD packages) that can be used for analogue input. This tutorial shows you how.
Analogue to Digital Conversion on an ATmega168 - [Link]