SlideShare a Scribd company logo
1 of 28
ECE 353
Memulai WinAvrMemulai WinAvr
Akhmad HendriawanAkhmad Hendriawan
2hendri@pens.ac.id
PendahuluanPendahuluan
►WinAVR adalah tool yang dikembangkanWinAVR adalah tool yang dikembangkan
untuk mikrokontroler Atmel AVR RISCuntuk mikrokontroler Atmel AVR RISC
►Program yang ditulis dengan menggunakanProgram yang ditulis dengan menggunakan
C, dikompile menggunakan GCC dan avr-C, dikompile menggunakan GCC dan avr-
libcclibcc
►Open source, dapat diperoleh diOpen source, dapat diperoleh di
winavr.sourceforge.netwinavr.sourceforge.net
3hendri@pens.ac.id
Install ProgramInstall Program
►Instalasi cukup mudahInstalasi cukup mudah httphttp
://winavr.sourceforge.net/://winavr.sourceforge.net/
►Sudah terdapat IDE, Compiler, DebuggerSudah terdapat IDE, Compiler, Debugger
dan Mfile untuk mempermudah pembuatandan Mfile untuk mempermudah pembuatan
programprogram
4hendri@pens.ac.id
Programmer’s NotepadProgrammer’s Notepad
►Programmer’s Notepad adalah tools utamaProgrammer’s Notepad adalah tools utama
yang digunakan untuk menulis kode dalamyang digunakan untuk menulis kode dalam
CC
►Programmers notepad mempunyaiProgrammers notepad mempunyai
kemampuankemampuan
 Highlight sintaksHighlight sintaks
 Mendukung beberapa bahasaMendukung beberapa bahasa
 Adanya integrasi dengan compilerAdanya integrasi dengan compiler
(menggunakan bahasa C)(menggunakan bahasa C)
5hendri@pens.ac.id
Menambah tools externalMenambah tools external
► Pada Programmer’s Notepad, pilih Tools-Pada Programmer’s Notepad, pilih Tools-
>Options, and pilih “Tools” pada sisi kiri layar>Options, and pilih “Tools” pada sisi kiri layar
6hendri@pens.ac.id
Menambah tools eksternalMenambah tools eksternal
► Pilih schemePilih scheme
► pilih “Add”pilih “Add”
► ““Name” adalah identifikasiName” adalah identifikasi
dari toolsdari tools
► Command adalah perintahCommand adalah perintah
yang digunakanyang digunakan
► Folder %d (Path file)Folder %d (Path file)
► Tool ini menciptakan menuTool ini menciptakan menu
make extcoff pada menumake extcoff pada menu
toolstools
7hendri@pens.ac.id
Contoh Program CContoh Program C
// blinky.c// blinky.c
#include <avr/io.h>#include <avr/io.h> // Standard AVR header// Standard AVR header
#include <avr/delay.h>#include <avr/delay.h> // Delay loop functions// Delay loop functions
int main(void)int main(void)
{{
DDRA = 0xFF; // PORTA is outputDDRA = 0xFF; // PORTA is output
while (1) {while (1) {
for (int i=1; i<=128; i*=2) {for (int i=1; i<=128; i*=2) {
PORTA = i;PORTA = i;
_delay_loop_2(30000);_delay_loop_2(30000);
}}
for (int i=128; i>1; i/=2) {for (int i=128; i>1; i/=2) {
PORTA = i;PORTA = i;
_delay_loop_2(30000);_delay_loop_2(30000);
}}
} // end while} // end while
}}
8hendri@pens.ac.id
Membangun programMembangun program
►Tulis program , simpan dengan namaTulis program , simpan dengan nama
blinky.cblinky.c
►Jalankan MFileJalankan MFile
 Makefile -> Main File Name = blinky (no .c)Makefile -> Main File Name = blinky (no .c)
 Makefile -> MCU Type = atmega32Makefile -> MCU Type = atmega32
►File -> Save As ke direktori dari sourceodeFile -> Save As ke direktori dari sourceode
blinky.cblinky.c
►Pada Programmer’s Notepad: Select ToolsPada Programmer’s Notepad: Select Tools
->Make All->Make All
9hendri@pens.ac.id
MFileMFile
►Program sederhana yang menghasilkanProgram sederhana yang menghasilkan
Makefiles untuk mengkompile kode CMakefiles untuk mengkompile kode C
►Makefile adalah file konfigurasi bagaimanaMakefile adalah file konfigurasi bagaimana
sourcecode C di kompilesourcecode C di kompile
 Chip apa yang digunakan (atmega16)Chip apa yang digunakan (atmega16)
 Nama file target (blinky.c)Nama file target (blinky.c)
10hendri@pens.ac.id
GNU MakeGNU Make
► WinAVR menggunakan “Makefiles” ketikaWinAVR menggunakan “Makefiles” ketika
membangun project dengan with GNU Makemembangun project dengan with GNU Make
► GNU Make membangun dependencies dan fileGNU Make membangun dependencies dan file
sourcesource
► Hanya akan menyusun file dari update danHanya akan menyusun file dari update dan
source baru (menghemat waktu)source baru (menghemat waktu)
► Tool yang power full: lihatTool yang power full: lihat
C:WinAVRdocgnumake.html for more infoC:WinAVRdocgnumake.html for more info
11hendri@pens.ac.id
MakefilesMakefiles
►Makefiles adalah tab-sensitive: tab !=Makefiles adalah tab-sensitive: tab !=
spacespace
►Barus yang dimulai dari tab dieksekkusiBarus yang dimulai dari tab dieksekkusi
sebagai perintahsebagai perintah
►Kesalahan Tab menampilkan pesanKesalahan Tab menampilkan pesan
“improper separator” error“improper separator” error
12hendri@pens.ac.id
Contoh MakefileContoh Makefile
## ‘all’ and ‘clean’ targets must be defined!## ‘all’ and ‘clean’ targets must be defined!
# ‘make’ or ‘make all’ will build dependencies in the order they are given# ‘make’ or ‘make all’ will build dependencies in the order they are given
all: begin project2 endall: begin project2 end
begin:begin:
@echo “Starting build”@echo “Starting build”
project2:project2:
avr-gcc project2.cavr-gcc project2.c
end:end:
@echo “Build complete”@echo “Build complete”
clean:clean:
rm project2.orm project2.o
13hendri@pens.ac.id
Debugging menggunakan AvrStudioDebugging menggunakan AvrStudio
► Gunakan editor untuk mengedit flags padaGunakan editor untuk mengedit flags pada
makefile:makefile:
DEBUG = stabsDEBUG = stabs // mengijinkan debugging// mengijinkan debugging
OPT = 0OPT = 0 // mematikan optimasi// mematikan optimasi
► SimpanSimpan makefilemakefile
AVR Studio menyediakan debugging program
dalam Cdan assembly yang dilakukan dengan
menyediakan file COF yang dibangkitkan oleh
kompiler (lihat Makefile)
14hendri@pens.ac.id
15hendri@pens.ac.id
Building C code for DebuggingBuilding C code for Debugging
► Go toGo to ToolsTools  OptionsOptions  ToolsTools
► Pull down thePull down the SchemesSchemes window and click onwindow and click on
C/C++C/C++ optionoption
► AA make extcoffmake extcoff option will appear; clickoption will appear; click OKOK
► Click onClick on ToolsTools againagain
► Click onClick on make extcoffmake extcoff to generate the COF fileto generate the COF file
(this will generate the correct debug file for AVR(this will generate the correct debug file for AVR
Studio that includes the C code information)Studio that includes the C code information)
In the Programmer’s Notepad (WinAVR):
16hendri@pens.ac.id
17hendri@pens.ac.id
Debugging dengan AvrStudioDebugging dengan AvrStudio
► Buka theBuka the AVR StudioAVR Studio
 Buka the COF fileBuka the COF file
(Anda akan dibantu untuk memilih platform debug(Anda akan dibantu untuk memilih platform debug
dan device )dan device )
 SourcecodeSourcecode CC akan muncul pada window utamaakan muncul pada window utama
 Optional (Berguna!) untuk melihat code assembly:Optional (Berguna!) untuk melihat code assembly:
go togo to ViewView  DissassemblerDissassembler
 Anda dapat meletakkan kode assembly di sampingAnda dapat meletakkan kode assembly di samping
kode Ckode C
18hendri@pens.ac.id
19hendri@pens.ac.id
Informasi TambahanInformasi Tambahan
►Informasi Tambahan dapat ditemukan padaInformasi Tambahan dapat ditemukan pada
situssitus
winavr.sourceforge.netwinavr.sourceforge.net
ECE 353
Informasi TambahanInformasi Tambahan
Instalasi winavrInstalasi winavr
21hendri@pens.ac.id
22hendri@pens.ac.id
23hendri@pens.ac.id
24hendri@pens.ac.id
25hendri@pens.ac.id
26hendri@pens.ac.id
27hendri@pens.ac.id
28hendri@pens.ac.id

More Related Content

Similar to WinAVR Getting Started

Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...
Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...
Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...Universitas Tidar Magelang
 
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavrPrayogy Pangestu
 
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010eddie Ismantoe
 
Pertemuan 1 Pengenalan CodeBlocks (CB)
Pertemuan 1 Pengenalan CodeBlocks (CB)Pertemuan 1 Pengenalan CodeBlocks (CB)
Pertemuan 1 Pengenalan CodeBlocks (CB)Endang Retnoningsih
 
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANPENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANNur Kholifah Hidayah
 
Pertemuan 6 Mikroprosessor dan Mikrokontroler
Pertemuan 6 Mikroprosessor dan MikrokontrolerPertemuan 6 Mikroprosessor dan Mikrokontroler
Pertemuan 6 Mikroprosessor dan MikrokontrolerAhmad Nawawi, S.Kom
 
Tugas so2 fitriana bakar044
Tugas so2 fitriana bakar044Tugas so2 fitriana bakar044
Tugas so2 fitriana bakar044charis_fit
 
pemrograman-dasar-cpp_01-perkenalan.pdf
pemrograman-dasar-cpp_01-perkenalan.pdfpemrograman-dasar-cpp_01-perkenalan.pdf
pemrograman-dasar-cpp_01-perkenalan.pdfRegarianTaring1
 
Laporan Praktikum DPK Dasar
Laporan Praktikum DPK DasarLaporan Praktikum DPK Dasar
Laporan Praktikum DPK DasarNadiaRN
 
Modul pelatihan praktikum mikrokontroler dengan software proteus
Modul pelatihan praktikum mikrokontroler dengan software proteusModul pelatihan praktikum mikrokontroler dengan software proteus
Modul pelatihan praktikum mikrokontroler dengan software proteusKukuh Adhi Rumekso
 
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)riarel
 
Belajar framework code igniter xii rpl
Belajar framework code igniter xii rplBelajar framework code igniter xii rpl
Belajar framework code igniter xii rplDenny Yahya
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfSetiya Nugroho
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfSetiya Nugroho
 
Dadan kameravidiowebcam
Dadan kameravidiowebcamDadan kameravidiowebcam
Dadan kameravidiowebcamMas Suwondo
 

Similar to WinAVR Getting Started (20)

Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...
Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...
Program Flash 12 LED dan 2 Port pada Mikrokontroler ATMega16 menggunakan Soft...
 
2. CodeBlocks & C++
2. CodeBlocks & C++2. CodeBlocks & C++
2. CodeBlocks & C++
 
Pertemuan I Teori
Pertemuan I TeoriPertemuan I Teori
Pertemuan I Teori
 
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
 
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010
Modul Pratikum Algoritma dan Pemrograman dalam Bahasa Visual C++ 2010
 
Pertemuan 1 Pengenalan CodeBlocks (CB)
Pertemuan 1 Pengenalan CodeBlocks (CB)Pertemuan 1 Pengenalan CodeBlocks (CB)
Pertemuan 1 Pengenalan CodeBlocks (CB)
 
Laporan praktikum dpk modul 1
Laporan praktikum dpk modul 1Laporan praktikum dpk modul 1
Laporan praktikum dpk modul 1
 
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMANPENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
PENGENALAN SSISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN
 
Pertemuan 6 Mikroprosessor dan Mikrokontroler
Pertemuan 6 Mikroprosessor dan MikrokontrolerPertemuan 6 Mikroprosessor dan Mikrokontroler
Pertemuan 6 Mikroprosessor dan Mikrokontroler
 
Tugas so2 fitriana bakar044
Tugas so2 fitriana bakar044Tugas so2 fitriana bakar044
Tugas so2 fitriana bakar044
 
pemrograman-dasar-cpp_01-perkenalan.pdf
pemrograman-dasar-cpp_01-perkenalan.pdfpemrograman-dasar-cpp_01-perkenalan.pdf
pemrograman-dasar-cpp_01-perkenalan.pdf
 
Laporan led
Laporan ledLaporan led
Laporan led
 
Laporan Praktikum DPK Dasar
Laporan Praktikum DPK DasarLaporan Praktikum DPK Dasar
Laporan Praktikum DPK Dasar
 
Modul pelatihan praktikum mikrokontroler dengan software proteus
Modul pelatihan praktikum mikrokontroler dengan software proteusModul pelatihan praktikum mikrokontroler dengan software proteus
Modul pelatihan praktikum mikrokontroler dengan software proteus
 
What's about Dev-C++
What's about Dev-C++What's about Dev-C++
What's about Dev-C++
 
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)
Belajar Framework CodeIgnitier Lengkap (bahasa Indonesia)
 
Belajar framework code igniter xii rpl
Belajar framework code igniter xii rplBelajar framework code igniter xii rpl
Belajar framework code igniter xii rpl
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdf
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdf
 
Dadan kameravidiowebcam
Dadan kameravidiowebcamDadan kameravidiowebcam
Dadan kameravidiowebcam
 

More from Politeknik Elektronika Negeri Surabaya (7)

Fpga creating counter with internal clock
Fpga   creating counter with internal clockFpga   creating counter with internal clock
Fpga creating counter with internal clock
 
Fpga creating counter with external clock
Fpga   creating counter with external clockFpga   creating counter with external clock
Fpga creating counter with external clock
 
FPGA Tutorial - LCD Interface
FPGA Tutorial - LCD InterfaceFPGA Tutorial - LCD Interface
FPGA Tutorial - LCD Interface
 
Interfacing to lcd with arduino
Interfacing  to lcd with arduinoInterfacing  to lcd with arduino
Interfacing to lcd with arduino
 
My Linux
My LinuxMy Linux
My Linux
 
Embedded lcd
Embedded lcdEmbedded lcd
Embedded lcd
 
winavr tutorial
winavr tutorial winavr tutorial
winavr tutorial
 

WinAVR Getting Started

  • 1. ECE 353 Memulai WinAvrMemulai WinAvr Akhmad HendriawanAkhmad Hendriawan
  • 2. 2hendri@pens.ac.id PendahuluanPendahuluan ►WinAVR adalah tool yang dikembangkanWinAVR adalah tool yang dikembangkan untuk mikrokontroler Atmel AVR RISCuntuk mikrokontroler Atmel AVR RISC ►Program yang ditulis dengan menggunakanProgram yang ditulis dengan menggunakan C, dikompile menggunakan GCC dan avr-C, dikompile menggunakan GCC dan avr- libcclibcc ►Open source, dapat diperoleh diOpen source, dapat diperoleh di winavr.sourceforge.netwinavr.sourceforge.net
  • 3. 3hendri@pens.ac.id Install ProgramInstall Program ►Instalasi cukup mudahInstalasi cukup mudah httphttp ://winavr.sourceforge.net/://winavr.sourceforge.net/ ►Sudah terdapat IDE, Compiler, DebuggerSudah terdapat IDE, Compiler, Debugger dan Mfile untuk mempermudah pembuatandan Mfile untuk mempermudah pembuatan programprogram
  • 4. 4hendri@pens.ac.id Programmer’s NotepadProgrammer’s Notepad ►Programmer’s Notepad adalah tools utamaProgrammer’s Notepad adalah tools utama yang digunakan untuk menulis kode dalamyang digunakan untuk menulis kode dalam CC ►Programmers notepad mempunyaiProgrammers notepad mempunyai kemampuankemampuan  Highlight sintaksHighlight sintaks  Mendukung beberapa bahasaMendukung beberapa bahasa  Adanya integrasi dengan compilerAdanya integrasi dengan compiler (menggunakan bahasa C)(menggunakan bahasa C)
  • 5. 5hendri@pens.ac.id Menambah tools externalMenambah tools external ► Pada Programmer’s Notepad, pilih Tools-Pada Programmer’s Notepad, pilih Tools- >Options, and pilih “Tools” pada sisi kiri layar>Options, and pilih “Tools” pada sisi kiri layar
  • 6. 6hendri@pens.ac.id Menambah tools eksternalMenambah tools eksternal ► Pilih schemePilih scheme ► pilih “Add”pilih “Add” ► ““Name” adalah identifikasiName” adalah identifikasi dari toolsdari tools ► Command adalah perintahCommand adalah perintah yang digunakanyang digunakan ► Folder %d (Path file)Folder %d (Path file) ► Tool ini menciptakan menuTool ini menciptakan menu make extcoff pada menumake extcoff pada menu toolstools
  • 7. 7hendri@pens.ac.id Contoh Program CContoh Program C // blinky.c// blinky.c #include <avr/io.h>#include <avr/io.h> // Standard AVR header// Standard AVR header #include <avr/delay.h>#include <avr/delay.h> // Delay loop functions// Delay loop functions int main(void)int main(void) {{ DDRA = 0xFF; // PORTA is outputDDRA = 0xFF; // PORTA is output while (1) {while (1) { for (int i=1; i<=128; i*=2) {for (int i=1; i<=128; i*=2) { PORTA = i;PORTA = i; _delay_loop_2(30000);_delay_loop_2(30000); }} for (int i=128; i>1; i/=2) {for (int i=128; i>1; i/=2) { PORTA = i;PORTA = i; _delay_loop_2(30000);_delay_loop_2(30000); }} } // end while} // end while }}
  • 8. 8hendri@pens.ac.id Membangun programMembangun program ►Tulis program , simpan dengan namaTulis program , simpan dengan nama blinky.cblinky.c ►Jalankan MFileJalankan MFile  Makefile -> Main File Name = blinky (no .c)Makefile -> Main File Name = blinky (no .c)  Makefile -> MCU Type = atmega32Makefile -> MCU Type = atmega32 ►File -> Save As ke direktori dari sourceodeFile -> Save As ke direktori dari sourceode blinky.cblinky.c ►Pada Programmer’s Notepad: Select ToolsPada Programmer’s Notepad: Select Tools ->Make All->Make All
  • 9. 9hendri@pens.ac.id MFileMFile ►Program sederhana yang menghasilkanProgram sederhana yang menghasilkan Makefiles untuk mengkompile kode CMakefiles untuk mengkompile kode C ►Makefile adalah file konfigurasi bagaimanaMakefile adalah file konfigurasi bagaimana sourcecode C di kompilesourcecode C di kompile  Chip apa yang digunakan (atmega16)Chip apa yang digunakan (atmega16)  Nama file target (blinky.c)Nama file target (blinky.c)
  • 10. 10hendri@pens.ac.id GNU MakeGNU Make ► WinAVR menggunakan “Makefiles” ketikaWinAVR menggunakan “Makefiles” ketika membangun project dengan with GNU Makemembangun project dengan with GNU Make ► GNU Make membangun dependencies dan fileGNU Make membangun dependencies dan file sourcesource ► Hanya akan menyusun file dari update danHanya akan menyusun file dari update dan source baru (menghemat waktu)source baru (menghemat waktu) ► Tool yang power full: lihatTool yang power full: lihat C:WinAVRdocgnumake.html for more infoC:WinAVRdocgnumake.html for more info
  • 11. 11hendri@pens.ac.id MakefilesMakefiles ►Makefiles adalah tab-sensitive: tab !=Makefiles adalah tab-sensitive: tab != spacespace ►Barus yang dimulai dari tab dieksekkusiBarus yang dimulai dari tab dieksekkusi sebagai perintahsebagai perintah ►Kesalahan Tab menampilkan pesanKesalahan Tab menampilkan pesan “improper separator” error“improper separator” error
  • 12. 12hendri@pens.ac.id Contoh MakefileContoh Makefile ## ‘all’ and ‘clean’ targets must be defined!## ‘all’ and ‘clean’ targets must be defined! # ‘make’ or ‘make all’ will build dependencies in the order they are given# ‘make’ or ‘make all’ will build dependencies in the order they are given all: begin project2 endall: begin project2 end begin:begin: @echo “Starting build”@echo “Starting build” project2:project2: avr-gcc project2.cavr-gcc project2.c end:end: @echo “Build complete”@echo “Build complete” clean:clean: rm project2.orm project2.o
  • 13. 13hendri@pens.ac.id Debugging menggunakan AvrStudioDebugging menggunakan AvrStudio ► Gunakan editor untuk mengedit flags padaGunakan editor untuk mengedit flags pada makefile:makefile: DEBUG = stabsDEBUG = stabs // mengijinkan debugging// mengijinkan debugging OPT = 0OPT = 0 // mematikan optimasi// mematikan optimasi ► SimpanSimpan makefilemakefile AVR Studio menyediakan debugging program dalam Cdan assembly yang dilakukan dengan menyediakan file COF yang dibangkitkan oleh kompiler (lihat Makefile)
  • 15. 15hendri@pens.ac.id Building C code for DebuggingBuilding C code for Debugging ► Go toGo to ToolsTools  OptionsOptions  ToolsTools ► Pull down thePull down the SchemesSchemes window and click onwindow and click on C/C++C/C++ optionoption ► AA make extcoffmake extcoff option will appear; clickoption will appear; click OKOK ► Click onClick on ToolsTools againagain ► Click onClick on make extcoffmake extcoff to generate the COF fileto generate the COF file (this will generate the correct debug file for AVR(this will generate the correct debug file for AVR Studio that includes the C code information)Studio that includes the C code information) In the Programmer’s Notepad (WinAVR):
  • 17. 17hendri@pens.ac.id Debugging dengan AvrStudioDebugging dengan AvrStudio ► Buka theBuka the AVR StudioAVR Studio  Buka the COF fileBuka the COF file (Anda akan dibantu untuk memilih platform debug(Anda akan dibantu untuk memilih platform debug dan device )dan device )  SourcecodeSourcecode CC akan muncul pada window utamaakan muncul pada window utama  Optional (Berguna!) untuk melihat code assembly:Optional (Berguna!) untuk melihat code assembly: go togo to ViewView  DissassemblerDissassembler  Anda dapat meletakkan kode assembly di sampingAnda dapat meletakkan kode assembly di samping kode Ckode C
  • 19. 19hendri@pens.ac.id Informasi TambahanInformasi Tambahan ►Informasi Tambahan dapat ditemukan padaInformasi Tambahan dapat ditemukan pada situssitus winavr.sourceforge.netwinavr.sourceforge.net
  • 20. ECE 353 Informasi TambahanInformasi Tambahan Instalasi winavrInstalasi winavr