Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
MODUL 1
Code Composer Studio Basic
1. Pendahuluan
DSP adalah mikroprosesor untuk aplikasi khusus. Arsitekturnya dirancang supaya dapat
mengolah persamaan matematis dengan cepat. Seperti halnya mikroprosesor, DSP juga dapat
anda program untuk melakukan suatu pekerjaan. Program tersebut anda tulis menggunakan
bahasa assembly untuk DSP yang digunakan. Bahasa assembly lagi? Tidak juga, beruntunglah
karena pada praktikum ini DSP yang akan anda pakai disertai dengan software Code
Composer Studio. Software ini mengijinkan anda untuk menuliskan program dalam bahasa-C.
Code Composer Studio atau selanjutnya kita singkat menjadi CCS saja, merupakan sebuah
IDE (Integrated Development Environment) dimana dengan CCS ini anda dapat melakukan
editing program, melakukan kompilasi program, melakukan debugging dan melakukan
analisa secara real-time sekaligus. Mengapa sekarang banyak perusahaan mengijinkan anda
untuk menulis program dalam bahasa-C untuk mikroprosesornya? Salah satu jawabannya
adalah untuk memperpendek waktu disain. Apakah bahasa assembly tidak penting? Untuk
program yang membutuhkan optimasi tinggi, bahasa assembly tetap menjadi pilihan terbaik.
2. Tujuan
Setelah menyelesaikan praktikum ini, yang anda peroleh adalah :
dapat menjelaskan definisi DSP
dapat menjelaskan perbedaan antara prosesor DSP dengan prosesor untuk aplikasi
umum
dapat menjelaskan prosesor DSP secara umum, khususnya DSP TMS320C5402 baik
arsitektur maupun teknik pemrogramannya menggunakan Code Composer Studio
versi 2
dapat membuat program sederhana untuk mengakses LED yang terdapat pada DSK
dengan menggunakan pemrograman bahasa-C
3. Gambaran Disain
Sekarang anda akan berkenalan lebih dekat dengan CCS, bagaimana cara membuat project
baru, melakukan editing, melakukan kompilasi, mendownload program kedalam board DSP
dan menjalankan program untuk melihat hasilnya. Pada praktikum ini anda akan mencoba
untuk membuat program untuk meng-animasi LED yang terdapat pada board DSK (DSP
Starter Kit), tentu saja dengan bahasa-C. Jadi, persiapkan semaksimal mungkin bahasa-C
anda.
hary@eepis-its.edu 1
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
4. Dasar Teori
(Baca teori tambahan mengenai DSP).
Pemrograman DSP menggunakan bahasa assembly seperti umumnya mikroprosesor dan
mikrokontroler. Software development untuk DSP yang akan digunakan yaitu Code
Composer Studio 2 memiliki cross-compiler untuk menerjemahkan bahasa C menjadi bahasa
assembly untuk DSP. Supaya lebih mudah pemrograman board DSP ini maka digunakan
bahasa C, sehingga diharapkan anda dapat mengikuti dengan mudah.
Gambar 1. Ilustrasi alur pemrograman DSP dengan Code Composer Studio
Referensi:
Tutorial Code Composer Studio 2.
hary@eepis-its.edu 2
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
5. Peralatan
• 1 set PC yang dilengkapi dengan software Code Composer Studio.
• 1 set DSK TMS320C5402
6. Prosedur Praktikum
Anda diharapkan mengikuti langkah-langkah prosedur praktikum dan apabila ada kesulitan
harap bertanya kepada asisten praktikum.
Praktikum ini tidak menggunakan
function generator dan oscilloscope
1. Menyiapkan peralatan :
a. PC dalam keadaan mati.
b. Hubungkan DSK ke PC menggunakan kabel paralel port yang tersedia.
c. Hubungkan output adaptor ke input power DSK.
d. Hubungkan kabel power adaptor, nyalakan adaptor.
e. Nyalakan PC.
2. Jalankan aplikasi Code Composer Studio (CCS), program ini akan mendeteksi adanya
DSK yang terpasang. Bila tidak terdapat peringatan dari program berarti DSK telah siap,
bila terdapat peringatan dari program, tanyakan kepada asisten.
Gambar 2. Tampilan awal Code Composer Studio versi 2
Gambar 3. Tampilan kesalahan bila
target board DSK tidak terpasang dengan benar
hary@eepis-its.edu 3
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
3. Dengan menggunakan Windows Explorer, buatlah folder baru pada direktori
D:\prak_pengolahansinyal dengan kelas Anda diikuti dengan subfolder nama Anda.
Perhatikan penulisan folder yang Anda buat. Kemudian salinlah direktori blink pada
C:\ti\examples\dsk5402\dsp\blink kedalam direktori D:\prak_pengolahansinyal\
kelas\nama\. Hal ini dimaksudkan untuk mempermudah mengembalikan isi project
seperti dalam keadaan semula apabila terjadi kesalahan yang fatal.
Perhatikan untuk membuat
folder ..\kelas\nama jangan
menggunakan karakter aneh
copy direktori
blink
Gambar 4. Salin direktori blink kedalam direktori myproject
4. Pada Code Composer Studio,
pilih Project Open,
browse pada direkori D:\prak_pengolahansinyal\kelas\nama\blink.
klik dua kali pada file blink.pjt, maka akan muncul pesan kesalahan bahwa file
drv5402.lib tidak ditemukan,
klik browse, file drv5402.lib terletak pada direktori c:\ti\c5400\dsk5402\lib kemudian
klik OK.
pesan kesalahan kedua akan muncul, cari kembali file dsk5402.lib pada direktori
c:\ti\c5400\dsk5402\lib kemudian klik OK.
Hal ini terjadi karena lokasi project berpindah tempat.
Gambar 5. Duplikasi project menyebabkan lokasi file penunjang yang diperlukan tidak ditemukan
hary@eepis-its.edu 4
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
5. Pilih Project Rebuild All (atau dengan menekan ikon ). Maka CCS akan me-
rekompilasi, meng-assembler dan melakukan relink semua file pada project. Pesan pada
proses ini akan ditampilkan pada bagian bawah window.
Gambar 6. Proses kompilasi yang gagal
6. Pada window ‘build’ dibagian bawah, scroll ke atas untuk melihat kesalahan yang terjadi.
Gambar 7. Pesan kesalahan
Kesalahan ini terjadi akibat duplikasi project, klik 2 kali tulisan “blink.c, line 1: fatal
error: …” yang berwarna merah, maka kursor akan secara otomatis berapa pada baris
pertama dari file blink.c.
Pilih Project Build Option, pada tab Compiler, pilih preprocessor dibagian
Category. Pada kolom Include Search Path ketikkan c:\ti\c5400\dsk5402\include, klik
tombol OK.
Gambar 8. Letak file include setelah dibenarkan
hary@eepis-its.edu 5
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
Kemudian rebuild kembali dengan memilih Project Rebuild All.
Gambar 9. Kompilasi project berhasil dilakukan
7. Setelah kompilasi selesai dan tidak ada error, pilih File Load Program, pilih file
blink.out. Maka CCS akan me-load program pada target DSP dan membuka window dis-
assembly yang memperlihatkan instruksi program dalam bahasa assembler.
8. Pilih Debug Go Main
9. Pilih Debug Run (atau dengan menekan F5 atau klik ikon ), perhatikan apa yang
terjadi pada LED yang berada di board DSK.
10. Untuk menghentikan eksekusi pada target, pilih Debug Halt (atau menekan Shift+F5
atau klik tombol halt).
11. Klik dua kali blink.pjt pada project view, kemudian klik tanda [+] plus pada include,
library dan source untuk melihat lebih dalam seperti ditunjukkan pada gambar 10.
Project
View
Gambar 10. Listing program file blink.c
12. Klik dua kali pada blink.c yang merupakan program utama, karena pada file ini terdapat
sub rutin utama ( void main() ).
hary@eepis-its.edu 6
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
Listing blink.c sebagai berikut:
#include
void delay(int period);
/* MAIN **************/
void main()
{ brd_init(100);
/* blink all 3 DSK leds forever */
while (1)
{
brd_led_toggle(BRD_LED0);
/* brd_delay_msec(1000); */
delay(1000);
brd_led_toggle(BRD_LED1);
/* brd_delay_msec(1000); */
delay(1000);
brd_led_toggle(BRD_LED2);
/* brd_delay_msec(1000); */
delay(1000);
}
}
void delay(int period)
{ int i, j;
for(i=0; i>1; j++); }
}
Penjelasan program
Sub rutin yang telah tersedia dan dapat dipakai pada aplikasi ini adalah:
a. brd_init(freq), digunakan untuk menginisialisasi target DSK dengan frekuensi kerja
sebesar freq MHz. Nilai yang diijinkan adalah kelipatan 10, dengan nilai terendah 20
dan nilai tertinggi 100.
b. brd_led_enable(led), digunakan untuk menyalakan LED.
c. brd_led_disable(led), digunakan untuk mematikan LED.
d. brd_led_toggle(led), menggunakan rutin ini akan berakibat mengubah kondisi LED
sebelumnya.
Nilai led adalah BRD_LED0, BRD_LED1, dan BRD_LED2.
e. brd_delay_msec(msec), digunakan untuk memberikan delay dalam hitungan mili
detik. Nilai maksimum yang diijinkan adalah 6553 (memberikan delay sekitar 6.5
detik). Delay juga dapat dibangun menggunakan rutin sendiri seperti pada rutin void
delay() didalam file blink.c tersebut.
13. Kerjakan tugas sebagai laporan sementara.
hary@eepis-its.edu 7
Praktikum Pengolahan Sinyal – Code Composer Studio Basic Modul 1
7. Tugas
Cobalah untuk memodifikasi program blink.c agar dihasilkan animasi LED berikut:
LED yang menyala hanya sebuah dan bergerak dari kanan ke kiri kemudian dari kiri ke kanan
secara terus menerus.
8. Analisa
(Gunakan bagian analisa ini untuk laporan resmi)
1. Ceritakanlah kembali dengan singkat cara men-develop program pada DSP
TMS320C5402.
2. Buatlah diagram alir (flowchart) dari program blink.c tersebut.
3. Jelaskan fungsi dari subrutin Delay berikut, bagaimana cara kerjanya?
void delay(int period)
{ int i, j;
for(i=0; i>1; j++); }
}
9. Pertanyaan pendahuluan
1. Jelaskan secara singkat perbedaan DSP dengan mikroprosesor general purpose.
2. Apakah yang dikerjakan oleh cuplikan program berikut?
while (1)
{
}
10. Tambahan
Berikan saran atau komentar guna pengembangan lebih lanjut praktikum ini.
hary@eepis-its.edu 8