[Tanpa judul]
.
USART (Universal Synchronous-Asynchronous Receiver/Transmitter)
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronousharus 3 pin yaitu TXD, RXD dan XCK.
Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS sbb:
· SCLK dari master ke slave yang berfungsi sebagai clock
· MOSI jalur data dari master dan masuk ke dalam slave
· MISO jalur data keluar dari slave dan masuk ke dalam master
· SS (slave select) merupakan pin yang berfungsi untuk mengaktifkan slave
. Serial Peripheral Interface (SPI)
Serial Peripheral Interface (SPI) adalah protokol data serial sinkron digunakan oleh mikrokontroler untuk berkomunikasi dengan satu atau lebih perangkat periferal cepat jarak pendek. Hal ini juga dapat digunakan untuk komunikasi antara dua mikrokontroler. Dengan koneksi SPI selalu ada perangkat satu master (biasanya mikrokontroler) yang mengontrol perangkat periferal.
Serial Peripheral Interface ( SPI ) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh Atmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroller maupun antara mikrokontroller dengan peripheral lain di luar mikrokontroller.
Penjelasan 3 jalur utama dari SPI adalah sebagai berikut :
· MOSI : Master Output Slave Input Artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input.
· MISO : Master Input Slave Output Artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.
· CLK : Clock Jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.
Untuk mengatur mode kerja komunikasi SPI ini dilakukan dengan menggunakan register SPCR (SPI Control Register), SPSR (SPI Status Register) dan SPDR (SPI Data Register).
A. SPI Control Register (SPCR)
Mode SPCR yang digunakan adalah sebagai berikut :
a. Bit-6 SPE (SPI Enable)
SPE digunakan untuk mengaktifkan dan menonaktifkan komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan jika bernilai 0 maka komunikasi SPI tidak aktif.
b. Bit-4 MSTR (Master or Slave Select)
MSTR digunakan untuk style="letter-spacing: .55pt;"> mengkonfigurasi sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka terkonfigurasi sebagai maste sedangkan MSTR bernilai 0 maka terkonfigurasi sebagai slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jikapin SS dikonfigurasi sebagai input karena jika pin SS dikonfigurasi sebagai input maka penentuan master atau slavenya otomatis dilakukan secara hardware yaitu dengan membaca level tegangan pada .SS
c. Bit-1 SPR1/0 (SPI Clock Rate Select)
SPR1 dan SPR0 digunakan untuk menentukan kecepatan clock yang digunakan dalam komunikasi SPI.
B. SPI Status Register (SPSR)
Dalam SPSR mode pengaturan yang dilakukan adalah sebagai berikut :
a. SPIF (SPI Interrupt Flag)
C. SPI Data Register (SPDR)
SPDR merupakan register yang digunakan untuk menyimpan data yangakan dikirim atau diterima pada komunikasi SPI
Dalam mengirim dan menerima data Universal Asynchronous Receiver / Transmitter (UART) dengan bit individu dan berurutan. UART berisi sebuah register geser yang merupakan metode dasar konversi antara bentuk serial dan paralel. UART biasanya tidak secara langsung menghasilkan atau menerima sinyal eksternal digunakan antara item yang berbeda dari peralatan. Sebuah perangkat interface yang terpisah digunakan untuk mengkonversi sinyal tingkat logika dari UART dan level sinyal eksternal. Setiap karakter dikirim sebagai sedikit logika mulai rendah, sejumlah bit dikonfigurasi data (biasanya 7 atau 8, kadang-kadang 5), sebuah bit paritas opsional, dan satu atau lebih berhenti logika bit tinggi. Pada 5-8 bit berikutnya, tergantung pada kode set digunakan, mewakili karakter. Setelah data bit mungkin sedikit paritas. Satu atau dua bit berikutnya selalu dalam tanda (logika tinggi, yaitu, '1 ') negara dan disebut stop bit (s). Penerima sinyal karakter yang selesai. Sejak mulai sedikit logika rendah (0) dan berhenti logika agak tinggi (1) selalu ada demarkasi yang jelas antara karakter sebelumnya dan berikutnya.
Universal Asynchronous Transmitter Receiver / (UART) mengambil byte data dan mengirimkan bit individual secara berurutan. [1] Di tempat tujuan, sebuah UART kedua kembali merakit bit menjadi byte lengkap. Setiap UART berisi sebuah register geser yang merupakan metode dasar konversi antara bentuk serial dan paralel. Transmisi serial informasi digital (bit) melalui kawat tunggal atau media lainnya adalah biaya yang jauh lebih efektif daripada transmisi paralel melalui beberapa kabel.
Pada posisi pemancar, transmisi berlangsung dalam sebuah operasi sederhana, karena berada di bawah kontrol dari sistem transmisi. Setelah data disimpan dalam register geser, hardware UART menghasilkan mulai sedikit, menggeser jumlah yang diperlukan bit data ke dalam baris, menghasilkan dan menambahkan bit paritas (jika digunakan), dan menambahkan sedikit berhenti.
* Receiver
Semua hardware UART operasi dikendalikan oleh sinyal clock yang berjalan pada beberapa data rate - setiap bit data untuk 16 jam pulsa. Receiver menguji kondisi sinyal yang masuk di setiap pulsa clock. Jika bit tersebut terjadi, satu-setengah dari waktu, dianggap untuk bertemu dan merupakan sinyal awal dari sebuah karakter baru. Setelah menunggu lama, tingkat clock yang dihasilkan ke sebuah register geser. Setelah jumlah yang diperlukan bit untuk jangka waktu yang lama karakter (5 sampai 8 bit, biasanya) telah berlalu, isi dari register geser yang tersedia (dalam modus paralel) ke sistem penerima. UART akan menetapkan bendera yang menunjukkan data baru tersedia, dan juga dapat menghasilkan interupsi prosesor untuk meminta prosesor host transfer data yang diterima.
Pada 16550 terdapat sinyalTXRDY (Transmit Ready) dan RXRDY (Receive Ready) yang dapat digunakan untuk implementasi DMA (Direct Memory Access) dengan dua mode kerja (operasional):
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronousharus 3 pin yaitu TXD, RXD dan XCK.
Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS sbb:
· SCLK dari master ke slave yang berfungsi sebagai clock
· MOSI jalur data dari master dan masuk ke dalam slave
· MISO jalur data keluar dari slave dan masuk ke dalam master
· SS (slave select) merupakan pin yang berfungsi untuk mengaktifkan slave
. Serial Peripheral Interface (SPI)
Serial Peripheral Interface (SPI) adalah protokol data serial sinkron digunakan oleh mikrokontroler untuk berkomunikasi dengan satu atau lebih perangkat periferal cepat jarak pendek. Hal ini juga dapat digunakan untuk komunikasi antara dua mikrokontroler. Dengan koneksi SPI selalu ada perangkat satu master (biasanya mikrokontroler) yang mengontrol perangkat periferal.
Serial Peripheral Interface ( SPI ) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh Atmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroller maupun antara mikrokontroller dengan peripheral lain di luar mikrokontroller.
Penjelasan 3 jalur utama dari SPI adalah sebagai berikut :
· MOSI : Master Output Slave Input Artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input.
· MISO : Master Input Slave Output Artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.
· CLK : Clock Jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.
Untuk mengatur mode kerja komunikasi SPI ini dilakukan dengan menggunakan register SPCR (SPI Control Register), SPSR (SPI Status Register) dan SPDR (SPI Data Register).
A. SPI Control Register (SPCR)
Mode SPCR yang digunakan adalah sebagai berikut :
a. Bit-6 SPE (SPI Enable)
SPE digunakan untuk mengaktifkan dan menonaktifkan komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan jika bernilai 0 maka komunikasi SPI tidak aktif.
b. Bit-4 MSTR (Master or Slave Select)
MSTR digunakan untuk style="letter-spacing: .55pt;"> mengkonfigurasi sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka terkonfigurasi sebagai maste sedangkan MSTR bernilai 0 maka terkonfigurasi sebagai slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jikapin SS dikonfigurasi sebagai input karena jika pin SS dikonfigurasi sebagai input maka penentuan master atau slavenya otomatis dilakukan secara hardware yaitu dengan membaca level tegangan pada .SS
c. Bit-1 SPR1/0 (SPI Clock Rate Select)
SPR1 dan SPR0 digunakan untuk menentukan kecepatan clock yang digunakan dalam komunikasi SPI.
B. SPI Status Register (SPSR)
Dalam SPSR mode pengaturan yang dilakukan adalah sebagai berikut :
a. SPIF (SPI Interrupt Flag)
C. SPI Data Register (SPDR)
SPDR merupakan register yang digunakan untuk menyimpan data yangakan dikirim atau diterima pada komunikasi SPI
Pengertian UART
UART merupakan kepanjangan dari Universal
Aysnchronous Receiver I Trasmitter. Seri8250, yang mencakup 16450, 16550, 16650
dan 16750, merupakan jenis UART yang banyak digunakan, pada gambar II.3
ditunjukkan diagram pin dari jenis UART ini.Ada kalanya UART ini terpadu dalam
suatu chip bersama-sama dengan kontrol kanal paralel, kanal game, hard disk dan
floppy drive.
Struktur Uart
Sebuah clock generator, biasanya kelipatan
dari bit rate untuk memungkinkan pengambilan sampel di tengah bit.
• Input dan Output pergeseran register
• kontrol mengirim / menerima
• Kontrol logika untuk membaca / menulis
• Kirim / menerima buffer (opsional)
• Paralel data bus buffer (opsional)
• Pertama-in, first-out (FIFO) memori
(opsional)
Dalam mengirim dan menerima data Universal Asynchronous Receiver / Transmitter (UART) dengan bit individu dan berurutan. UART berisi sebuah register geser yang merupakan metode dasar konversi antara bentuk serial dan paralel. UART biasanya tidak secara langsung menghasilkan atau menerima sinyal eksternal digunakan antara item yang berbeda dari peralatan. Sebuah perangkat interface yang terpisah digunakan untuk mengkonversi sinyal tingkat logika dari UART dan level sinyal eksternal. Setiap karakter dikirim sebagai sedikit logika mulai rendah, sejumlah bit dikonfigurasi data (biasanya 7 atau 8, kadang-kadang 5), sebuah bit paritas opsional, dan satu atau lebih berhenti logika bit tinggi. Pada 5-8 bit berikutnya, tergantung pada kode set digunakan, mewakili karakter. Setelah data bit mungkin sedikit paritas. Satu atau dua bit berikutnya selalu dalam tanda (logika tinggi, yaitu, '1 ') negara dan disebut stop bit (s). Penerima sinyal karakter yang selesai. Sejak mulai sedikit logika rendah (0) dan berhenti logika agak tinggi (1) selalu ada demarkasi yang jelas antara karakter sebelumnya dan berikutnya.
Mengirimkan dan menerima data serial
Universal Asynchronous Transmitter Receiver / (UART) mengambil byte data dan mengirimkan bit individual secara berurutan. [1] Di tempat tujuan, sebuah UART kedua kembali merakit bit menjadi byte lengkap. Setiap UART berisi sebuah register geser yang merupakan metode dasar konversi antara bentuk serial dan paralel. Transmisi serial informasi digital (bit) melalui kawat tunggal atau media lainnya adalah biaya yang jauh lebih efektif daripada transmisi paralel melalui beberapa kabel.
UART biasanya tidak secara langsung
menghasilkan atau menerima sinyal eksternal digunakan antara item yang berbeda
dari peralatan. Perangkat antarmuka yang terpisah digunakan untuk mengkonversi
sinyal tingkat logika dari UART dan dari tingkat sinyal eksternal. Sinyal
eksternal mungkin berbagai bentuk. Contoh standar untuk sinyal tegangan RS-232,
RS-422 dan RS-485 dari AMDAL. Secara historis, saat ini (dalam loop arus)
digunakan di sirkuit telegraf. Beberapa skema sinyal tidak menggunakan kabel
listrik. Contoh tersebut serat optik, IrDA (inframerah), dan (nirkabel)
Bluetooth Serial Port Profile nya (SPP). Beberapa skema sinyal menggunakan
modulasi dari sinyal pembawa (dengan atau tanpa kabel). Contohnya adalah
modulasi sinyal audio dengan modem saluran telepon, RF modulasi dengan radio
data, dan DC-LIN untuk komunikasi power line.
Komunikasi dapat "full duplex"
(keduanya mengirim dan menerima pada waktu yang sama) atau "half
duplex" (perangkat bergiliran transmisi dan menerima).
* Transmitter
Pada posisi pemancar, transmisi berlangsung dalam sebuah operasi sederhana, karena berada di bawah kontrol dari sistem transmisi. Setelah data disimpan dalam register geser, hardware UART menghasilkan mulai sedikit, menggeser jumlah yang diperlukan bit data ke dalam baris, menghasilkan dan menambahkan bit paritas (jika digunakan), dan menambahkan sedikit berhenti.
Karena transmisi karakter tunggal dapat
memakan waktu yang lama relatif terhadap kecepatan CPU, UART akan
mempertahankan bendera yang menunjukkan status dari host sibuk, sehingga sistem
tidak menyimpan karakter baru untuk transmisi sampai sebelumnya telah selesai,
dapat juga dilakukan dengan interrupt.
Karena full-duplex operasi membutuhkan
karakter yang akan dikirim dan diterima pada saat yang sama, UART menggunakan
dua shift register yang berbeda untuk karakter karakter ditransmisikan dan
diterima.
* Receiver
Semua hardware UART operasi dikendalikan oleh sinyal clock yang berjalan pada beberapa data rate - setiap bit data untuk 16 jam pulsa. Receiver menguji kondisi sinyal yang masuk di setiap pulsa clock. Jika bit tersebut terjadi, satu-setengah dari waktu, dianggap untuk bertemu dan merupakan sinyal awal dari sebuah karakter baru. Setelah menunggu lama, tingkat clock yang dihasilkan ke sebuah register geser. Setelah jumlah yang diperlukan bit untuk jangka waktu yang lama karakter (5 sampai 8 bit, biasanya) telah berlalu, isi dari register geser yang tersedia (dalam modus paralel) ke sistem penerima. UART akan menetapkan bendera yang menunjukkan data baru tersedia, dan juga dapat menghasilkan interupsi prosesor untuk meminta prosesor host transfer data yang diterima.
Sebuah UART biasanya berisi komponen dari
sebuah clock generator, biasanya kelipatan dari bit rate untuk memungkinkan
pengambilan sampel dalam periode bit.Input tengah dan register keluaran
bergeser. Mengirim / menerima kontrol. Membaca / menulis kontrol logika.
Mengirim / menerima buffer (opsional). Paralel data bus buffer (opsional).
Pertama-in, first-out (FIFO) memori (opsional). UART mengambil byte data dan
mengirimkan bit individual secara berurutan. Setiap UART berisi sebuah register
geser yang merupakan metode dasar konversi antara bentuk serial dan paralel.
UART biasanya tidak secara langsung menghasilkan atau menerima sinyal eksternal
digunakan antara item yang berbeda dari peralatan. Setiap karakter dikirim
sebagai logika dengan pengiriman awal nilai rendah, jumlah bit data dikonfigurasi
(biasanya 7 atau 8, kadang-kadang 5), sebuah bit paritas opsional, dan satu
atau lebih berhenti logika bit tinggi. Bit pada penerima sinyal dan kemudian
dilanjutkan dengan bit 5-8 berikutnya, tergantung pada kode set digunakan,
mewakili karakter. Setelah itu, satu atau dua bit berikutnya selalu dalam
keadaan logika tinggi, yaitu, '1 'dan disebut stop bit (s). Penerima sinyal
selesai. Pada logika rendah (0) dan stop bit logika tinggi (1), ada demarkasi
yang jelas antara karakter sebelumnya dan berikutnya.
Keping 16550 merupakan kompatibelnya 8250
dan 16450, perbedaannya terletak pada pin 24 dan 29:
Kaki
16550
8250/16450
24
TXRDY
CSOUT
29
RXRDY
Tidak dihubungkan
Pada 16550 terdapat sinyalTXRDY (Transmit Ready) dan RXRDY (Receive Ready) yang dapat digunakan untuk implementasi DMA (Direct Memory Access) dengan dua mode kerja (operasional):
1. Mode
0 - Single Transfer DMA: lebih dikenal juga dengan mode 16450,mode ini
diaktifkan dengan cara menon-aktifkanFIFO (bit-0 FCR = 0) atau dengan
mengaktifkan FIFO dan pemilih mode DMA (bit-3 FCR = 1). Sinyal RXRDY akan aktif
(rendah) jika ada (minimal) sebuah karakter pada penyangga penerima dan akan
kembali non-aktif (tinggi) jika tidak ada satupun karakter pada penyangga
penerima, sedangkan sinyal TXRDY akan aktif jika penyangga pengirim kosong sama
sekali dan akan kembali non-aktif (tinggi) setelah karakter 1 byte pertama
diisikan ke penyangga pengirim.
2. Mode
1 - Multi Transfer DMA: dipilih dengan syarat FCR bit-0 = 1 dan FCR bit-3 - 1.
Pada mode ini, sinyal RXRDY akan aktif (rendah) jika telah tercapai tingkat
picuan (trigger level} atau saat munculnya time-out 16550 dan akan kembali
non-aktif jika sudah tidak ada satupun karakter yang tersimpan dalam FIFO.
Sinyal TXRDY akan aktif (rendah) jika tidak ada karakterpun pada penyangga
pengirim dan akan non-aktif jika penyangga pengirim FIFO sudah betul-betul
penuh.
Gambar Diagram Pin UART 16550 dan
8250/16450
Semua chip UART kompatibel dengan TTL
(termasuk sinyal TxD, RxD, RI, DCD, DTS, CTS, DTR dan RTS), dengan demikian
diperlukan konverter tingkat RS232 (RS232 level converter) yang berfungsi untuk
mengkonversi sinyal TTL menjadi logika tingkat RS232. Interupsiin itu UART juga
membutuhkan clock untuk operasionalnya, biasanya dibutuhkan kristal eksternal
dengan frekuensi 1,8432 MHz atau 18,432 MHz.
Fungsi PinOut UART 16550 dan 8250/16450
Tipe-tipe UART
· 8250
UART pertama pada seri ini. Tidak memiliki register scratch, versi 8250A
merupakan versi perbaikan dari 8250 yang mampu bekerja dengan lebih cepat;
· 8250A
UART ini lebih cepat dibandingkan dengan 8250 pada sisi bus. Lebih mirip secara
perangkat lunak dibanding 16450;
· 8250B
Sangat mirip dengan 8250;
· 16450
Digunakan pada komputer AT dengan kecepatan 38,4 Kbps, masih banyak digunakan
hingga sekarang;
· 16550
Generasi pertama UART yang memiliki penyangga, dengan panjang 16-byte, namun
tidak bekerja (produk gagal) sehingga digantikan dengan
· 16550A;
a. 16550A
UART yang banyak digunakan pada komunikasi kecepatan tinggi, misalnya 14,4 Kbps
atau 28,8 Kbps;
b. 16650
UART baru, memiliki penyangga FIFO 32-byte, karakter Xon/Xoff terprogram dan
mendukung manajemen sumber daya;
· 16750
Diproduksi oleh Texas Instrument, memiliki FIFO 64-byte!
Posting Komentar untuk " "