Skrip sederhana untuk memantau .hex , .eep file dan memprogramnya ke chip AVR
.hex dan .eep flashing Ubah baris berikut untuk mengatur sistem di avrdude_flasher.py :
9 chip = "attiny2313" Tentukan di sini chip default jika tidak ada dalam nama file. Lihat Avrdude Docu -p Flagprogrammer = "usbasp" Tentukan di sini perangkat pemrograman Anda. Lihat Avrdude Docu untuk bendera -cpath_to_watch = "./GccApplication3/GccApplication3/Debug" Tentukan jalur untuk menonton file .hexLihat pada fungsi Flash untuk lebih banyak bendera konfigrasi.
Sistem Linux apa pun dengan python2 dan avrdude diinstal. Saya menggunakan RPI Zero W dengan USBASP terhubung.
Saya mengatur berbagi SMB dan mengatur jalur path_to_watch ke sana, jadi jika Atmelstudio menghasilkan build baru dan pythonscript memadamkan file baru ke chip di komputer lain.
Setelah pengaturan cukup jalankan avrdude_flasher.py
Fitur adalah bahwa chip ke program dapat ditentukan dan dalam nama file, jadi Anda tidak perlu mengubah skrip. Nama file untuk .hex dan .eep membutuhkan pola berikut: _<projectname>_<chipname>_.hex dan _<projectname>_<chipname>_.eep jadi file build yang valid untuk attiny2313 adalah:
~/build/_ledblink_attiny2313_.hex~/build/_ledblink_attiny2313_.eepATMELSTUDIOPROJECT berjalan tidak terlalu baik di fileshare yang saya perhatikan. Jadi saya menambahkan PostBuildRule untuk menyalin file build ke Share melalui perintah Windows Copy:
copy $(MSBuildProjectDirectory)Debug$(AssemblyName).hex C:UsersrootDropboxtestprojDebug_$(AssemblyName)_attiny2313_.hex copy $(MSBuildProjectDirectory)Debug$(AssemblyName).hex C:UsersrootDropboxtestprojDebug_$(AssemblyName)_$(avrdevice)_.hex Jika Anda ingin menonton file *.hex pada saham SMB, Anda harus memasangnya di Ubuntu ke sistem file. Aplikasi file normal tidak melakukan itu. Jadi pertama-tama Anda harus menginstal cifs-utils
sudo apt-get install cifs-utils buat folder pemasangan lokalsudo mkdir /mnt/tmp_dev_share dan pasang server smb ke sana (di sini saham SMB ada di 192.168.1.23 dan kami ingin memasang folder /home/tmp )sudo mount -t cifs //192.168.1.23/home/tmp /mnt/tmp_dev_share Langkah terakhir adalah mengedit variabel path_to_watch ke /mnt/tmp_dev_share