Ich habe vor einiger Zeit ein Gertboard gekauft, und eine der Funktionen, die es an Bord hat, ist ein ATMega328 (DIP). Da das Gertboard jedoch für die Verwendung mit dem Raspberry Pi ausgelegt ist, arbeitet es nur mit 3,3 V, sodass die Taktrate auf ~ 12 MHz begrenzt ist.
Das Programmieren über den Raspberry Pi ist allerdings ziemlich umständlich. Stattdessen möchte ich den Chip auf ein Arduino Uno-Board übertragen, damit ich Skizzen von meinem Desktop-PC hochladen kann. Ich würde es dann für den normalen Betrieb wieder auf das Gertboard übertragen.
Das Problem ist, dass mein Uno mit den typischeren 5 V / 16 MHz arbeitet.
Ist es sicher, dies zu versuchen? Muss ich Konfigurationsänderungen in der IDE vornehmen, um eine andere Taktrate zu berücksichtigen?
quelle
Antworten:
Die Taktrate ausgewählt wird wirken sich sowohl auf
delay*()
undmillis()
/micros()
als auch die Funktionen in<util/delay.h>
, also Sie müssen das Zielsystem die Geschwindigkeit richtig Uhr verwenden , wenn Sie eine dieser Funktionen verwenden. Dies kann einfach durch Bearbeitenboards.txt
und Kopieren eines vorhandenen Eintrags für das Uno und Ändern des Werts desf_cpu
Parameters entsprechend dem Zielsystem (in diesem Fall12000000
) erfolgen.Der Spannungsunterschied spielt keine Rolle, da der Chip mit beiden Spannungen betrieben werden kann und keine Verbindung zwischen dem 5-V-System und dem 3,3-V-System hergestellt wird.
quelle