3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

Perfboard Hackduino (Arduino-compatible circuit)

Step 11Program ATMega chip w/Arduino and Extract

Program ATMega chip w/Arduino and Extract
«
  • 4589489433_e5c8aae9a6.jpg
  • 4589486545_0abb0ebcaf.jpg
  • 4590109526_5438f1774f.jpg
1. Program an Arduino, as you normally would.  I am uploading code that flashes S-O-S in morse code on every digital pin.  It is attached to this step. My version of hello world.

2. Using the IC extractor tool, slip both ends of the tool under either end of the chip.  This can take a bit of fidgeting to wedge them under, but once they are, yank on it!  The chip is often very secure in the IC socket, but you can't hurt it by pulling straight out after you have a secure hold on the chip.

3. I usually now replace the missing ATMega chip with the new chip ordered. Make sure it has the Arduino bootloader on it, though!


Here is the code in case you don't want to waste time downloading:

/*

S.O.S. morse code all LEDs!

Hello World for the Distressed Chip.

joe saavedra 2010
http://jos.ph

*/

int S = 1;
int O = 2;

void setup(){
  for(int i=0; i<14; i++){
    pinMode(i, OUTPUT);
  }
}

void loop(){
 
  flash(S);
  flash(O); 
  flash(S);
 
  delay(750);
 
}
 
void flash(int letter){
  switch(letter){
    case 1:  //the letter 'S' !
      dot();
      dot();
      dot();   
    break;
   
    case 2:  //the letter 'O' !
      dash();
      dash();
      dash();
    break;
  }
  delay(250); //break between each letter
}
  
void dot(){
  for(int j=0; j<14; j++){
    digitalWrite(j, HIGH);
  }
  delay(130); //length of dot

  for(int j=0; j<14; j++){
    digitalWrite(j, LOW);
  } 
  delay(130); //space between dot
  return;
}
 
   
void dash(){
  for(int k=0; k<14; k++){
    digitalWrite(k, HIGH);
  }
  delay(250); //length of dash

  for(int k=0; k<14; k++){
    digitalWrite(k, LOW);
  }
  delay(130); //space between dash
  return;
}
 
   

« Previous StepDownload PDFView All StepsNext Step »
1 comment
Jan 4, 2012. 5:15 AMGofilord says:
Hey ummm... I have an arduino nano so I can't really preform this step.. is there any OTHER WAY for uploading a sketch do my hackduino? Like, maybe, using jumpers from an existing arduino or buying a cheap FTDI chip that I can use for all of my hackduinos?
Thanks!!

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
43
Followers
4
Author:jmsaavedra(http://jos.ph)