Bahasa mesin yang terjana daripada MPLAP X IDE akan dimasukkan ke dalam PIC18F45K22 dengan menggunakan kaedah serial bootloader. Untuk tujuan itu, kita akan menggunakan sebuah perisian yang bernama Tiny Multi Bootloader+ sebagai GUI bagi memasukkan bahasa mesin ke dalam PIC18F45K22. Perisian ini adalah open source dan telah dikongsi ke umum melalui https://sourceforge.net/projects/tinypicbootload/files/
Sunday, 4 September 2016
Serial Bootloader for PIC18F45K22
Bahasa mesin yang terjana daripada MPLAP X IDE akan dimasukkan ke dalam PIC18F45K22 dengan menggunakan kaedah serial bootloader. Untuk tujuan itu, kita akan menggunakan sebuah perisian yang bernama Tiny Multi Bootloader+ sebagai GUI bagi memasukkan bahasa mesin ke dalam PIC18F45K22. Perisian ini adalah open source dan telah dikongsi ke umum melalui https://sourceforge.net/projects/tinypicbootload/files/
Wednesday, 16 September 2015
Teori - Universal asynchronous receive transmit (UART)
UART - Universal Asynchronous Receiver and Transmitter merupakan serial protocol yang sangat berguna. Ia dilihat menjadi pilihan yang common untuk berkomunikasi dengan sistem komputer / Microcontroller.
Untuk kupasan lanjut berkenaan dengan teori UART, sila klik disini.
Cara guna printf() dalam XC8
The printf() function performs the formatting and then calls a helper function, called putch, to send each byte of the formatted text. By default the putch() function is empty. It should be customised to suit the project at hand. By customizing the putch function you can have printf send data to any peripheral or location. The printf() function is used to print to USART, but it could define stdout to output to an LCD screen or SPI. Code to initialize the intended destination must be executed before printf() is called.
Mengikut wikidot.com, kita boleh guna function printf() bagi menghantar mesej melalui UART.
Berikut adalah caranya:
References
|
[1]
|
Microchip, "Wikidot.com," 17 April 2014.
[Online]. Available: http://microchip.wikidot.com/faq:29. [Accessed 16
September 2015].
|
|
[2]
|
Microchip, "Microchip Technology Inc," 5 Aug
2012. [Online]. Available:
ww1.microchip.com/downloads/en/DeviceDoc/52053B.pdf. [Accessed 19 Sep
2015].
|
Tuesday, 25 August 2015
Cara guna ADC modul di dalam PIC8F4550
- Voltage Input yang datang daripada Analog Channel (AN0 - AN12).
- Reference Voltage iaitu Vref(+) dan Vref(-)
- Resolution 10bit (0 - 1023)
- A/D conversion time per bit, Tad.
- ADCON0
- ADCON1
- ADCON2
Tulis aturcara C18 supaya Pin RA0 pada PIC18F4550 boleh digunakan untuk melakukan proses ADC secara berterusan. Dimana configurasi ADC yang diperlukan adalah seperti berikut:
ii) Vref (-) = Vss (0V)
iii) Resolution = 10 bit
iv) A/D Acquisition Time = 12Tad
Penutup:
Diharapkan post yang ringkas ini akan memberi manfaat kepada pembaca. Jika terdapat masalah atau kekeliruan, sila komen di ruang yang disediakan.
Sekian
Wednesday, 31 December 2014
Cara Debug Program guna Virtual Terminal
- Cara configure PIC18F supaya boleh hantar dan terima data melalui UART protocol.
- Redirect arahan printf ke UART. Teknik ini khas untuk C18 Compiler.
a) Baud Rate 9600 bps
b) Size data 8-bit
Tuesday, 30 December 2014
printf menggunakan CDC
Contoh applikasi ini boleh diambil dari MLA versi v2013-06-15. Cara guna MLA untuk PIC18F4550 boleh rujuk disini.
tambah
1. stdout = _H_USER
2. Function:-
i)// Private API
void usb_puts(char *buf) {
if ((USBDeviceState >= CONFIGURED_STATE) && (USBSuspendControl != 1)) {
int i;
for(i = 1000; i > 0; --i) {
if(mUSBUSARTIsTxTrfReady()) break;
CDCTxService();
}
if (i > 0) {
putsUSBUSART(buf);
CDCTxService();
}
}
return;
}
ii)
int _user_putc(char c) {
char buf[2];
buf[0] = c;
buf[1] = '\0';
usb_puts(buf);
return(c);
}
Setelah tambah TIGA (3) item ini ke dalam main.c, maka arahan printf boleh digunakan untuk menghantar mesej melalui USB port ke HyperTerminal.
contoh program boleh download disini
Monday, 22 September 2014
PIC8F4550 + PINGUINO
Pinguino merupakan perisian kategori open source. Baru - baru ini penguino telah mencipta firmware dan library untuk mendukung PIC18F4550. Selain daripada itu, penguino juga menyediakan rujukan dan panduan pengguna yang sangat terperinci. Segala software dan firmware boleh dimuat turun di www.pinguino.cc
Setelah firmware dimasukkan ke dalam PIC18F4550. Proses load program boleh dilakukan melalui USB bootloader. Kaedah ini dapati lebih mudah berbanding dengan USB bootloader yang disediakan oleh Microchip. Ini kerana untuk memasuki bootloader mode:
Guna pinguino USB bootloader:-
untuk masuk ke bootloader mode: pengguna perlu sambungkan cable USB ke USB host pada PC dan tekan butang reset.
Guna Microchip USB bootloader:-
Untuk masuk ke bootloader mode:
Pengguna perlu sambung cable USB dan tekan butang RESET+SW1. Di mana SW1 ini telah ditetapkan di dalam firmware.
Tambahan lagi, library yang disediakan oleh pinguino sangat berguna. Terutamanya CDC yang membolehkan UART to USB conversation dilakukan secara software. Dalam kata lain pengguna boleh jimat kos kerana tidak perlu beli UART to USB converter. Selain daripada itu, function yang disediakan oleh pinguino untuk CDC adalah mirip kepada standard C program. Contoh
CDC.printf ("hello world");
ini memudahkan pengguna untuk debugging program.




