Saya setuju dengan zklapow tetapi periksa bagian proyek pada AVR Freaks juga. Begitulah cara saya belajar kembali pada hari sebelum arduinos. Juga, Anda hampir pasti harus membaca lembar data untuk chip Anda untuk menyelesaikan sesuatu yang bermanfaat. Tidak ada fungsi bagus yang, misalnya, membaca pin analog karena ada begitu banyak parameter yang disembunyikan oleh lingkungan arduino dari Anda. Biarkan saya memberi Anda sebuah contoh:
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
}
kira-kira mirip dengan C berikut (tidak diuji):
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
}
}
Tentu, ada fungsi penundaan di beberapa perpustakaan dan mungkin ada fungsi keluaran di yang lain, tetapi biasakan menulis kode seperti ini. Satu-satunya cara Anda dapat mengetahui apa arti semua hal PORTB dan DDRB ini adalah dengan membaca lembar data. Saya minta maaf untuk membicarakan tentang hal ini tetapi tidak cukup banyak orang menyadari bahwa datasheet adalah tambang emas untuk informasi.
Anda juga harus memeriksa Eclipse untuk C / C ++ dan plugin AVR-Eclipse. Bekerja dengan sempurna bagi saya, terutama dengan crosspack. Saya menggunakannya selama sekitar satu tahun sekarang dan saya sangat menyukainya.
sumber
Saya menggunakan CrossPack ObDev juga. Ini adalah kumpulan besar dari semua alat yang diperlukan untuk menulis kode AVR-GCC C. Mereka alat yang sama hadir dalam instalasi Arduino standar, jadi kadang-kadang saya menggunakan nyali sistem build Arduino untuk menulis kode AVR-GCC biasa.
Biasanya ketika saya menulis kode C, "IDE" yang saya gunakan adalah editor teks, perintah baris perintah, dan Makefiles. Saya hanya lebih efisien dengan cara itu. Saya punya satu jendela yang terbuka itu editor teks (emacs), jendela lain yang kompilasi, dan yang ketiga atau keempat yang melakukan monitor serial atau serupa. Tetapi semua itu dapat dilakukan dalam satu jendela baris perintah, dalam hal ini perintahnya terlihat seperti:
Juga, Anda mungkin ingin memeriksa SmileyMicros.com . Dia menulis sebuah buku yang sangat bagus tentang pemrograman AVR GCC intro yang didasarkan pada papan Kupu-kupu AVR, sebelum Arduino, dan sejak itu memperbarui contohnya untuk menggabungkan Arduino. Ini perbandingan yang bagus untuk melihat bagaimana pemrograman AVR C dilakukan pada chip yang lebih kompleks daripada yang ada di Arduino.
sumber
Jika Anda menginstal crosspack, Anda dapat menggunakan Xcode Apple untuk mac, yang merupakan IDE yang bagus. Jika Anda ingin belajar c untuk AVR, periksa forum tutorial di AVR Freaks . Juga untuk linux lihat pertanyaan ini .
sumber
Karena Anda telah menggunakan Arduino, semua yang Anda butuhkan sudah terpasang. Saya mengkompilasi sketsa Arduino dari baris perintah menggunakan Makefile. Saya juga mengkompilasi kode tanpa bootloader Arduino.
Makefile yang saya gunakan untuk mengkompilasi bootloader Arduino untuk papan saya ada di http://wiblocks.luciani.org/docs/app-notes/bootloader.html Anda bisa memodifikasinya untuk mengkompilasi program Anda daripada file ATmegaBOOT_xx8.c.
Makefile saya dimodifikasi dari file yang saya temukan di situs ini - http://mjo.tc/atelier/2009/02/arduino-cli.html
Saat menjawab pertanyaan yang sama (baru kemarin;) di twitter saya menemukan makefile di dorbotpdx. Lihat http://dorkbotpdx.org/blog/ax/arduino_0017_makefile
Ada juga skrip shell yang didokumentasikan dengan baik di http://arkku.com/misc/arduino_make.sh
Saya mungkin akan menggunakan Makefile daripada skrip shell. Orang yang melakukan skrip ini telah melakukan pekerjaan yang luar biasa untuk mengomentari alurnya. Ini bekerja hanya untuk memahami aliran.
sumber
Saya menemukan IDE CodeLite (www.codelite.org) bagus dan berfitur lengkap; namun, untuk memprogram AVR microchip, Anda perlu membuat Makefile Anda sendiri.
Anda dapat mencoba BeRTOS Wizard , yang akan membuat proyek BeRTOS dan Makefile terkait, yang kemudian dapat Anda gunakan dengan CodeLite. Untuk mem-flash target Anda, cukup gunakan "buat flash" dan Anda selesai. Kami bekerja di Linux setiap hari, jika Anda memiliki pertanyaan lebih lanjut, silakan posting mereka di milis. Penafian: Saya seorang pengembang BeRTOS.
Salam, Luca
sumber
Jika Anda telah menginstal Macports, Anda cukup menjalankan:
dan Anda harus siap untuk pergi.
sumber
Jika Anda meminta sistem paket Anda untuk menginstal avr-libc, itu akan memberi Anda semua yang Anda butuhkan. Saya menggunakan emacs sebagai IDE saya, cos, well, lihat nama pengguna.
Jika Anda menginginkan makefile template, lihat salah satu proyek saya di github, mis. Https://github.com/unixbigot/pir-lite
Dalam repo itu avr-tmpl.mk adalah perpustakaan makefile yang tidak tersedia (tidak ditulis oleh saya). Anda memasukkannya dari makefile utama Anda dan Anda hanya perlu menentukan chip mana yang Anda miliki, kecepatan jam, dan file Anda. Saya memiliki satu salinannya dan memasukkannya dari semua makefile proyek saya.
"make program" akan memanggil avrdude untuk mengunduh kode. Makefile juga mencetak ukuran kode di akhir, sehingga Anda tahu berapa banyak ruang yang tersisa.
sumber
Saya memprogram 'Duemanilove' lama saya sebagai ISP dengan bantuan artikel ini: http://arduino.cc/en/Tutorial/ArduinoISP Bekerja dengan baik dengan ATtiny: http://hlt.media.mit.edu/? p = 1229
Ingat, ketika menggunakan Arduino IDE 0022, Anda perlu memutakhirkan sketsa ArduinoISP ke versi yang lebih baru, karena pencegahan spam saya memindahkan tautan itu ke komentar di bawah.
Saya melakukan pemrograman dalam editor teks (vi) dan dikompilasi menggunakan avr-gcc seperti yang dijelaskan dalam artikel mit.edu yang saya tautkan.
sumber
Hei kawan kamu masih bisa menggunakan avrstudio di ubuntu. Berpikir bagaimana Anda bisa melakukan itu .....
Jawaban hanya menginstal aplikasi anggur dan menjalankan perangkat lunak windows dengan anggur.
Avr studio, proteus ... bahkan game windows dapat dijalankan di ubuntu dengan anggur.
Anda bahkan tidak perlu repot dengan makefiles blah bla. (Cukup instal dengan anggur dan mulai).
Ada banyak situs untuk memulai dengan AVU MCU seperti extremeelectronics, tutorial AVR dll. Hanya berikan pencarian google.
Saya akan memberi tahu secara rinci cara menginstal avrstudio 4 dalam anggur karena avrstudio 5 dan 6 tidak bekerja dengannya, tetapi Anda dapat menggunakan kotak virtual di linux untuk menjalankan bahkan avr stud 5 dan 6 dengan windows di kotak virtual.
Buka pusat perangkat lunak Ubuntu dan ketik anggur dalam pencarian dan kemudian instal.
Kemudian dapatkan pengaturan untuk avrstudio4 dan Anda juga perlu menginstal win avr
coba tautan ini untuk
Sebuah. 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%2files% 2F & use_mirror = kaz
3. Buka folder tempat pengaturan untuk AS (avr studio 4) lalu klik kanan dan kemudian buka dengan "windows wine program loader" atau "a wine application".
4.Lalu Anda perlu mengklik tombol berikutnya seperti yang Anda lakukan di windows.
5. Lalu instal win win sama dengan anggur (masuk ke win win setup ....).
6. Unduh indikator menu klasik dari pusat perangkat lunak ubuntu. Anda akan mengetahuinya hanya dalam lima menit.
7.Dari menu klasik -> anggur -> Program -> alat avr
langkah keenam adalah langkah tambahan sehingga Anda tidak perlu mengacaukan di mana opsi yang dapat dieksekusi avrstudio4 ada di folder anggur.
sumber