Programmer votre USBasp comme un Arduino


Introduction:

Dans ce chapitre, nous allons mettre en oeuvre un programme permettant de faire clignoter les deux leds de la carte USBasp.

Configuration de l’IDE Arduino:

Version de l’IDE Arduino 1.6.8.

Ouvrir votre IDE et aller dans le menu Fichier>Préférences.

Saisir l’URL suivante https://raw.githubusercontent.com/sleemanj/optiboot/master/dists/package_gogo_diy_atmega8_series_index.json
Dans le gestionnaire de cartes supplémentaires.

USBasp_Arduino1.png

Aller dans le menu Outils>Type de carte>Gestionnaire de carte

Faire défiler la liste, jusqu’à avoir les information, ci-dessous et faire un clique sur more info.

Et faire un clique sur installer.

Maintenant on peut programmer les ATmega8.
La carte devrait apparaître dans le menu de votre interface de programmation.

Mais il manque la fréquence de 12MHz, qui est la fréquence de l’oscillateur de l’USBasp.

Maintenant nous allons ajouter la fréquence 12MHz. Pour cela,vous devez aller dans vos préférences et faire un clique sur le chemin du fichier preferences.txt.


Naviguer suivant le chemin en fonction de votre configuration:
C:>Users>Christophe>AppData>Local>Arduino15>packages>diy_atmega8_series>hardware>avr>2015.11.15. Puis éditer le fichier boards.txt

Ajouter dans le Speed Menu:

atmega8_diy.menu.clock.12MHz=12MHz Crystal/Resonator
atmega8_diy.menu.clock.12MHz.build.f_cpu=12000000L
atmega8_diy.menu.clock.12MHz.bootloader.low_fuses=0xEF

Sauvegarder et relancer l’IDE Arduino.
Maintenant nous avons l’option 12MHz.

Premier programme:

Nous allons créer un programme pour faire clignoter les deux LEDs, afin de faire un test de bon fonctionnement.
Choisir les mêmes paramètres que ci-dessous dans l’IDE Adruino.

Charger le programme suivant:

/*
  This example code is in the public domain.
*/

// Les broches des LEDs
#define PIN_LEDR 14
#define PIN_LEDG 15

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize LEDs pin as outputs.
  pinMode(PIN_LEDR, OUTPUT);
  pinMode(PIN_LEDG, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(PIN_LEDR, HIGH);   // turn the LED off (HIGH=OFF, LOW=ON)
  digitalWrite(PIN_LEDG, LOW);   // turn the LED on (HIGH=OFF, LOW=ON)
  delay(500);              // attente 0.5s  
  digitalWrite(PIN_LEDR, LOW);
  digitalWrite(PIN_LEDG, HIGH);
  delay(500); 
}

Brancher votre USBasp. Et mettre votre USBasp en mode mise à jour via le JP2.

Puis téléverser le programme.

Enlever le cavalier du JP2 et le mettre sur JP1.
Maintenant les LED clignotent.