MANUAL PENGGUNAAN SASAKALA M32 v1.0 ATMega32 Core Module
versi dokumen: 1.0
www.embedtronix.com
DAFTAR ISI 1. Pendahuluan...........................................................................................................................................3 2. Informasi Teknik....................................................................................................................................3 Fitur:......................................................................................................................................................3 Dimensi.................................................................................................................................................4 Pin assignment dari header board..........................................................................................................4 Pin assignment dari header ISP.............................................................................................................5 Pin assignment dari header RS232........................................................................................................5 3. Catatan Aplikasi.....................................................................................................................................5 Menyalakan SASAKALA Board..........................................................................................................5 Bootloader.............................................................................................................................................6 Programming aplikasi............................................................................................................................8 Demo Aplikasi.......................................................................................................................................9
1. Pendahuluan Sasakala-M32 adalah modul AVR dengan ukuran mini (2,4 cm x 5,3 cm). Modul ini dirancang untuk memenuhi kebutuhan dalam tahap pengembangan maupun integrasi akhir. Dalam tahap pengembangan, Sasakala-M32 berfungsi sebagai 'sistem minimum' mikrokontroller yang lengkap. Dilengkapi dengan tombol 'RESET', LED untuk indikator power input supply, RS232 transceiver, dan header untuk ISP. 40-pin header, yang terhubung dengan hampir semua pin pada mikrokontroler Atmega32, disediakan untuk menyambungkan Sasakala-M32 dengan modul lain sesuai kebutuhan pengembangan. Header ini memudahkan Sasakala-M32 untuk dipasang pada proto-board. Sasakala-M32 di atas proto-board menjadi sebuah platform dasar yang lengkap untuk melakukan sebuah pengembangan sistem berbasis mikrokontroller. Sasakala-M32 dilengkapi dengan bootloader yang telah terinstal di-dalamnya. Ini memudahkan pengguna untuk mem-program tanpa menggunakan modul programmer; cukup dengan kabel serial. Dalam integrasi akhir (produk), Sasakala-M32 dapat berfungsi sebagai 'core module' dari sistem akhir yang dibuat. Sasakala-M32 yang digunakan dalam pengembangan, juga bisa digunakan pada produk akhir.
2. Informasi Teknik Fitur: •
Berbasis mikrokontroller Atmel Atmega32; 32kB flash, 1kB EEPROM, 2kB SRAM.
•
RS232 interface.
•
Programming dapat dilakukan melalui RS232 menggunakan on-chip bootloader.
•
ISP header, untuk koneksi ke programmer eksternal.
•
Tombol reset, dan LED indikator power.
•
Tegangan input 5V.
•
Seluruh GPIO tersambung ke header
•
16MHz crystal oscillator
Dimensi
Dimensi board Sasakala-M32 (gambar diperbesar)
Pin assignment dari header board
Pin assignment pada board Sasakala-M32 Lebih detil dari deskripsi tiap pin, dapat dibaca pada datasheet Atmega32 di www.atmel.com.
Pin assignment dari header ISP
Pin assignment header ISP 1
MISO
2
VCC
3
SCK
4
MOSI
5
RESET
6
GND
Pin assignment dari header RS232
Pin assignment header RS232
3. Catatan Aplikasi Menyalakan SASAKALA Board Terdapat 3 pin VCC (pin 5, 15, dan 40) dan 4 pin GND (pin 6, 16, 25, dan 34). Seluruh pin VCC saling terhubung, demikian pula seluruh pin GND. Untuk menyalakan board Sasakala-M32, cukup menghubungkan salah satu pin VCC dan GND ke power supply (tegangan input 5V).
Memberikan supply ke Sasakala-M32
Bootloader Sasakala-M32 telah dilengkapi dengan on-chip bootloader, sehingga programming aplikasi dapat dilakukan menggunakan koneksi serial (RS232). Untuk mengetahui apakah bootloader telah siap, gunakan diagram koneksi berikut.
Diagram koneksi untuk pengujian bootloader 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
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.
$ sudo avrdude c avrisp p m32 P /dev/ttyS0 b 19200 n avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.03s avrdude: Device signature = 0x1e9502 avrdude: safemode: Fuses OK avrdude done. Thank you.
Uji koneksi ke bootloader pada Linux
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 bawah (contoh menggunakan AVRDUDE untuk Linux). $ 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 onchip 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.
Demo Aplikasi Sasakala-M32, secara default telah terinstal sampel aplikasi yang menjalankan fungsi UART dan blinking LED. Lakukan interkoneksi seperti diagram di bawah. LED akan menjalankan animasi blinking.
Bila koneksi RS232 ke PC menggunakan kabel serial dari EmbedTroniX, perhatikan gambar berikut:
Kabel serial DB9--Connector-3pin; untuk menghubungkan Sasakala-M32 ke PC
Connector-3pin; pin bertanda segitiga dihubungkan dengan pin "Rx" pada SasakalaM32
Sambungkan konektor-3pin ke header RS232 pada board Sasakala-M32, dengan posisi pin bertanda segitiga tersambung ke pin 'Rx'. Untuk melihat aplikasi serial, jalankan tahapan berikut: 1. Pada Windows, buka program Hyperterminal (atau program terminal serial lainnya seperti Hercules, Eterlogic, atau minicom pada Linux; silahkan rujuk manual untuk aplikasi tersebut), kemudian buat New Connection, beri nama Connection tersebut.
2. Pilih COM port untuk koneksi
3. Pilih Baudrate 19200 bps, Data bits: 8, Stop bits:1, Flowcontrol: None
4. Nyalakan Power supply ke Sasakala Board (atau tekan tombol RESET bila board telah nyala), pada jendela hyperterminal akan muncul tulisan: Embedtronix Sasakala Board 1.0
5. Cobalah untuk menekan salah satu hurup pada keyboard, misalnya huruf s, maka pada jendela hyperterminal akan muncul tulisan: Sasakala USART Demo[s]
Huruf yang dikirim lewat serial akan dikembalikan dengan menambahkan kata Sasakala USART Demo[hurup yang dikirim]. Berikut tampilan pada program Hercules terminal emulator: