Sistem embedded (embedded system) adalah sebuah sistem komputer yang digunakan untuk tujuan khusus, yang secara lengkap dienkapsulasi oleh perangkat yang dikendalikannya dimana dibangun atas dasar kebutuhan spesifik dan menjalankan proses yang telah didefinisikan terlebih dahulu.
Apa perbedaan sistem embedded dengan PC (Personal Computer) yang sering kita gunakan? PC merupakan suatu platform untuk melakukan komputasi generik, sedangkan sistem embedded digunakan untuk tujuan khusus.
Sistem embedded biasanya menyimpan program di ROM dan sistem operasi yang digunakan untuk sistem embedded biasanya adalah real-time operating system (RTOS). Sistem embedded memiliki sifat cost-sensitive, time-constraint, dan power-constraint. Dampak kegagalan software pada sistem embedded lebih fatal dibandingkan pada sistem desktop.
Embedded sistem operasi adalah sebuah sistem operasi untuk sistem komputer yang tertanam. Sistem operasi ini dirancang untuk menjadi kompak, efisien, dan dapat diandalkan, meninggalkan banyak fungsi bahwa sistem operasi komputer non-tertanam memberikan, dan yang tidak dapat digunakan oleh aplikasi khusus mereka berjalan. Mereka adalah sering juga sistem operasi real-time, dan istilah RTOS sering digunakan sebagai sinonim untuk embedded sistem operasi.
Perbedaan penting antara paling tertanam sistem operasi dan sistem operasi desktop adalah bahwa aplikasi, termasuk sistem operasi, biasanya statis dihubungkan bersama-sama ke dalam sebuah file citra eksekusi. Tidak seperti sistem operasi desktop, embedded sistem operasi tidak memuat dan menjalankan aplikasi .Ini berarti bahwa sistem ini hanya dapat menjalankan satu aplikasi.
Utama adalah konsep untuk RTOS
Manajemen memori
Tugas penjadwalan
penjadwalan kebijakan
intertask komunikasi
RTOS adalah cara untuk mencapai kinerja tertinggi dalam hal respon dan mengganggu tugas kecepatan beralih pada suatu platform perangkat keras.
Dalam pengertian, tujuan RTOS adalah:
1.jadwal tugas agar semua tugas dapat dijalankan pada saat yang tepat dan selesai sebelum batas waktu masing-masing.
2.untuk menghilangkan masalah berbagi data dengan menyediakan mekanisme tiang sinyal
3.untuk menyediakan saluran komunikasi antara tugas-tugas dalam bentuk antrian, surat, pipa
PIC mikrokontroler dalam DIP dan paket QFN
16-bit 28-pin PDIP PIC24 mikrokontroler samping penguasa metrik
PIC adalah keluarga mikrokontroler arsitektur Harvard yang dibuat oleh Microchip Teknologi, berasal dari PIC1640 . awalnya dikembangkan oleh General Instrument Divisi Microelectronics. Nama PIC awalnya disebut "Peripheral Interface Controller".
PICs yang populer dengan baik pengembang industri dan penggemar sama karena biaya rendah, ketersediaan luas, basis pengguna besar, koleksi catatan aplikasi, ketersediaan biaya rendah atau alat pengembangan bebas, dan pemrograman serial (dan re-program dengan memori flash) kemampuan.
Microchip mengumumkan pada bulan Februari 2008, pengiriman enam prosesor PIC milyar nya.
ARSITEKTUR CORE
Arsitektur PIC ini ditandai dengan berbagai atribut nya:
• terpisah kode dan data ruang (arsitektur Harvard) untuk perangkat selain PIC32, yang memiliki arsitektur Von Neumann.
• Sejumlah kecil instruksi panjang tetap
• Sebagian besar instruksi siklus eksekusi tunggal (2 siklus jam), dengan satu siklus delay pada cabang dan melompat
• Satu akumulator (W0), penggunaan yang (sebagai operan sumber) adalah tersirat (yaitu tidak dikodekan dalam opcode)
• Semua lokasi RAM berfungsi sebagai register baik sebagai sumber dan / atau tujuan matematika dan fungsi-fungsi lainnya.
• perangkat keras Sebuah stack untuk menyimpan alamat kembali
• Sebuah jumlah yang cukup kecil ruang data beralamat (biasanya 256 byte), diperpanjang melalui perbankan
• Ruang Data dipetakan CPU, pelabuhan, dan register perifer
• Program counter juga dipetakan ke ruang data dan ditulis (ini digunakan untuk melaksanakan melompat tidak langsung).
Tidak ada perbedaan antara ruang memori dan mendaftarkan ruang karena RAM melayani pekerjaan baik memori dan register, dan RAM biasanya hanya disebut sebagai file mendaftar atau hanya sebagai register.
Ruang Data (RAM)
PICs memiliki satu set register yang berfungsi sebagai RAM tujuan umum. register kontrol khusus untuk sumber daya perangkat keras on-chip juga dipetakan ke dalam ruang data. The addressability memori bervariasi tergantung pada seri perangkat, dan semua perangkat PIC memiliki beberapa mekanisme perbankan untuk memperluas pengalamatan ke memori tambahan. Kemudian serangkaian perangkat fitur instruksi langkah yang dapat menutupi seluruh ruang dialamatkan, independen bank yang dipilih.Pada perangkat, setiap gerakan mendaftar harus dicapai melalui akumulator.
Untuk melaksanakan pengalamatan tidak langsung, sebuah "register file pilih" (FSR) dan "register tidak langsung" (INDF) digunakan. Sebuah nomor register dituliskan ke FSR, setelah membaca dari atau menulis ke INDF benar-benar akan ke atau dari register yang ditunjuk oleh FSR. Kemudian perangkat diperpanjang konsep dengan pasca dan pra-kenaikan / penurunan untuk efisiensi yang lebih besar dalam mengakses data secara berurutan disimpan. Hal ini juga memungkinkan FSR diperlakukan hampir seperti stack pointer (SP).
data eksternal memori tidak langsung dialamatkan kecuali di beberapa perangkat pin PIC18 menghitung tinggi.
spasi Kode
Kode Ruang umumnya diimplementasikan sebagai ROM, EPROM atau flash ROM.Secara umum, memori kode eksternal tidak langsung dialamatkan karena kurangnya antarmuka memori eksternal. Pengecualian adalah PIC17 dan pilih Perangkat jumlah pin PIC18 tinggi.
ukuran Word
Semua PICs menangani (dan alamat) data dalam potongan 8-bit. Namun, unit addressability ruang kode umumnya tidak sama dengan ruang data. Sebagai contoh, PICs dalam keluarga mid-range baseline dan memiliki memori program beralamat di wordsize sama dengan lebar instruksi, yaitu 12 atau 14 bit masing-masing. Sebaliknya, di seri PIC18, memori program ditujukan secara bertahap 8-bit (byte), yang berbeda dari lebar instruksi 16 bit.
Dalam rangka harus jelas, kapasitas memori program biasanya dinyatakan dalam jumlah (kata tunggal) petunjuk, bukan dalam byte.
Tumpukan
PICs memiliki panggilan hardware stack, yang digunakan untuk menyimpan alamat kembali. Hardware stack tidak dapat diakses pada perangkat lunak sebelumnya, tetapi ini berubah dengan 18 perangkat seri.
Dukungan Hardware untuk sebuah parameter tujuan umum stack yang kurang dalam seri awal, tapi ini sangat meningkat dalam seri 18, membuat arsitektur 18 seri lebih ramah ke compiler bahasa tingkat tinggi.
Set Instruksi
instruksi A PIC bervariasi dari sekitar 35 instruksi untuk yang dihadiri low-end untuk lebih dari 80 instruksi yang dihadiri high-end. Set instruksi termasuk instruksi untuk melakukan berbagai operasi pada register langsung, akumulator dan konstanta literal atau akumulator dan mendaftar, serta untuk eksekusi bersyarat, dan program bercabang.
Beberapa operasi, seperti bit pengaturan dan pengujian, dapat dilakukan pada setiap nomor register, tapi operasi aritmatika bi-operan selalu melibatkan W (akumulator), menulis hasilnya kembali ke salah W atau register operan lainnya. Untuk memuat sebuah konstanta, perlu untuk me-load ke W sebelum dapat dipindahkan ke register lain. Di core yang lebih tua, mendaftarkan semua langkah yang diperlukan untuk melewati W, namun hal ini diubah pada inti "high end".
core PIC telah melewatkan petunjuk yang digunakan untuk eksekusi bersyarat dan bercabang. Skip instruksi yang 'melompat jika sedikit set' dan 'melewatkan jika sedikit tidak diset'. Karena inti sebelum PIC18 hanya memiliki instruksi cabang tanpa syarat, melompat kondisional dilaksanakan oleh skip bersyarat (dengan kondisi berlawanan) diikuti oleh cabang tanpa syarat. Melompati juga utilitas untuk eksekusi bersyarat dari setiap instruksi berikut segera tunggal.
Seri 18 dilaksanakan register bayangan yang menyimpan register penting yang selama dukungan, hardware interrupt menyediakan untuk secara otomatis menyimpan negara prosesor ketika interupsi servis.
Secara umum, instruksi PIC jatuh ke dalam 5 kelas:
1. Operasi bekerja register (WREG) dengan 8-bit langsung ("literal") operan. Misalnyamovlw (bergerak harfiah ke WREG), andlw (DAN literal dengan WREG). Satu instruksi khusus untuk PIC adalah retlw, beban langsung ke WREG dan kembali, yang digunakan dengan cabang dihitung untuk menghasilkan tabel lookup.
2. Operasi dengan WREG dan mendaftarkan diindeks. Hasilnya dapat ditulis baik mendaftar Kerja (misalnya reg addwf, w). atau daftar yang dipilih (mis. reg addwf, f).
3. Bit operasi. Ini mengambil nomor register dan nomor bit, dan melakukan salah satu dari 4 tindakan: set atau sedikit jelas, dan tes dan melewatkan pada set / jelas. terakhir ini digunakan untuk melakukan cabang bersyarat. ALU biasanya flag status yang tersedia dalam register nomor sehingga operasi seperti "cabang di bawa yang jelas" yang mungkin.
4. Control transfer. Selain skip instruksi yang disebutkan sebelumnya, hanya ada dua: goto dan panggilan.
5. Sebuah beberapa petunjuk nol-operan bermacam-macam, seperti kembali dari subrutin, dan tidur untuk masuk mode daya-rendah.
Kinerja
Keputusan-keputusan arsitektur yang diarahkan pada maksimalisasi kecepatan terhadap rasio biaya. Arsitektur PIC merupakan salah satu desain CPU pertama skalar, [rujukan?] Dan masih di antara yang paling sederhana dan murah. Arsitektur Harvard-di mana instruksi dan data yang berasal dari sumber yang terpisah-menyederhanakan desain microcircuit waktu dan sangat, dan ini jam manfaat kecepatan, harga, dan konsumsi daya.
Set instruksi PIC cocok untuk pelaksanaan cepat lookup tabel di ruang program. lookup tersebut mengambil satu instruksi dan dua siklus instruksi. Banyak fungsi dapat dimodelkan dengan cara ini. Optimasi difasilitasi oleh program ruang yang relatif besar dari PIC (misalnya 4096 kata 14-bit x di 16F690) dan oleh desain set instruksi, yang memungkinkan untuk konstanta tertanam. Sebagai contoh, target instruksi cabang dapat diindeks oleh W, dan melaksanakan "RETLW" yang tidak seperti yang bernama - kembali dengan literal dalam W.
Waktu eksekusi dapat secara akurat diestimasi dengan mengalikan jumlah instruksi oleh dua siklus, ini menyederhanakan desain kode real-time. Demikian pula, latency interrupt adalah konstan pada tiga siklus instruksi. interupsi eksternal harus disinkronkan dengan siklus instruksi empat jam, jika tidak bisa menjadi satu instruksi jitter siklus. interupsi internal sudah disinkronisasi. Latency interrupt konstan memungkinkan PICs untuk mencapai urutan mengganggu waktu jitter didorong rendah.Contoh dari ini adalah video sync generator pulsa. Hal ini tidak lagi benar di PIC model terbaru, karena mereka memiliki latency interrupt sinkron tiga atau empat siklus.
Keuntungan
Arsitektur PIC memiliki keuntungan ini:
• Kecil set instruksi untuk belajar
• Arsitektur RISC
• Dibangun pada osilator dengan kecepatan dipilih
• Mudah entry level, dalam pemrograman sirkuit ditambah dalam rangkaian debugging unit Pickit tersedia dari Microchip.com untuk kurang dari $ 50
• Murah mikrokontroler
• jangkauan luas interface termasuk I2C, SPI, USB, USART, A / D, diprogram pembanding, PWM, LIN, BISA, PSP, dan Ethernet
Keterbatasan
Arsitektur PIC memiliki keterbatasan ini:
• Satu akumulator
• Daftar-bank switching diperlukan untuk mengakses seluruh RAM banyak perangkat
• Operasi dan register tidak ortogonal, beberapa instruksi dapat alamat RAM dan / atau konstanta langsung, sementara yang lain hanya dapat menggunakan akumulator
Keterbatasan berikut ini telah dibahas dalam seri PIC18, tetapi masih berlaku untuk core sebelumnya:
• Stack:
1. Panggilan hardware stack tidak dialamatkan, beralih tugas sehingga memesan efek terlebih dahulu tidak dapat diimplementasikan
2. Software-tumpukan dilaksanakan tidak efisien, sehingga sulit untuk menghasilkan kode reentrant dan dukungan variabel lokal
Dengan memori program paged, ada dua ukuran halaman untuk khawatir tentang: satu untuk CALL dan GOTO dan satu lagi untuk GOTO dihitung (biasanya digunakan untuk lookup tabel). Sebagai contoh, pada PIC16, CALL dan GOTO memiliki 11 bit alamat, sehingga ukuran halaman adalah 2048 kata-kata instruksi. Untuk gotos dihitung, di mana Anda tambahkan ke PCL, ukuran halaman adalah 256 kata-kata instruksi. Dalam kedua kasus, bit alamat bagian atas disediakan oleh register PCLATH. register ini harus diganti setiap transfer kontrol waktu antara halaman. PCLATH juga harus dipertahankan oleh setiap interrupt handler.
pengembangan Kompilator
Sementara beberapa compiler komersial tersedia, pada tahun 2008, Microchip merilis compiler C mereka sendiri, C18 dan C30, untuk garis 18F 24f dan 30/33F prosesor.Sebaliknya, AVR Atmel's mikrokontroler-yang kompetitif dengan PIC dalam hal kemampuan perangkat keras dan harga, namun fitur instruksi lebih tradisional set-telah lama didukung oleh GNU C Compiler.
Yang mudah untuk belajar set instruksi RISC kode bahasa assembly PIC bisa membuat alur keseluruhan sulit untuk dipahami. Bijaksana menggunakan macro sederhana dapat meningkatkan keterbacaan bahasa assembly PIC. Sebagai contoh, Parallax asli PIC perakit ("kejang") telah macro yang menyembunyikan W dan membuat tampilan PIC seperti mesin dua alamat. Ini memiliki instruksi makro seperti "mov b, a" (memindahkan data dari alamat ke alamat b) dan "add b, a" (menambahkan data dari alamat pada data di alamat b). Hal ini juga menyembunyikan skip instruksi dengan memberikan tiga instruksi cabang operan makro seperti "cjne a dest, b," (bandingkan dengan b dan melompat ke tujuan jika mereka tidak sama).
PERBEDAAN INTI KELUARGA ARSITEKTUR
perangkat Baseline inti
Perangkat ini fitur memori kode 12-bit lebar, file register 32-byte, dan panggilan dua tingkat kecil dalam stack. Mereka diwakili oleh seri PIC10, serta oleh beberapa PIC12 dan PIC16 perangkat. perangkat Baseline tersedia dalam 6-pin untuk 40 paket-pin.
Umumnya 7 sampai 9 byte pertama dari file register tujuan khusus register, dan sisanya byte RAM tujuan umum. Jika RAM miring dilaksanakan, jumlah bank yang dipilih oleh 3 bit yang tinggi FSR. Hal ini mempengaruhi mendaftarkan nomor 16-31; register 0-15 bersifat global dan tidak terpengaruh oleh bank bit pilih.
Ruang alamat ROM adalah 512 kata (12 bit masing-masing), yang dapat diperpanjang sampai 2048 kata dengan perbankan. CALL dan GOTO instruksi menentukan 9 bit rendah lokasi kode baru; tambahan high-order bit diambil dari status mendaftar.Perhatikan bahwa instruksi CALL hanya berisi 8 bit alamat, dan hanya dapat menetapkan alamat pada paruh pertama dari setiap halaman 512-kata.
Set instruksi adalah sebagai berikut. nomor Register yang disebut sebagai "f", sedangkan konstanta yang disebut sebagai "k". Bit angka (0-7) yang dipilih oleh "b".The "d" bit memilih tujuan: 0 menunjukkan W, sedangkan 1 menunjukkan bahwa hasilnya ditulis kembali ke sumber mendaftar f.
Mid-range perangkat inti
Perangkat ini fitur memori kode 14-bit yang luas, dan 8 diperbaiki tingkat panggilan dalam stack. Set instruksi sangat sedikit berbeda dari perangkat dasar, namun lebar opcode meningkat memungkinkan 128 register dan 2048 kata-kata kode ini langsung ditangani. Inti mid-range tersedia di sebagian besar perangkat berlabel PIC12 dan PIC16.
32 byte pertama dari ruang register dialokasikan untuk register tujuan khusus, sedangkan sisanya 96 byte RAM digunakan untuk tujuan umum. Jika RAM miring digunakan, register tinggi 16 (0x70-0x7F) bersifat global, seperti juga beberapa register khusus-tujuan yang paling penting, termasuk register STATUS yang memegang bit bank RAM pilih. (The register global lainnya adalah FSR dan INDF, 8 bit rendah dari program PCL counter, yang preload PC mendaftar PCLATH tinggi, dan kontrol master mengganggu mendaftar INTCON.)
Pasokan mendaftar PCLATH high-order bit alamat instruksi ketika 8 bit yang disediakan oleh menulis ke register PCL, atau 11 bit yang disediakan oleh GOTO atau instruksi CALL, tidak cukup untuk mengatasi ruang ROM yang tersedia.
Enhanced perangkat Mid-range inti
Enhanced Mid-range perangkat inti memperkenalkan hardware yang lebih dalam stack, metode reset tambahan, 14 petunjuk tambahan dan 'C' bahasa pemrograman optimasi.
PIC17 perangkat inti high end
Seri 17 tidak pernah menjadi populer dan telah digantikan oleh arsitektur PIC18. Hal ini tidak dianjurkan untuk desain baru, dan ketersediaan mungkin terbatas.
Perbaikan atas inti sebelumnya adalah opkode lebar 16-bit (instruksi baru yang memungkinkan banyak), dan panggilan 16 tingkat yang dalam stack. PIC17 perangkat diproduksi dalam bentuk paket 40-68 pin.
Seri 17 memperkenalkan sejumlah fitur baru yang penting:
• memori dipetakan akumulator
• akses baca ke memori kode (tabel kali dibaca)
• mendaftar langsung untuk mendaftar bergerak (core sebelum dibutuhkan untuk bergerak register melalui akumulator)
• antarmuka program memori eksternal untuk memperluas ruang kode
• sebuah 8-bit x 8-bit multiplier hardware
• sepasang register kedua langsung
auto-increment/decrement • menangani dikontrol oleh bit kontrol dalam register status (ALUSTA)
perangkat PIC18 inti high end
Microchip memperkenalkan arsitektur PIC18 pada tahun 2000. Berbeda dengan seri 17, telah terbukti menjadi sangat populer, dengan sejumlah besar varian perangkat saat ini dalam pembuatan. Berbeda dengan perangkat sebelumnya, yang lebih sering daripada tidak diprogram dalam perakitan, C telah menjadi bahasa pengembangan dominan
Para mewarisi seri 18 sebagian besar fitur dan instruksi dari seri 17, sambil menambahkan sejumlah fitur baru yang penting:
• yang jauh lebih dalam panggilan stack (31 level)
• panggilan stack dapat dibaca dan ditulis
• instruksi cabang bersyarat
• diindeks mode pengalamatan (PLUSW)
• memperluas register FSR sampai 12 bit, yang memungkinkan mereka untuk linear alamat ruang data seluruh alamat
• penambahan lain register FSR (membawa nomor sampai 3)
Peningkatan auto / fitur penurunan ditingkatkan dengan menghapus bit kontrol dan menambahkan empat register tidak langsung baru per FSR. Tergantung pada yang mendaftar langsung file sedang diakses itu adalah mungkin untuk postdecrement, postincrement, atau FSR preinkremen, atau bentuk alamat efektif dengan menambahkan W untuk FSR.
Dalam perangkat PIC18 lebih maju, sebuah "mode diperpanjang" tersedia yang membuat pengalamatan bahkan lebih menguntungkan untuk kode kompilasi:
• mode pengalamatan baru offset; beberapa alamat yang relatif ke bank akses sekarang ditafsirkan relatif terhadap FSR2 register
• penambahan beberapa instruksi baru, penting untuk memanipulasi register FSR.
Perubahan ini terutama ditujukan untuk meningkatkan efisiensi data stack implementasi. Jika FSR2 digunakan baik sebagai penunjuk atau stack frame pointer, stack item mungkin akan mudah diindeks-memungkinkan kode ulang peserta lebih efisien. Microchip's MPLAB C18 compiler C memilih untuk menggunakan FSR2 sebagai frame pointer.
PIC24 dan mikrokontroler dsPIC 16-bit
Pada tahun 2001, Microchip memperkenalkan seri dsPIC chip, yang mulai produksi massal pada akhir 2004. Mereka adalah pertama inheren mikrokontroler Microchip's 16-bit. PIC24 perangkat dirancang sebagai mikrokontroler tujuan umum. perangkat dsPIC termasuk kemampuan pemrosesan sinyal digital di samping.
Arsitektur, meskipun mereka berbagi moniker PIC, mereka sangat berbeda dari yang dihadiri oleh 8-bit. Perbedaan paling menonjol adalah:
• mereka fitur satu set 16 register kerja (W0-W15)
• mereka sepenuhnya mendukung stack dalam RAM, dan tidak memiliki hardware stack
• switching bank tidak diperlukan untuk mengakses register RAM atau fungsi khusus
• data yang disimpan dalam memori program dapat diakses secara langsung menggunakan fitur yang disebut Program Space Visibility
• sumber interupsi dapat diberikan kepada penangan yang berbeda menggunakan sebuah tabel interrupt vector
Beberapa fitur:
• hardware MAC (kalikan-menumpuk)
• barel pergeseran
• pembalikan bit
• (16 × 16)-bit tunggal-siklus perkalian dan lainnya DSP operasi
membagi hardware • membantu (19 siklus untuk membagi 16/32-bit)
• dukungan hardware untuk mengindeks loop
• memori akses langsung
dsPICs dapat diprogram dalam C menggunakan varian [Apa Varian?] gcc.
mikrokontroler PIC32 32-bit
Pada bulan November 2007 Microchip PIC32MX memperkenalkan keluarga baru dari 32-bit mikrokontroler. Garis alat yang awal-up didasarkan pada standar industri MIPS32 M4K Core [6]. Perangkat dapat diprogram dengan menggunakan Microchip MPLAB C Compiler untuk PIC32 MCUs, sebuah varian dari kompiler GCC. 18 model pertama sedang dalam produksi (PIC32MX3xx dan PIC32MX4xx) adalah pin untuk pin yang kompatibel dan berbagi peripheral yang sama diatur dengan keluarga PIC24FxxGA0xx dari (16-bit) perangkat yang memungkinkan penggunaan perpustakaan umum, perangkat lunak dan perangkat keras.
Arsitektur PIC32 membawa sejumlah fitur baru untuk portofolio Microchip, termasuk:
• Kecepatan eksekusi tertinggi 80 MIPS (120 + [11] Dhrystone MIPS @ 80 MHz)
• Yang terbesar flash memory: 512 kbyte
• Satu instruksi per clock cycle eksekusi
• Prosesor-cache pertama
• Memungkinkan eksekusi dari RAM
• Full Speed Host / Dual Peran dan USB OTG kemampuan
• Penuh JTAG dan 2 kawat pemrograman dan debugging
• Real-time jejak
varian Device dan fitur perangkat keras
perangkat PIC umumnya fitur:
• Modus tidur (penghematan energi).
• Watchdog timer.
• Berbagai kristal atau konfigurasi osilator RC, atau jam eksternal.
Varian
Dalam seri, masih banyak varian perangkat tergantung pada apa yang sumber daya perangkat keras fitur chip.
• Tujuan Umum I / O pin.
• Internal clock oscillator.
• 8/16/32 Bit Timers.
• Internal Memory EEPROM.
• Synchronous / Asynchronous Interface Serial USART.
• perifer untuk C ² I dan Komunikasi SPI MSSP.
• Capture / Bandingkan dan modul PWM.
• konverter analog-ke-digital (hingga ~ 1.0 MHz).
• USB, Ethernet, BISA dukungan interfacing.
• Memori eksternal interface.
• Terpadu analog berakhir depan RF (PIC16F639, dan rfPIC).
• KEELOQ enkripsi kode Rolling perifer (encode / decode)
• Dan banyak lagi.
Tren
Generasi pertama dari PICs dengan penyimpanan EPROM hampir sepenuhnya digantikan oleh chip dengan memori Flash. Demikian juga, instruksi 12-bit asli set PIC1650 dan keturunan langsung telah digantikan oleh 14-bit dan set instruksi 16-bit.Microchip masih menjual OTP (satu kali-programmable) dan berjendela (UV-bisa dihapus) versi dari beberapa PICs berbasis EPROM untuk pesanan warisan dukungan atau volume. Situs Microchip daftar PICs yang tidak bisa dihapus elektrik sebagai OTP meskipun fakta bahwa versi UV berjendela bisa dihapus chip ini dapat dipesan.
Sejarah
PIC asli dibangun untuk digunakan dengan CPU baru 16-bit Instrumen Umum ', CP1600 tersebut. Sementara umumnya CPU baik, CP1600 telah saya miskin / kinerja O, dan 8-bit PIC dikembangkan pada tahun 1975 untuk meningkatkan kinerja sistem secara keseluruhan dengan offloading I / O tugas dari CPU. PIC digunakan microcode sederhana yang disimpan dalam ROM untuk melakukan tugasnya, dan meskipun istilah ini tidak digunakan pada waktu itu, saham beberapa fitur yang sama dengan desain RISC.
Pada tahun 1985, Jenderal Instrumen spin off divisi mikroelektronik mereka dan kepemilikan baru dibatalkan hampir semuanya - yang pada saat ini sebagian besar out-of-date. PIC Namun, ditingkatkan dengan EPROM internal untuk menghasilkan controller saluran diprogram dan hari ini berbagai macam PICs tersedia dengan berbagai perangkat-board (modul komunikasi serial, UARTs, kernel kontrol motor, dll) dan memori program dari 256 kata-kata untuk 64k kata dan lebih (sebuah "kata" adalah salah satu instruksi bahasa assembly, bervariasi dari 12, 14 atau 16 bit, tergantung pada keluarga PIC tertentu mikro).
PIC dan PICmicro adalah merek dagang terdaftar dari Microchip Technology. Hal ini umumnya berpikir bahwa PIC singkatan dari Peripheral Interface Controller, walaupun singkatan asli General Instrumen 'untuk PIC1640 awal dan perangkat PIC1650 adalah "Programmable Interface Controller". akronim ini cepat diganti dengan "Programmable Intelligent Computer".
Berbagai tua (EPROM) PIC microcontrollers
The Microchip 16C84 (PIC16x84), diperkenalkan pada tahun 1993, adalah [rujukan?] Pertama Microchip CPU dengan memori EEPROM on-chip. Ini memori elektrik-bisa dihapus membuat biaya kurang dari CPU yang dibutuhkan kuarsa sebuah "menghapus jendela" untuk menghapus EPROM.
Alat Pengembangan
Microchip menyediakan paket IDE freeware yang disebut MPLAB, yang mencakup assembler, linker, simulator perangkat lunak, dan debugger. Mereka juga menjual compiler C untuk PIC18 dan dsPIC yang mengintegrasikan bersih dengan MPLAB.versi mahasiswa Bebas dari compiler C juga tersedia dengan semua fitur. Namun untuk versi gratis, optimasi akan dinonaktifkan setelah 60 hari. [12]
Beberapa pihak ketiga membuat kompiler bahasa C untuk PICs, banyak yang mengintegrasikan untuk MPLAB dan / atau fitur IDE mereka sendiri. Sebuah kompiler fitur lengkap untuk bahasa PICBASIC untuk mikrokontroler PIC program tersedia dari meLabs, Inc
Pengembangan alat-alat yang tersedia bagi keluarga PIC dibawah GPL atau perangkat lunak bebas lainnya atau membuka sumber lisensi.
programmer Device
Sebuah papan pengembangan untuk MCU pin-count rendah, dari Microchip
Perangkat yang disebut "programmer" secara tradisional digunakan untuk mendapatkan kode program ke PIC target. Kebanyakan PICs yang Microchip saat ini menjual fitur ICSP (Dalam Pemrograman Circuit Serial) dan / atau LVP (Tegangan Rendah Programming) kemampuan, yang memungkinkan PIC yang akan diprogram ketika sedang duduk di sirkuit target. ICSP pemrograman dilakukan dengan menggunakan dua pin, jam dan data, sementara tegangan tinggi (12V) hadir di pin / Vpp MCLR. Membagi-bagikan pemrograman tegangan rendah dengan tegangan tinggi, tetapi cadangan penggunaan eksklusif dari pin I / O dan karenanya dapat dinonaktifkan untuk memulihkan pin untuk kegunaan lain (sekali cacat hanya dapat diaktifkan kembali menggunakan pemrograman tegangan tinggi).
Ada banyak programmer untuk mikrokontroler PIC, mulai dari desain yang sangat sederhana yang mengandalkan ICSP untuk memungkinkan download langsung dari kode dari sebuah host komputer, untuk programmer cerdas yang dapat memverifikasi perangkat pada tegangan beberapa pasokan. Banyak dari programmer kompleks menggunakan PIC diprogram sendiri untuk mengirim perintah pemrograman untuk PIC yang akan diprogram. Jenis cerdas programmer diperlukan untuk model PIC program sebelumnya (kebanyakan jenis EPROM) yang tidak mendukung program di-sirkuit.
Banyak akhir yang lebih tinggi PICs berbasis flash bisa juga diri-program (menulis ke memori program mereka sendiri). Demo papan tersedia dengan sebuah pabrik bootloader kecil diprogram yang dapat digunakan untuk memuat program-program pengguna melalui sebuah antarmuka seperti RS-232 atau USB, sehingga menghindarkan kebutuhan untuk perangkat programmer. Atau ada bootloader firmware yang tersedia bahwa pengguna dapat memuat ke PIC menggunakan ICSP.Keuntungan dari sebuah bootloader atas ICSP adalah kecepatan pemrograman jauh lebih unggul, pemrograman eksekusi program langsung berikut, dan kemampuan untuk kedua debug dan program menggunakan kabel yang sama.
Microchip programmer PICSTART Plus
Programmer / debugger tersedia langsung dari Microchip. programmer pihak ketiga berkisar dari rencana untuk membangun sendiri, untuk diri kit perakitan dan diuji sepenuhnya siap-to-go unit. Beberapa desain sederhana yang membutuhkan PC untuk melakukan signaling pemrograman tingkat rendah (biasanya ini terhubung ke port serial atau paralel dan terdiri dari sebuah komponen sederhana), sementara yang lain memiliki logika pemrograman dibangun ke mereka (ini biasanya menggunakan serialatau koneksi USB, biasanya lebih cepat, dan sering dibangun menggunakan PICs diri untuk kontrol). Masalah utama dari programmer home-made atau sangat sederhana adalah bahwa programmer tidak sesuai dengan spesifikasi pemrograman dan ini dapat menyebabkan hilangnya prematur data di flash atau EEPROM.
Debugging
Perangkat Lunak emulasi
KOMERSIAL DAN EMULATOR GRATIS ADA UNTUK PROSESOR KELUARGA PIC.
debugging Dalam rangkaian
Kemudian model PICs fitur yang ICD (di-sirkuit debugging) interface, dibangun ke dalam inti CPU. debugger ICD (MPLAB ICD2 dan pihak ketiga lainnya) dapat berkomunikasi dengan interface ini menggunakan tiga baris. Sistem debugging murah dan sederhana datang pada harga Namun, breakpoint yaitu jumlah terbatas (1 di pics yang lebih tua 3 pada PICs baru), kehilangan sebagian IO (dengan pengecualian permukaan beberapa mount PICs 44-pin yang telah mendedikasikan baris untuk debugging) dan kehilangan beberapa fitur chip. Untuk PICs kecil, di mana hilangnya IO disebabkan oleh metode ini akan diterima, header khusus dibuat yang dilengkapi dengan PICs yang memiliki pin tambahan khusus untuk debugging.
emulator Dalam rangkaian
Microchip menawarkan tiga penuh di emulator sirkuit: ini ICE2000 MPLAB (antarmuka paralel, sebuah konverter USB tersedia), sedangkan MPLAB baru ICE4000 (USB 2.0 koneksi); dan yang terakhir, ICE REAL. Semua alat-alat ICE dapat digunakan dengan MPLAB IDE untuk debugging source-level penuh kode yang berjalan pada target.
ICE2000 memerlukan emulator modul, dan perangkat keras uji harus menyediakan soket yang dapat mengambil baik sebuah emulator modul, atau perangkat produksi.
ICE REAL terhubung langsung ke perangkat produksi yang mendukung persaingan dalam-sirkuit melalui antarmuka / pemrograman PGC PGD, atau melalui koneksi berkecepatan tinggi yang menggunakan dua pin lagi. Menurut Microchip, mendukung "paling" PIC berbasis flash, PIC24, dan prosesor dsPIC. [13]
ICE4000 tidak lagi langsung diiklankan di website Microchip, dan negara bagian halaman pembelian yang tidak direkomendasikan untuk desain baru.
klon PIC
pihak ketiga produsen membuat produk yang kompatibel.
Pickit 2 struktur open source dan klon
Pickit 2 telah menjadi programmer PIC menarik dari Microchip. Hal ini dapat memprogram semua PICs dan debug sebagian besar yang dihadiri oleh (Mei-2009, hanya keluarga PIC32 tidak didukung untuk debugging MPLAB). Sejak rilis pertama, semua source kode software (firmware, aplikasi PC) dan perangkat keras skematis terbuka untuk umum. Hal ini membuat relatif mudah bagi pengguna akhir untuk memodifikasi programmer untuk digunakan dengan sistem operasi non-Windows seperti Linux atau Mac OS. Sementara itu, juga menciptakan banyak kepentingan DIY dan klon. Struktur open source membawa banyak fitur untuk masyarakat 2 Pickit seperti Programmer-to-Go, Perangkat UART dan Alat Logic, yang telah disumbangkan oleh Pickit 2 pengguna. Pengguna juga telah menambahkan fitur tersebut pada Pickit 2 sebagai 4MB Programmer-to-go kemampuan, buck USB sirkuit meningkatkan /, konektor jenis RJ12 dan lain-lain.
Bagianakhiran nomor
F dalam nama umumnya menunjukkan PICmicro menggunakan memori flash dan dapat dihapus secara elektronik. AC umumnya berarti hanya bisa dihapus oleh mengekspos mati terhadap cahaya ultraviolet (yang hanya mungkin jika gaya paket windowed digunakan). Pengecualian aturan ini adalah PIC16C84 yang menggunakan EEPROM dan karenanya elektrik bisa dihapus.















0 komentar:
Posting Komentar