charger un bootloader avec une Arduino decimila

Bonsoir

étant tout nouveau sur ce forum je tiens à vous dire déjà merci pour tous les info que j'ai plus aprendre.

j'ai une arduino diecimila qui en est à son 5iem projets genial. :slight_smile:

là je voudrai integré juste le chip atmega168 dans un autre projet

j'ai découvert qu'on pouvait à partir d'un atmega168 vierge
suivre la procedure:
http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html#top
charger le bootloader "ATmegaBOOT_168_diecimila.hex"
puis programer le sketch aproprié

sortir l'atmega de l'arduino
et le monter sur le CI final

quelqu'un a t'il reussi cette manip

j'attend la confirmation pour commander les chip atmega168

d'avance merci

Je n'ai pas tenté cette manip. Je ne vois pas pourquoi ça ne marcherait pas.

C'est faisable, je l'ai fait en utilisant un avrispmk II pour bootloader un atmega168 TQFP, j'ai charger ensuite le sketch par l'isp et changé les fuses pour fonctionner sans quartz.

Je travaille sur Mac.

J'ai galéré un moment :

Ici

bon bin commande de Atmega128
on verra bien
à 2.8? le chip c'est pas la ruine

apres test je vous refais un topo

@++

Attention,

Atmega168 ou 128 ?

Les deux ne sont pas de la même famille, vérifie que le modèle soit supporté par ton programmeur.

oups boulette de frappe clavier
c'est bien des Atmega168 -20 que j'ai commandé

expédition aujourd'huy donc fin de sem test...

@++

ps:j'en profite pour soumettre une question
j'ai aussi une arduino diecimila (5v) 16 mhz
et une arduino pro (3.3v) 8mhz

comment ce fait que delay(1000) donne à peu près le meme temps ??

Ta question, c'est pourquoi c'est le même temps ou bien pourquoi c'est à peu près ?

Dans le premier cas : encore heureux que le temps soit le même..

delay(1000) fait une pause de 1000 millisecondes et les secondes sont les mêmes partout, c'est une grandeur physique universelle qui vaut en tout point de la Terre et quel que soit le système informatique ou électronique.

Pourquoi voudrais-tu que ce soit différent ? Les compilateurs savent quelle est l'horloge de ton microcontrôleur donc lors de la compilation, ils savent s'ils doivent diviser la fréquence par 8 000 ou par 16 000 pour retrouver 1 milliseconde.

Dans le second cas : l'horloge est très rapide mais elle n'est pas forcément très rapide, il peut y avoir une variation mais cela m'étonnerait que tu arrives à la voir "à l'oeil nu" sans appareil de mesure. Pour compter des secondes et des minutes, on utilise parfois des quartz de 32,768 KHz pour avoir des diviseurs de seconde plus précis.

merci luj06 de ta rapidité

bien sur que 1sec = 1000 mili sec

en fait ma question est comment à partir d'un meme prog .pde
Arduino IDE lors du "upload to I/O board" sait quel arduino est connecté
un Atmega à 8 ou 16 mhz

je suppose que si je charge un sketch via une dicimila à 16mhz
puis je sors le chip Atmega168 pour le mettre sur un proto avec un quarzt à une autre freq mes tempo seront fausses

du style freq à 20mhz mes tempo seront trop court de 16/20

@++

J'ai fais des essais dans ce sens, dans l'IDE Arduinoo il faut identifier la plaque que tu utilise dans l'onglet "tools", probablement que c'est de cette façon que la cadence est déterminée.

Lors de mes essais, j'ai chargé des sketch sur un atmega cadencé à 16 MHz et ensuite j'ai changé le quartz.

J'ai testé avec 8MHz, 4MHz, 2MHz, 1MHz et 32,768 KHz, le timming se ralenti dans la même proportion que la valeur du quartz.

bonjour Jean françois

justement j'avais l'intention d'utiliser l'arduino diecimila pour:
en partant d'un chip vierge
en premier charger le bootloader "ATmegaBOOT_168_diecimila.hex"
puis développer un sketch avec l'IDE Arduino bien pratique
puis plugger l'atmega directement sur le Circuit Imprimé final

là la question du quartz se pose.
soit rester sur du 16mhz et les timing sont identiques
soit c'est le binz pour re_estimer (proportionel) les timings
certe c'est à peu près une règle de trois pour la fonction delay(x)
mais pour les durées d'instructions c'est une autre paire de manche :-[

bon y a ka , puis mesurer au scope et/ou analyseur logique

@++

:slight_smile: :slight_smile: :slight_smile: :slight_smile: :slight_smile: :slight_smile: :slight_smile:

ça marcheuuuuuuuuuuuuu :o

genial
un Atmega168 à moins de 3? + 1 quarzt à 16Mhz + 1R/C pour le reset
et roulez......

http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html#top
allez y c'est tout bon :slight_smile:

Bonne nouvelle,malheureusement uniquement pour PC cette méthode :-[

Re bonsoir

et sous Mac en Emulation WinDaube t'as essayé ?

bon il reste la question des Frequences quartz
avec les sketchs qui utilisent les timers
genre PWM
ou servo RC
enfin tous prog qui utilisent des delay(x) pour ajuster
quid de la vitesse (baud rate) de la ligne série RS

houla pleins de questions

je crois que je vais rester sur 16Mhz
domage car les chip peuvent monter à 20Mhz

alors si vous avez des idées des essais concluant ou pas
n'hesiter pas

@++