SERIAL
[Back to Home]
MOTOR STEPPER
2. Alat dan Bahan [kembali]
- PIC 16F887
- Button
- Crystal
- Serial Port
- Resistor
- Switch
- Jumper
- Kapasitor
- dll.
3. Dasar Teori [kembali]
1. PIC16F887 adalah salah satu produk terbaru dari Microchip . Ini menampilkan semua komponen yang biasanya dimiliki mikrokontroler modern. Untuk harga murah, beragam aplikasi, kualitas tinggi dan ketersediaan yang mudah, ini adalah solusi ideal untuk aplikasi seperti: pengendalian berbagai proses di industri, perangkat kontrol mesin, pengukuran nilai yang berbeda, dll. Beberapa fitur utamanya adalah tercantum di bawah ini.
1. PIC16F887 adalah salah satu produk terbaru dari Microchip . Ini menampilkan semua komponen yang biasanya dimiliki mikrokontroler modern. Untuk harga murah, beragam aplikasi, kualitas tinggi dan ketersediaan yang mudah, ini adalah solusi ideal untuk aplikasi seperti: pengendalian berbagai proses di industri, perangkat kontrol mesin, pengukuran nilai yang berbeda, dll. Beberapa fitur utamanya adalah tercantum di bawah ini.
- Arsitektur RISC
- Hanya 35 petunjuk untuk belajar
- Semua instruksi siklus tunggal kecuali cabang
- Frekuensi operasi 0-20 MHz
- Osilator internal presisi
- Pabrik dikalibrasi
- Rentang frekuensi perangkat lunak yang dipilih 8MHz sampai 31KHz
- Power supply voltage 2.0-5.5V
- Konsumsi: 220uA (2.0V, 4MHz), 11uA (2,0 V, 32 KHz) 50nA (mode siaga)
- Hemat Daya Mode Tidur
- Brown-out Reset (BOR) dengan pilihan kontrol perangkat lunak
- 35 pin input / output
- Sumber arus tinggi / sink untuk penggerak LED langsung
- perangkat lunak dan resistor pull-up yang dapat diprogram secara individual
- Pin Interrupt-on-Change
- Memori ROM 8K dalam teknologi FLASH
- Chip bisa diprogram ulang hingga 100.000 kali
- Opsi Pemrograman Serial-Circuit
- Chip yang bisa diprogram bahkan tertanam di perangkat target
- Memori EEPROM 256 byte
- Data bisa ditulis lebih dari 1.000.000 kali
- 368 byte memori RAM
- A / D converter:
- 14 saluran
- Resolusi 10 bit
- 3 timer / counter independen
- Pengatur waktu menonton anjing
- Modul komparator analog dengan
- Dua komparator analog
- Referensi tegangan tetap (0.6V)
- Referensi tegangan on-chip yang dapat diprogram
- Kontrol kemudi output PWM
- Modul USART yang disempurnakan
- Mendukung RS-485, RS-232 dan LIN2.0
- Auto-Baud Detect
- Master Synchronous Serial Port (MSSP)
- mendukung mode SPI dan I2C
2. Kapasitor
Kapasitor adalah suatu komponen elektronika yang berfungsi untuk
menyimpan arus listrik sementara dalam bentuk muatan, selain itu
kapasitor juga dapat digunakan sebagai penyaring frekuensi.
Kapasitas untuk menyimpan kemampuan kapasitor dalam muatan listrik
disebut Farad (F) sedangkan simbol dari kapasitor adalah C (kapasitor).
sebuah kapasitor pada dasarnya terbuat dari dua buah lempengan logam
yang saling sejajar satu sama lain dan diantara kedua logam tersebut
terdapat bahan isolator yang sering disebut dielektrik.
3. Crystal
Kristal digunakan pada rangkaian elektronika yang berhubungan dengan
pembangkitan frekuensi baik itu frekuensi tinggi, frekuensi suara,
maupun frekuensi rendah.
4. button
Push Button adalah saklar tekan yang berfungsi sebagai pemutus atau penyambung
arus listrik dari sumber arus ke beban listrik. Suatu sistem saklar
tekan push button terdiri dari saklar tekan start, stop reset dan saklar
tekan untuk emergency.
5. Serial
Komunikasi serial adalah komunikasi yang pengiriman datanya per-bit secara berurutan dan bergantian. Komunikasi ini mempunyai suatu kelebihan yaitu hanya membutuhkan satu jalur dan kabel yang sedikit dibandingkan dengan komunikasi paralel. Pada prinsipnya komunikasi serial merupakan komunikasi dimana pengiriman data dilakukan per bit sehingga lebih lambat dibandingkan komunikasi parallel, atau dengan kata lain komunikasi serial merupakan salah satu metode komunikasi data di mana hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu waktu tertentu. Pada dasarnya komunikasi serial adalah kasus khusus komunikasi paralel dengan nilai n = 1, atau dengan kata lain adalah suatu bentuk komunikasi paralel dengan jumlah kabel hanya satu dan hanya mengirimkan satu bit data secara simultan.Hal ini dapat disandingkan dengan komunikasi paralel yang sesungguhnya di mana n-bit data dikirimkan bersamaan, dengan nilai umumnya 8 ≤ n ≤ 128.
Komunikasi serial ada dua macam, asynchronous serial dan synchronous serial. Synchronous serial adalah komunikasi dimana hanya ada satu pihak (pengirim atau penerima) yang menghasilkan clock dan mengirimkan clock tersebut bersama-sama dengan data. Contoh pengunaan synchronous serial terdapat pada transmisi data keyboard. Asynchronous serial adalah komunikasi dimana kedua pihak (pengirim dan penerima) masing-masing menghasilkan clock namun hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim sama dengan data yang diterima, maka kedua frekuensi clock harus sama dan harus terdapat sinkronisasi. Setelah adanya sinkronisasi, pengirim akan mengirimkan datanya sesuai dengan frekuensi clock pengirim dan penerima akan membaca data sesuai dengan frekuensi clock penerima. Contoh penggunaan asynchronous serial adalah pada Universal Asynchronous Receiver Transmitter (UART) yang digunakan pada serial port (COM) komputer.
PIC
16F887 dilengkapi dengan USART inbuilt yang dapat digunakan untuk
komunikasi Synchronous / Asynchronous. Untuk mengaktifkan modul UART
pada PIC ini, register yang berperan adalah ,
Konfigurasi bit-bit yang terdapat pada Register TXSTA,
Fungsi masing- masing bit pada register ini adalah,
CSRC: Sumber Clock
TX9: Transmit 9 bit
1 = Memilih transmisi 9 bit
0 = Memilih transmisi 8-bit
TXEN: Transmit Enable bit
1 = Transmit diaktifkan
0 = Transmit dinonaktifkan
SYNC: USART Mode
1 = Modus sinkron
0 = Mode asynchronous
BRGH: Tingkat Baud Tinggi Pilih bit
1 = Kecepatan tinggi
0 = Kecepatan rendah
TRMT: Transmit Shift Register Status bit
1 = TSR kosong
0 = TSR penuh
TX9D: bit ke-9 Transmit Data, bisa jadi Parity bit
Selanjutnya konfigurasi bit-bit pada register RCSTA,
Fungsi dari masing-masing bit pada register ini adalah,
SPEN: Serial Port
1 = Port serial diaktifkan (konfigurasikan pin RC7 / RX / DT dan RC6 / TX / CK sebagai pin port serial)
0 = Port serial dinonaktifkan
RX9: 9-bit Receive Enable bit
1 = Memilih penerimaan 9 bit
0 = Memilih penerimaan 8-bit
SREN: Single Receive Enable bit
CREN: Continuous Receive Enable bit
Asynchronous mode:
1 = Mengaktifkan continuous receive
0 = Menonaktifkan continuous receive
ADDEN: Address Detect Enable bit
Asynchronous mode 9-bit (RX9 = 1):
1 = Mengaktifkan deteksi alamat, memungkinkan interupsi dan beban buffer penerima saat RSR diset
0 = Menonaktifkan deteksi alamat, semua byte diterima dan bit kesembilan terjadi, digunakan sebagai paritas bit
FERR: Framing Error bit
1 = Framing error (dapat diupdate dengan membaca register RCREG dan menerima byte valid berikutnya)
0 = No framing error
OERR: Overrun Error bit
1 = Overrun error (dapat dihapus dengan cara membersihkan bit CREN)
0 = Tidak ada kesalahan overrun
RX9D: bit 9 Received Data (bisa parity bit tapi harus dihitung oleh user firmware)
Selain mengunakan akases register, komunikasi UART dapat dilakukan dengan memanfaatkan library UART MikroC PIC. yang harus dilakukan sebelum melakukan komunikasi, maka proses inisialisasi harus terlebih dahulu dilakukan. Instruksi yang digunakan adalah,
UART1_Init(nilai_baudrate)
Nilai baudrate yang diisikan adalah berupa bilangan integer seperti 9600, 4800, 2400, dan seterusnya.
Adapun masih banyak insrtuksi baku yang telah disediakan pada library MikroC PIC yang tidak dapat dijabarkan disini semuanya.
5. Serial
Komunikasi serial adalah komunikasi yang pengiriman datanya per-bit secara berurutan dan bergantian. Komunikasi ini mempunyai suatu kelebihan yaitu hanya membutuhkan satu jalur dan kabel yang sedikit dibandingkan dengan komunikasi paralel. Pada prinsipnya komunikasi serial merupakan komunikasi dimana pengiriman data dilakukan per bit sehingga lebih lambat dibandingkan komunikasi parallel, atau dengan kata lain komunikasi serial merupakan salah satu metode komunikasi data di mana hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu waktu tertentu. Pada dasarnya komunikasi serial adalah kasus khusus komunikasi paralel dengan nilai n = 1, atau dengan kata lain adalah suatu bentuk komunikasi paralel dengan jumlah kabel hanya satu dan hanya mengirimkan satu bit data secara simultan.Hal ini dapat disandingkan dengan komunikasi paralel yang sesungguhnya di mana n-bit data dikirimkan bersamaan, dengan nilai umumnya 8 ≤ n ≤ 128.
Komunikasi serial ada dua macam, asynchronous serial dan synchronous serial. Synchronous serial adalah komunikasi dimana hanya ada satu pihak (pengirim atau penerima) yang menghasilkan clock dan mengirimkan clock tersebut bersama-sama dengan data. Contoh pengunaan synchronous serial terdapat pada transmisi data keyboard. Asynchronous serial adalah komunikasi dimana kedua pihak (pengirim dan penerima) masing-masing menghasilkan clock namun hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim sama dengan data yang diterima, maka kedua frekuensi clock harus sama dan harus terdapat sinkronisasi. Setelah adanya sinkronisasi, pengirim akan mengirimkan datanya sesuai dengan frekuensi clock pengirim dan penerima akan membaca data sesuai dengan frekuensi clock penerima. Contoh penggunaan asynchronous serial adalah pada Universal Asynchronous Receiver Transmitter (UART) yang digunakan pada serial port (COM) komputer.
RS232 |
Fungsi masing- masing bit pada register ini adalah,
CSRC: Sumber Clock
TX9: Transmit 9 bit
1 = Memilih transmisi 9 bit
0 = Memilih transmisi 8-bit
TXEN: Transmit Enable bit
1 = Transmit diaktifkan
0 = Transmit dinonaktifkan
SYNC: USART Mode
1 = Modus sinkron
0 = Mode asynchronous
BRGH: Tingkat Baud Tinggi Pilih bit
1 = Kecepatan tinggi
0 = Kecepatan rendah
TRMT: Transmit Shift Register Status bit
1 = TSR kosong
0 = TSR penuh
TX9D: bit ke-9 Transmit Data, bisa jadi Parity bit
Selanjutnya konfigurasi bit-bit pada register RCSTA,
SPEN: Serial Port
1 = Port serial diaktifkan (konfigurasikan pin RC7 / RX / DT dan RC6 / TX / CK sebagai pin port serial)
0 = Port serial dinonaktifkan
RX9: 9-bit Receive Enable bit
1 = Memilih penerimaan 9 bit
0 = Memilih penerimaan 8-bit
SREN: Single Receive Enable bit
CREN: Continuous Receive Enable bit
Asynchronous mode:
1 = Mengaktifkan continuous receive
0 = Menonaktifkan continuous receive
ADDEN: Address Detect Enable bit
Asynchronous mode 9-bit (RX9 = 1):
1 = Mengaktifkan deteksi alamat, memungkinkan interupsi dan beban buffer penerima saat RSR diset
0 = Menonaktifkan deteksi alamat, semua byte diterima dan bit kesembilan terjadi, digunakan sebagai paritas bit
FERR: Framing Error bit
1 = Framing error (dapat diupdate dengan membaca register RCREG dan menerima byte valid berikutnya)
0 = No framing error
OERR: Overrun Error bit
1 = Overrun error (dapat dihapus dengan cara membersihkan bit CREN)
0 = Tidak ada kesalahan overrun
RX9D: bit 9 Received Data (bisa parity bit tapi harus dihitung oleh user firmware)
Selain mengunakan akases register, komunikasi UART dapat dilakukan dengan memanfaatkan library UART MikroC PIC. yang harus dilakukan sebelum melakukan komunikasi, maka proses inisialisasi harus terlebih dahulu dilakukan. Instruksi yang digunakan adalah,
Nilai baudrate yang diisikan adalah berupa bilangan integer seperti 9600, 4800, 2400, dan seterusnya.
Adapun masih banyak insrtuksi baku yang telah disediakan pada library MikroC PIC yang tidak dapat dijabarkan disini semuanya.
5. Program [kembali]
char data_rd;
void main() {
UART1_Init(19200); // Initialize UART module at baud rate 19200 bps
Delay_ms(100); // Wait for UART module to stabilize
UART1_Write_Text("Enter Data");
UART1_Write(10);// moving one line forward
UART1_Write(13);// carriage return
while (1) { // loop executed infinite times
if (UART1_Data_Ready()) { // If data is received from PC
data_rd = UART1_Read(); // read the received data
UART1_Write(data_rd); // send data via UART
}
}
}
Tidak ada komentar:
Posting Komentar