Je suis d'accord avec zklapow mais vérifiez aussi la section des projets sur AVR Freaks. C'est ainsi que j'ai appris la veille des Arduinos. En outre, vous devrez presque certainement lire la fiche technique de votre puce pour faire quoi que ce soit d'utile. Il n'y a pas de fonctions intéressantes qui, par exemple, lisent une broche analogique car il y a tellement de paramètres que l'environnement Arduino vous cache. Laisse moi te donner un exemple:
int ledPin = 13; // LED connected to digital pin 13
// The setup() method runs once, when the sketch starts
void setup() {
// initialize the digital pin as an output:
pinMode(ledPin, OUTPUT);
}
// the loop() method runs over and over again,
// as long as the Arduino has power
void loop()
{
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(1000); // wait for a second
}
est à peu près similaire au C suivant (non testé):
int main(void) {
// I just randomly picked pin 6 on PORTB, this may not be the same on an arduino
DDRB = (1<<6); // set pin to output in data direction register
int i; // have to do this outside the for loop because of C standard
while(1) {
PORTB |= (1<<6); // send pin 6 high and leave other pins in their current state
for (i=0; i<10000; i++); // delay
PORTB &= ~(1<<6); // send pin 6 low
for (i=0; i<10000; i++); // delay
}
}
Bien sûr, il existe des fonctions de retard dans certaines bibliothèques et il peut y avoir des fonctions de sortie dans d'autres, mais habituez-vous à écrire du code comme celui-ci. La seule façon de savoir ce que signifient tous ces trucs PORTB et DDRB est de lire la fiche technique. Je suis désolé de bourdonner à ce sujet, mais pas assez de gens se rendent compte que la fiche technique est une mine d'or pour information.
Vous devriez également consulter Eclipse pour C / C ++ et le plugin AVR-Eclipse. Fonctionne parfaitement pour moi, en particulier avec le crosspack. Je l'utilise depuis environ un an maintenant et j'aime vraiment ça.
la source
J'utilise également le CrossPack d'ObDev . C'est un excellent regroupement de tous les outils nécessaires pour écrire du code AVR-GCC C. Ce sont les mêmes outils présents dans une installation Arduino standard, donc j'ai parfois utilisé les tripes du système de construction Arduino pour écrire du code AVR-GCC simple.
Normalement, lorsque j'écris du code C, l '"IDE" que j'utilise est un éditeur de texte, des commandes de ligne de commande et des Makefiles. Je suis juste plus efficace de cette façon. J'ai une fenêtre ouverte qui est l'éditeur de texte (emacs), une autre fenêtre qui est la compilation, et une troisième ou quatrième qui fait un moniteur série ou similaire. Mais tout cela peut être fait dans une seule fenêtre de ligne de commande, auquel cas les commandes ressemblent à quelque chose comme:
En outre, vous voudrez peut-être consulter SmileyMicros.com . Il a écrit un très bon livre sur l'introduction de la programmation AVR GCC basé sur la carte AVR Butterfly, avant l'Arduino, et a depuis mis à jour ses exemples pour incorporer Arduino. C'est une belle comparaison pour voir comment la programmation AVR C se fait sur une puce plus complexe que celle d'Arduino.
la source
Si vous installez crosspack, vous pouvez utiliser le Xcode d'Apple pour mac, qui est un excellent IDE. Si vous voulez apprendre c pour AVR, consultez le forum des didacticiels sur AVR Freaks . Comme pour Linux, consultez cette question .
la source
Depuis que vous utilisez l'Arduino, tout ce dont vous avez besoin est déjà installé. Je compile des croquis Arduino à partir de la ligne de commande en utilisant un Makefile. Je compile également du code sans le chargeur de démarrage Arduino.
Le Makefile que j'utilise pour compiler le chargeur de démarrage Arduino pour mes cartes se trouve à http://wiblocks.luciani.org/docs/app-notes/bootloader.html Vous pouvez le modifier pour compiler votre programme plutôt que le fichier ATmegaBOOT_xx8.c.
Mon Makefile est modifié à partir du fichier que j'ai trouvé sur ce site - http://mjo.tc/atelier/2009/02/arduino-cli.html
En répondant à cette même question (hier seulement) sur twitter, je suis tombé sur un makefile chez dorbotpdx. Voir http://dorkbotpdx.org/blog/ax/arduino_0017_makefile
Il existe également un script shell bien documenté sur http://arkku.com/misc/arduino_make.sh
J'utiliserais probablement un Makefile plutôt qu'un script shell. Le boursier qui a fait ce script a fait un excellent travail pour commenter le flux. C'est un travail juste pour comprendre le flux.
la source
J'ai trouvé CodeLite (www.codelite.org) IDE sympa et complet; encore, pour programmer les micropuces AVR, vous devez créer votre propre Makefile.
Vous pouvez essayer l' Assistant BeRTOS , qui créera un projet BeRTOS et des Makefiles associés, que vous pourrez ensuite utiliser avec CodeLite. Pour flasher votre cible, utilisez simplement "make flash" et vous avez terminé. Nous travaillons sur Linux quotidiennement, si vous avez d'autres questions, veuillez les poster sur la liste de diffusion. Avertissement: je suis un développeur BeRTOS.
Cordialement, Luca
la source
Si vous avez installé Macports, vous pouvez simplement exécuter:
et vous devriez être prêt à partir.
la source
Si vous demandez à votre système de packages d'installer avr-libc, cela devrait vous donner tout ce dont vous avez besoin. J'utilise emacs comme mon IDE, cos, eh bien, voir nom d'utilisateur.
Si vous voulez un makefile de modèle, jetez un œil à l'un de mes projets sur github, par exemple https://github.com/unixbigot/pir-lite
Dans ce repo avr-tmpl.mk est une bibliothèque de makefile prête à l'emploi (non écrite par moi). Vous l'incluez à partir de votre makefile principal et vous n'avez qu'à définir quelle puce vous avez, la vitesse d'horloge et vos fichiers. J'en ai une copie et je l'inclus à partir de tous les makefiles de mon projet.
"make program" appellera avrdude pour télécharger le code. Le makefile imprime également la taille du code à la fin, vous savez donc combien de place il vous reste.
la source
J'ai programmé mon 'ancien' Duemanilove 'comme FAI à l'aide de cet article: http://arduino.cc/en/Tutorial/ArduinoISP Cela fonctionne aussi bien avec ATtiny: http://hlt.media.mit.edu/? p = 1229
Attention, lorsque vous utilisez Arduino IDE 0022, vous devez mettre à niveau le croquis ArduinoISP vers une version plus récente, en raison de la prévention du spam, j'ai déplacé ce lien vers les commentaires ci-dessous.
J'ai fait la programmation dans un éditeur de texte (vi) et compilé en utilisant avr-gcc comme décrit dans l'article mit.edu que j'ai lié.
la source
Hé mec, tu peux toujours utiliser avrstudio dans ubuntu. En pensant comment pouvez-vous faire cela .....
La réponse est simplement d'installer l'application Wine et d'exécuter ces logiciels Windows avec Wine.
Avr studio, proteus ... même des jeux de fenêtres peuvent être exécutés dans ubuntu avec wine.
Vous n'avez même pas besoin de jouer avec les makefiles blah blah (installez simplement avec wine et commencez)
Il existe de nombreux sites pour démarrer avec les microcontrôleurs avr comme l'extremeelectronics, les didacticiels AVR, etc. Il suffit de lancer une recherche Google.
Je dirai en détail comment installer avrstudio 4 dans wine car avrstudio 5 et 6 ne fonctionne pas avec, mais vous pouvez utiliser virtual box sous linux pour exécuter même avr stud 5 et 6 avec des fenêtres sur virtual box.
Ouvrez le centre du logiciel Ubuntu et tapez wine dans la recherche, puis installez-le.
Ensuite, obtenez la configuration pour avrstudio4 et vous devez également installer win avr
essayez ces liens pour
une. avr studio 4 http://mycomsats.com/blogs/download-atmel-avr-studio-4-free/
b. win avr http://sourceforge.net/projects/winavr/files/WinAVR/20100110/WinAVR-20100110-install.exe/download?use_mirror=kaz&r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fwinavr%2Ffiles% 2F & use_mirror = kaz
3.Ouvrez le dossier où se trouve la configuration pour AS (avr studio 4) puis cliquez avec le bouton droit et ouvrez-le avec "Windows Wine Program Loader" ou "une application Wine".
4. Ensuite, vous devez cliquer sur les boutons suivants comme vous le feriez dans Windows.
5.Ensuite, installez win avr de la même manière avec wine (allez dans la configuration win avr ....).
6.Téléchargez l'indicateur de menu classique depuis le centre du logiciel Ubuntu. Vous en saurez plus en seulement cinq minutes.
7.Dans le menu classique -> vin -> Programmes -> outils avr
la sixième étape est une étape supplémentaire pour que vous n'ayez pas à vous soucier de l'emplacement de l'option exécutable avrstudio4 dans le dossier wine.
la source