Menggunakan bootloader Sasakala-M32

    Sasakala-M32 telah dilengkapi dengan on-chip bootloader, sehingga programming aplikasi dapat dilakukan menggunakan koneksi serial (RS232).

    Uji koneksi ke bootloader

    Untuk mengetahui apakah bootloader telah siap, gunakan diagram koneksi berikut.

    Pada saat board dinyalakan, bootloader akan memeriksa apakah ada perintah dari koneksi serial dan memeriksa apakah terdapat program aplikasi pada Sasakala-M32. Proses ini berjalan selama kurang lebih 3 detik; selama itu LED yang terhubung pada pin PB_0 akan berkedip 5 kali. Bila terdapat perintah dari koneksi serial, bootloader akan merespon-nya. Jika tidak, bila terdapat program aplikasi maka bootloader akan menjalankannya. Jika tidak terdeteksi program aplikasi, bootloader akan mengulang proses diatas. Sasakala-M32, secara default telah terinstal sampel aplikasi yang menjalankan fungsi UART dan blinking LED. Sehingga untuk menguji koneksi ke bootloader hanya tersedia waktu kurang dari 3 detik, sebelum bootloader menjalankan aplikasi tersebut. Setelah koneksi seperti pada diagram diatas telah siap, jalankan aplikasi 'AVRDUDE' pada console dengan perintah (sebagai contoh):

       

  • untuk Windows

avrdude.exe -c avrisp -pm32 -P com1 -b 19200 -n

  • Atau, untuk Linux

avrdude -c avrisp -pm32 -P /dev/ttyS0 -b 19200 -n

Uji koneksi ke bootloader pada Windows

Programming aplikasi

Diagram koneksi untuk 'programming aplikasi' sama dengan seperti pengujian koneksi ke bootloader di atas. Setelah koneksi terpasang jalankan seperti pada contoh di berikut; pada contoh ini menggunakan AVRDUDE versi Linux untuk memprogram aplikasi 'sasakalademo.hex'.

$ sudo avrdude -b 19200 -P /dev/ttyS0 -pm32 -c avrisp -U flash:w:sasakalademo.hex avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.02s avrdude: Device signature = 0x1e9502 avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "sasakalademo.hex" avrdude: input file sasakalademo.hex auto detected as Intel Hex avrdude: writing flash (442 bytes): Writing | ################################################## | 100% 0.34s avrdude: 442 bytes of flash written avrdude: verifying flash memory against sasakalademo.hex: avrdude: load data flash data from input file sasakalademo.hex: avrdude: input file sasakalademo.hex auto detected as Intel Hex avrdude: input file sasakalademo.hex contains 442 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.30s avrdude: verifying ... avrdude: 442 bytes of flash verified avrdude: safemode: Fuses OK avrdude done. Thank you.

Catatan

  • Sesuaikan 'com1' atau '/dev/ttyS0' dengan port serial terinstall pada komputer Anda.

  • Pelajari manual AVRDUDE untuk penjelasan yang lebih rinci.

Tips

  • Bila telah ter-instal aplikasi pada Sasakala-M32: tekan 'ENTER' pada keyboard dan tombol 'RESET' pada Sasakala-M32 secara bersamaan, agar perintah 'AVRDUDE' dibaca sebelum bootloader menjalankan aplikasi.

  • Bila tidak terdapat aplikasi pada Sasakala-M32, tidak perlu menekan tombol 'RESET'; karena tiap 3 detik bootloader akan memeriksa apakah ada perintah dari serial dan ketersediaan aplikasi.

Tidak ada komentar:

Posting Komentar

author
Embedtronix
Build Your Embedded System. Belajar bareng ngoprek Microcontroller, Arduino, TPLink, GLiNet dan ilmu Microelectronic lainnya.