Friday, 22 September 2017

Bagian II. Pengenalan Perangkat Lunak Digital Signal Processor Delfino F28335

1. Pendahuluan


Bagian II ini akan membahas tentang perangkat lunak / software compiler pemrograman  yang akan digunakan untuk pengoperasian perangkat keras DSP Experimenter's Kit Delfino F28335. Perangkat lunak yang digunakan disini adalah Code Composer Studio (CCS) dimana bahasa pemrograman yang digunakan adalah C++. Software ini terlampir dalam setiap pembelian paket Experimenter's Kit Delfino baru atau dapat  juga dengan mengunduh dari website ini. Hal yang perlu diperhatikan sebelum mendownload dan menginstal software tersebut adalah pastikan spesifikasi komputer / laptop dan sistem operasi yang digunakan memenuhi persyarat minimum atau yang direkomendasikan. Pada tutorial ini, CCS yang digunakan adalah versi 6.1.3, dimana persyaratan minimum / rekomendasi komputer dan sistem operasi seperti yang tercantum dalam tabel 1 :


Tabel 1: Persyaratan Spesifikasi Komputer / Laptop Code Composer Studio v 6.1.3 : 
Minimum
Recommended
Hard disk
400 MB
2GB average 
(1 or 2 device families) or
3.5GB (all features)
Memory
2 GB
6 GB
Processor
1.0GHz x86 compatible processor
Dual core x86 compatible processor
Operating System
Windows XP SP3 ,  Windows 7 SP1, Windows 8.x and Windows 10
* Sumber :  Texas Instruments Wiki

Setelah Code Composer Studio diinstal, langkah selanjutnya adalah instalasi file library tambahan yang juga dapat didownload di website Texas Instruments yakni :
  1. F2833x header files (sprc530)
  2. C28x IQmath library (sprc087)
Untuk versi terbaru, kedua file library diatas tersedia dalam folder Control Suite. Control Suite dapat didownload di : http://www.ti.com/tool/ControlSuite

Folder direktori untuk F2833x header files adalah : C:\ti\controlSUITE\device_support\f2833x, sedangkan folder direktori C28x IQmath library adalah : C:\ti\controlSUITE\libs\math\IQmath.

2. Pemrograman Dasar


Bagian ini akan membahas langkah pemakaian perangkat lunak Code Composer Studio dan perangkat keras Experimenter Kit Delfino F28335 serta pemrogramannya. Sebelum memulai pemrograman, Experimenter Kit terlebih dahulu disambungkan ke komputer via kabel USB dan indikator daya (LED) pada control card F28335 akan menyala. Contoh program yang akan digunakan disini adalah sebuah program counter sederhana dimana variabelnya akan ditampilkan ke dalam "Watch Expressions" pada Code Composer Studio. Berikut adalah langkah-langkah pemrogramannya :

1. Double click icon Code Composer Studio pada desktop.

Gambar 1. Icon Code Composer Studio pada Layar Desktop Komputer

Gambar 2. Proses Loading Software

2. Setelah itu muncul "Workspace Launcher" seperi terlihat pada Gambar 3. Click "OK" untuk menerima permintaan letak direktori default file kerja (workspace) atau click "Browse" untuk memilih letak direktori folder lain sesuai dengan keinginan. Tunggu sampai jendela CCS C/C++ seperti Gambar 4 muncul di layar monitor komputer.


Gambar 3. Pemilihan Lokasi Folder Kerja (Workspace) 

Gambar 4. Tampilan Jendela Code Composer Studio v6.1.3

3. Pada toolbar Code Composer Studio (Gambar 5), buat file project baru. Click File >> New >> CCS Project (Gambar 6).

Gambar 5. Toolbar Code Composer Studio

Gambar 6. Pilihan Toolbar untuk Pembuatan Project Baru

4. Pilih target processor yang digunakan : 2833x Delfino >> Experimenter's Kit - Delfino F28335. Lalu berikan nama project "Project_0", Pilih lokasi direktori file kerja (workspace) default atau di direktori folder lain jika menggunakan lokasi folder kerja yang berbeda. Kemudian click "Finish" (Lihat Gambar 7). Kemudian akan muncul tampilan lembar kerja project "Project_0" seperti terlihat pada Gambar 8.

Gambar 7. Pembuatan Project Baru

Gambar 8. Tampilan Lembar Kerja Project_0

5. Pada "Project Explorer", click kanan "Project_0 [Active - Debug]", click "Properties" (Lihat Gambar 9)

Gambar 9. Setting Properties Project

6. Properties dari project "Project_0" seperti terlihat pada Gambar 10. Pilih Build >> C2000 Linker >> Basic Options, Ubah stack size menjadi 0x400 lalu click "OK".

Gambar 10. Properties Project "Project_0"

7. Kemudian buat settingan konfigurasi target yang baru, click kanan project "Project_0" pada project explorer, Pilih dan click New >> Target Configuration File. Beri nama file Target Configuration : "F28335Target.ccxml" kemudian click "Finish(Gambar 11). Setelah itu pilih connection : "Texas Instruments XDS100v1 USB Debug Probe", kemudian centang pilihan "Experimenter's Kit - Delfino F28335" lalu "Save" (Gambar 12).


Gambar 11. New Target Configuration

Gambar 12. Setup Target Configuration

8. Click "main.c" pada "Project Explorer", hapus semua baris perintah yang tertulis, ketik baris perintah seperti yang tedapat pada listing source code dibawah (lihat Gambar 13), lalu "Save" file tersebut.

Source Code :

unsigned int a;
unsigned int b;
unsigned int c;

void main (void)
{
 while(1)
 {
  for (a=0; a<10; a++)
  {
   b = a*a;
   c = a+b;
  }
 }
}

Gambar 13. Program Utama

9. Untuk mengecek error pada source code, click "Debug" (Gambar 14). Jendela "CCS Debug" (Gambar 15) akan muncul kemudian dan apabila setelah debug tidak ditemukan error, maka dapat dilanjutkan ke langkah 10 dibawah.

Gambar 14. Debug Program

Gambar 15. CCS Debug

10. Click "CPU Reset" (Gambar 16)

Gambar 16. Reset CPU


11. Click "Restart" (Gambar 17).

Gambar 17. Restart

12. Kemudian pada toolbar pilih Run >> Go Main atau tekan tombol Alt + M bersamaan (Gambar 18)


Gambar 18. Go Main

13. Tambahkan variabel "a" ke dalam Watch Window / Expression dengan cara mem-blok variabel diikuti dengan click kanan dan click "Add Watch Expression" (Gambar 19). Lakukan langkah yang sama untuk penambahan variabel "b" dan "c" ke dalam Watch Window / Expression. 




Gambar 19. Menambahkan Variabel ke Watch Window / Expressions

14. Untuk mengeksekusi program per baris perintah, click toolbar "Step Into" atau tekan tombol "F5" (Gambar 20). Amati highlight baris perintah dan perubahan nilai variabel "a", "b" dan "c" setiap kali "Step Into" di-click.

Gambar 20.Eksekusi Program per Baris Perintah (Step Into)

15. Untuk keluar dari kondsi debug, click "Terminate" (Gambar 21) atau tekan tombol Ctrl + F2 secara bersamaan


Gambar 21. Terminate Program

Real Time Mode Operation

1. Untuk menjalankan program dalam real time mode (continuous operation), reset CPU kemudian restart program (Lihat langkah 10 & 11). Watchdog timer harus dinonaktifkan terlebih dahulu dengan cara click : Scripts >> Watchdog >> Disable_WD pada toolbar CCS Debug. Watchdog timer akan dijelas lebih lanjut pada bagian berikutnya dalam tutorial ini.


Gambar 22.  Disable Watchdog

2. Mulai real-time debug dengan cara click : Scripts >> Realtime Emulation Control >> Run_Realtime_with_Restart pada toolbar. Dengan menggunakan “Run_Realtime_with_Restart, kita memaksa CCS untuk meletakkan program counter pada alamat awal dari project di RAM (fungsi “c_int00”) dan memulainya pada posisi ini.

Gambar 23. Run Real Time with Restart

3. Ubah interval continuous refresh pada watch expression window . Click pada segitiga putih pada pojok kanan atas dari watch expressions window, pilih “Customize Continuous Refresh Interval”. Ubah nilai “Continuous Refresh Interval” ke1 second (1000 milliseconds), kemudian click "Apply" dan "OK".





Gambar 24. Continuous Refresh Interval Setting

4. Click “Continuous Refresh” pada watch expression window (Gambar 25) dan click run program (Gambar 26). Amati perubahan nilai variabel (a, b, dan c) pada watch expressions window. Nilai variabel akan berubah secara acak karena program berjalan lebih cepat dari pada single step (langkah 14).



Gambar 25. Continuous Refresh

Gambar 26. Run Program

5. Untuk menghentikan real time mode operation, pada toolbar click : Scripts >> Realtime Emulation Control >> Full_Halt

Gambar 27. Full Halt

Video : Real Time Mode Operation

Bagian berikutnya akan membahas tentang penggunaan General Purpose Input / Output (GPIO) dan konfigurasinya. 



REFERENSI

[1] Texas Instruments, C2000 Teaching Materials
[2] http://www.ti.com/tool/ControlSuite
[3] http://processors.wiki.ti.com/index.php/System_Requirements 



<< Sebelumnya               Berikutnya >>

No comments:

Post a Comment