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
PIN
|
Nama
|
Keterangan
|
Pin 1-8
|
D0:D7
|
Bus Data
|
Pin 9
|
RCLK
|
Masukan Clock penerima Frekuensinya harus sama
dengan baud-rate x26
|
Pin 10
|
RD
|
Terima data
|
Pin 11
|
TD
|
Kirim data
|
Pin 12
|
CS0
|
Chip select 0 - aktif tinggi
|
Pin 13
|
CS1
|
Chip select 1 - aktif rendah
|
Pin 14
|
CS2
|
Chip select 2 – aktif rendah
|
Pin 15
|
BOUDOUT
|
Keluaran Baud – Keluaran dari Pembangkit Baud Rate
Terprogram. Frekuensi = (baud rate x 16)
|
Pin 16
|
XIN
|
Masukan kristal eksternal –Digunakan untuk osilator
pembangkit Boud Rate
|
Pin 17
|
XOUT
|
Keluran Kristal Eksternal
|
Pin 18
|
WR
|
Jalur Tulis – Aktif Rendah
|
Pin 19
|
WR
|
Jalur Tulis – Aktif Tinggi
|
Pin 20
|
VSS
|
Dihubungkan ke ground
|
Pin 21
|
RD
|
Jalur Baca– Aktif Tinggi
|
Pin 22
|
RD
|
Jalur Baca – Aktif Rendah
|
Pin 23
|
DDIS
|
Drive disable. Pin ini akan rendah saat CPUmembaca
dari UART. Dapat dihubungkan bus data kapasitas tinggi
|
Pin 24
|
TXRDY
|
Transmit Ready – Siap kirim
|
Pin 25
|
ADS
|
Address Store. Digunakan jika sinyal tidak stabil
interupsima siklus baca atau tulis
|
Pin 26
|
A2
|
Bit alamat 2
|
Pin 27
|
A1
|
Bit alamat 1
|
Pin 28
|
A0
|
Bit alamat 0
|
Pin 29
|
RXRDY
|
Receive Ready (siap terima data)
|
Pin 30
|
INTR
|
Intrrupt Output (keluaran interupsi)
|
Pin 31
|
OUT2
|
User Output 2 (keluaran pengguna2)
|
Pin 32
|
RTS
|
Reguest to Send (permintaan pengiriman)
|
Pin 33
|
DTR
|
Dat Terminal Ready (Terminal data siap)
|
Pin 34
|
OUT1
|
User Output 1
|
Pin 35
|
MR
|
Master Riset
|
Pin 36
|
CTS
|
Clear To Send
|
Pin 37
|
DSR
|
Data Set Ready
|
Pin 38
|
DCD
|
Data Carrier Detect
|
Pin 39
|
RI
|
Ring Indikator (indicator dering)
|
Pin 40
|
VDD
|
+ 5 Volt
|
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!
Serial
Peripheral Interfaces
Dalam
komputer, perangkat antarmuka serial (SPI) adalah sebuah antarmuka yang
memungkinkan serial (satu bit pada satu waktu) pertukaran data antara dua
perangkat, satu disebut master dan lainnya disebut budak. SPI beroperasi dalam
mode full duplex. Ini berarti bahwa data dapat ditransfer dalam dua arah pada
waktu yang sama. SPI yang paling sering digunakan dalam sistem untuk komunikasi
antara central processing unit (CPU) dan perangkat periferal. Hal ini juga
memungkinkan untuk menghubungkan dua mikroprosesor melalui SPI. Istilah ini
awalnya diciptakan oleh Motorola. National Semiconductor memiliki antarmuka
yang setara disebut Microwire.
Antarmuka Serial memiliki keunggulan tertentu atas antarmuka paralel. Keuntungan yang paling signifikan adalah kabel sederhana. Selain itu, kabel interface serial bisa lebih panjang daripada kabel antarmuka paralel, karena ada interaksi jauh lebih sedikit (crosstalk) di antara konduktor dalam kabel.
Banyak jenis perangkat dapat dikontrol oleh SPI, termasuk register geser, chip memori, ekspander pelabuhan, driver layar, konverter data, printer, perangkat penyimpanan data, sensor, dan mikroprosesor. Data ditransfer secara serial lebih dari kabel, masukan ke register geser, dan ditransfer dalam setiap subsistem melalui pemrosesan paralel.
Antarmuka Serial memiliki keunggulan tertentu atas antarmuka paralel. Keuntungan yang paling signifikan adalah kabel sederhana. Selain itu, kabel interface serial bisa lebih panjang daripada kabel antarmuka paralel, karena ada interaksi jauh lebih sedikit (crosstalk) di antara konduktor dalam kabel.
Banyak jenis perangkat dapat dikontrol oleh SPI, termasuk register geser, chip memori, ekspander pelabuhan, driver layar, konverter data, printer, perangkat penyimpanan data, sensor, dan mikroprosesor. Data ditransfer secara serial lebih dari kabel, masukan ke register geser, dan ditransfer dalam setiap subsistem melalui pemrosesan paralel.
Transmisi Serial
Pada
transmisi serial, pada setiap waktu hanya 1 bit data yang dikirimkan. Dengan
kata lain, bit-bit data tersebut dikirimkan secara satu per satu. Model
transmisi seperti ini dijumpai pada contoh seperti seorang pengguna menghubungkan
terminal ke host komputer yang berada pada bangunan yang lain. Berikut
merupakan gambar pengiriman transmisi serial dari pengirim ke penerima. Mode
serial membutuhkan sinkronisasi/penyesuaian yang berfungsi untuk :
- Mengetahui
bilamana sinyal yang diterimanya merupakan bit data (sinkronisasi bit)
- Mengetahui
bilamana sinyal yang diterimanya membentuk sebuah karakter (sinkronisasi
karakter)
- Mengetahui
bilamana sinyal yang diterimanya membentuk sebuah blok data (sinkronisasi
blok)
Selanjutnya,
pada transmisi serial dapat berbentuk dua jenis, yaitu transmisi serial sinkron
(synchronous) dan transmisi serial asinkron (asynchronous). Berikut ini
merupakan penjelasan dari masing-masing jenis transmisi serial tersebut.
Transmisi Serial Sinkron (Synchronous).
Transmisi
Serial Sinkron (Synchronous)
- Pada
transmisi sinkron, sebelum terjadi komunikasi, diadakan sinkronisasi clock
antara pengirim dan penerima.
- Data
dikirim dalam satu blok data (disebut Frame) yang berisi bit2 Pembuka
(preamble bit), bit data itu sendiri dan bit2 penutup postamble bit.
Ditambahlan juga bit2 kontrol pada blok tersebut.
- Variasi
ukuran frame mulai 1500 byte sampai 4096 byte
- Dalam
komunikasi sinkron, sbh line 56 kbps mampu membawa data sampai 7000 byte
per detik
Gambar
Transmisi Serial Sinkron (Synchronous)
Transmisi
Serial Asinkron (Asynchronous)
- Pada
transmisi Asinkron, sebelum terjadi komunikasi, tdk diadakan sinkronisasi
clock antara pengirim dan penerima
- Data
dikirim per karakter dan masing2 karakter memiliki bit start (biasanya 0)
dan bit stop (biasanya 1)
- Start
bit berfungsi utk menandakan adanya rangkaian bit karakter yang siap
dicuplik.
- Stop
bit berfungsi utk melakukan proses menunggu karakter berikutnya
Setiap
karakter terdiri dari 10 bit dengan rincian
- 1 bit
start bit
- 1 bit
stop bit
- 7 bit
data
Contoh perangkat berbasis transmisi asinkron : RS-232, com #, USB, dll
ADC (Analog to Digital Convertion)
Analog To Digital Converter (ADC)
adalah pengubah input analog menjadi kode – kode digital. ADC banyak digunakan
sebagai pengatur proses industri, komunikasi digital dan rangkaian
pengukuran/pengujian. Umumnya ADC digunakan sebagai perantara antara sensor
yang kebanyakan analog dengan sistim komputer seperti sensor suhu, cahaya,
tekanan/berat, aliran dan sebagainya kemudian diukur dengan menggunakan sistim
digital (komputer).
ADC (Analog to Digital Converter) memiliki 2
karakter prinsip, yaitu kecepatan sampling dan resolusi. Kecepatan sampling
suatu ADC menyatakan seberapa sering sinyal analog dikonversikan ke bentuk
sinyal digital pada selang waktu tertentu. Kecepatan sampling biasanya
dinyatakan dalam sample per second (SPS).
Resolusi ADC menentukan ketelitian nilai hasil
konversi ADC. Sebagai contoh: ADC 8 bit akan memiliki output 8 bit data
digital, ini berarti sinyal input dapat dinyatakan dalam 255 (2n – 1) nilai
diskrit. ADC 12 bit memiliki 12 bit output data digital, ini berarti sinyal
input dapat dinyatakan dalam 4096 nilai diskrit. Dari contoh diatas ADC 12 bit
akan memberikan ketelitian nilai hasil konversi yang jauh lebih baik daripada
ADC 8 bit.
Prinsip kerja ADC adalah mengkonversi sinyal analog ke
dalam bentuk besaran yang merupakan rasio perbandingan sinyal input dan
tegangan referensi. Sebagai contoh, bila tegangan referensi (Vref) 5 volt,
tegangan input 3 volt, rasio input terhadap referensi adalah 60%. Jadi, jika
menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital
sebesar 60% x 255 = 153 (bentuk decimal) atau 10011001 (bentuk biner).
ADC Simultan
ADC Simultan atau biasa disebut flash converter atau
parallel converter. Input analog Vi yang akan diubah ke bentuk digital
diberikan secara simultan pada sisi + pada komparator tersebut, dan input pada
sisi – tergantung pada ukuran bit converter. Ketika Vi melebihi tegangan input
– dari suatu komparator, maka output komparator adalah high, sebaliknya akan
memberikan output low.
Bila Vref
diset pada nilai 5 Volt, maka dari gambar rangkaian ADC Simultan diatas
didapatkan : V(-) untuk C7 = Vref * (13/14) = 4,64
V(-) untuk
C6 = Vref * (11/14) = 3,93
V(-) untuk
C5 = Vref * (9/14) = 3,21
V(-) untuk
C4 = Vref * (7/14) = 2,5
V(-) untuk
C3 = Vref * (5/14) = 1,78
V(-) untuk
C2 = Vref * (3/14) = 1,07
V(-) untuk
C1 = Vref * (1/14) = 0,36
Sebagai
contoh Vin diberi sinyal analog 3 Volt, maka output dari C7=0, C6=0, C5=0,
C4=1, C3=1, C2=1, C1=1, sehingga didapatkan output ADC yaitu 100 biner,
sehingga diperoleh tabel berikut :
0 komentar:
Posting Komentar