ENSIKLOPEDIA ELEKTRONIK RADIO DAN KEJURUTERAAN ELEKTRIK Pengaturcaraan PIC16 moden, PIC12 pada PonyProg. Ensiklopedia elektronik radio dan kejuruteraan elektrik Ensiklopedia elektronik radio dan kejuruteraan elektrik / Pengawal mikro Seperti yang anda ketahui, pengaturcara PonyProg direka untuk pengaturcaraan bilangan terhad jenis mikropengawal Mikrocip PICmicro (PIC12C50x PIC16F8x, PIC16F87x). Walau bagaimanapun, ia boleh digunakan untuk memprogramkan orang lain, termasuk mikropengawal baharu siri PIC12, PIC16. Bagaimana untuk melakukan ini diterangkan dalam artikel. Ramai radio amatur membina reka bentuk mereka berdasarkan pengawal PIC PIC16F84 (PIC16F84A) yang popular. Walau bagaimanapun, masa tidak berhenti, dan rangkaian PICmicro microcontrollers (MC) yang dihasilkan sentiasa berkembang. MK baharu yang lebih maju bagi siri PIC16F dan PIC12F telah muncul (contohnya, PIC12F629, PIC12F675, PIC16F628, PIC16F630, PIC16F676). Ia mengandungi pembanding yang mampu beroperasi dengan voltan masukan hampir kepada sifar, yang sangat menggoda dengan bekalan tunggal. ADC 10-bit yang disertakan di dalamnya mempunyai ketepatan yang tidak lebih buruk daripada litar mikro khusus, yang, bersama-sama dengan keupayaan pemprosesan dan paparan yang hebat, membolehkan anda membuat peranti unik dengan bilangan minimum elemen luaran. MCU baharu mempunyai lebih banyak memori, pemasa tambahan, port komunikasi universal dan penambahbaikan lain. Pada masa yang sama, kosnya jauh lebih rendah daripada PIC16F84, dan FLASH PIC16F630 lebih murah daripada PIC16C505 (kedua-duanya dalam pakej 14-pin). Organisasi memori PIC12Fx adalah sama seperti PIC16F84 (satu halaman), yang memudahkan untuk menyesuaikan program yang tidak memerlukan penggunaan MCU dalam pakej berbilang pin. Jika anda memutuskan untuk menggunakan MK baharu dalam reka bentuk anda, maka sebelum mempelajarinya dan menulis program, fikirkan tentang cara memprogramkannya. Pemerolehan pengaturcara proprietari pada kos yang setanding dengan kos unit sistem komputer hampir tidak realistik untuk amatur radio. Walau bagaimanapun, ramai daripada mereka telah memasang pengaturcara PONYPROG [1]. Mari fikirkan cara anda boleh menggunakannya untuk memprogram MK baharu. Semua MK diprogramkan melalui bas tiga wayar. Pengaturcaraan memerlukan isyarat Upp (mod pengaturcaraan), CLK (jam), dan DAT (data). Peminat yang tidak mempunyai pengaturcara boleh menggunakan peranti paling ringkas yang dipasang mengikut rajah dalam rajah. 1. Ia disambungkan ke port COM PC, sumber berasingan dengan voltan keluaran 5 V digunakan untuk menghidupkan MK. Dalam "Tetapan Perkakasan" nyatakan jenis pengaturcara - API JDM. Kesimpulan disambungkan mengikut jadual. Pengaturcaraan boleh dilakukan secara langsung dalam peranti siap menggunakan sumber kuasanya (hanya perlu untuk menghapuskan shunting output pengaturcaraan MC oleh elemen produk). Voltan bekalan semasa pengaturcaraan hendaklah dalam julat 4,5 ... 5,5 V (jika perlu, pilih diod Zener VD1). Jadual menunjukkan bahawa tujuan pin PIC16F84 dan PIC16F628 yang digunakan dalam pengaturcaraan adalah sama, jadi ia boleh diprogramkan dalam soket pengaturcara yang sama. Untuk litar mikro lain, anda perlu memasang soket tambahan yang disambungkan kepada penyesuai mengikut jadual. Maklumat lanjut tentang pengawal PIC boleh didapati di laman web [2]. Penjelasan lanjut diberikan mengenai contoh PIC16F628, kerana ia tidak memerlukan pengubahsuaian perkakasan pengaturcara PonyProg dan lebih banyak daripada yang lain tersedia di kedai. Seperti yang dinyatakan, semua PICmicro MK diprogramkan melalui tiga wayar (lebih tepat, lebih daripada dua). Protokol pengaturcaraan (perintah) juga sama. Memori program bermula pada alamat 0000 dan berakhir bergantung pada saiznya dalam jenis litar mikro tertentu. Ini bermakna dengan memilih daripada senarai PonyProg MK yang sesuai untuk parameter ini, anda boleh merakam program yang dikehendaki. Dalam kes kami, PIC16F871 adalah sesuai. Sila ambil perhatian bahawa bahagian bawah tetingkap PonyProg menunjukkan jumlah memori dalam bait, dan ciri teknikal MK biasanya memberikan bilangan perkataan (14 bit). Dengan kata lain, pengaturcara menunjukkan volum yang lebih besar. PIC16F871 dan PIC16F628 mempunyai 2048 perkataan ingatan. Selain itu, ini boleh disemak dalam fail .Ikr MK yang sepadan (terletak dalam folder pemasangan MPLAB) dengan membacanya menggunakan program Notepad standard. Alamat memori program diberikan seperti berikut: KOD NAMA=vektor START=0x0 END=0x4 DILINDUNGI (pindahan bersyarat) KOD NAMA=halaman START=0x5 END=0x7FF (pindahan bersyarat) Pada peringkat ini, anda sudah boleh cuba menulis maklumat ke memori program. Mana-mana fail HEX tidak lebih daripada 2048 perkataan akan berfungsi. Selepas melancarkan utiliti, sambungkan peranti ke port komputer, masukkan MK ke dalam soket yang sesuai, kemudian hidupkan kuasa pengaturcara. Pilih PIC16F871 daripada menu, muatkan fail HEX yang dipilih dan tekan butang "Tulis memori program (FLASH)". Mesej ralat akan muncul, mengumumkan masalah dengan MK dan mengandungi tiga butang (Gamb. 2): "Batalkan" (ganggu), "Cuba semula" (ulang), "Abaikan" (abaikan). Tekan yang terakhir ("Abaikan") dan proses pengaturcaraan akan bermula. Setelah selesai, anda akan melihat mesej bahawa rakaman itu berjaya. Jika pengaturcara telah mengeluarkan "Ralat Tulis", semak kandungan memori program dengan membacanya sebagai arahan yang sesuai. Kehadiran ralat menunjukkan bahawa pengaturcara mungkin berjalan terlalu pantas (ini berlaku jika komputer telah memasang WINDOWS XP; dengan WINDOWS 98, program berjalan lebih perlahan dan menulis dengan lebih dipercayai). Puncanya juga mungkin gangguan (jika wayar penyambung terlalu panjang), dan dalam kes yang jarang berlaku, anti-virus dan program latar belakang lain. Jika entri hilang sepenuhnya, maka perkakasan pengaturcara rosak atau program tidak dikonfigurasikan dengan betul (dalam menu). Langkah seterusnya yang paling penting ialah menulis perkataan konfigurasi. Alamatnya juga boleh didapati dalam fail .Ikr MK yang sepadan. Baris dalam fail kelihatan seperti ini: KOD NAME=.config START=0x2007 END=0x2007 Protect (pemindahan bersyarat). Perkataan konfigurasi terletak di alamat 0x2007. Dalam kes kami, PIC16F871 dan PIC16F628 mempunyai alamat 2007, iaitu, ia sesuai untuk penggantian (perlu diambil perhatian bahawa perkataan konfigurasi untuk semua PIC16 dan PIC12F terletak tepat di alamat ini). Adalah tidak diingini untuk menetapkan bit konfigurasi secara langsung dalam pengaturcara, kerana penetapannya pada panel pengaturcara untuk PIC16F628 dan PIC16F871 adalah berbeza dan ralat mungkin berlaku, dan beberapa bit dikelabukan dan tidak boleh ditetapkan secara langsung. Adalah lebih baik untuk menulis konfigurasi MK semasa menyusun atur cara. Untuk MPLAB baris ini mungkin kelihatan seperti ini: dalam lude p16f628.inc> senarai p=16f628_config H'0242" Nilai '0242' digubah mengikut tugasan setiap bit dalam perkataan konfigurasi dan mungkin berbeza dalam kes tertentu anda. Penerangan terperinci tentang semua bit boleh didapati di tapak [2]. Singkatan bit konfigurasi terkandung dalam fail .INC MCU yang sepadan dalam folder pemasangan MPLAB. Anggaran pandangan: BODEN ON EQU H'3FFF' BODEN OFF EQU H'3FBF' CP SEMUA EQU H'03FF' CP 75 EQU H'17FF' CP 50 EQU H'2BFF' CP OFF EQU H'3FFF' CP DATA PADA EQU H'3EFF' DATA CP OFF EQU H'3FFF' PWRTE OFF EQU H'3FFF' PWRTE PADA EQU H'3FF7' WDT PADA EQU H'3FFF' WDT OFF EQU H'3FFB' LVP PADA EQU H'3FFF' LVP OFF EQU H'3F7F' MCLRE ON EQU H'3FFF' MCLRE OFF EQU H'3FDF' ER OSC CLKOUT EQU H'3FFF' ER OSC NOCLKOUT EQU H'3FFE' INTRC OSC CLKOUT EQU H'3FFD' INTRC OSC NOCLKOUT EQU H'3FFC EXTCLK OSC EQU H'3FEF' LP OSC EQU H'3FEC XT OSC EQU H'3FED' HS OSC EQU H'3FEE' Menggunakan notasi ini, rentetan masukan mungkin kelihatan seperti ini: __config CP_ALL & WDT OFF & BODEN ON & _PWRTE_ON & _HSJ3SC &_LVP OFF ; (pemindahan adalah bersyarat). Dengan cara ini anda boleh menulis perkataan konfigurasi untuk mana-mana MCU menggunakan fail .INCnya. Ini mudah apabila menyesuaikan program siap, sebagai contoh, dalam hal menggantikan PIC16F627 dengan PIC16F627A yang lebih murah. Apabila konfigurasi disertakan dalam teks program, ia akan dimasukkan ke dalam fail HEX dan bit berlorek akan ditetapkan. Selepas anda memasukkan perkataan konfigurasi ke dalam pengaturcara dengan membaca fail HEX program yang mengandunginya, penulisan dilakukan dengan cara biasa dengan memasukkan arahan yang sesuai. Begitu juga boleh dibaca dari MK. Anda boleh memastikan bahawa konfigurasi ditulis, sama ada dengan mengosongkan panel pengaturcaraan daripada konfigurasi pengaturcara selepas menulis, dan kemudian membaca konfigurasi daripada MK, atau dengan membaca memori program daripada litar mikro yang dilindungi baca: sebelum konfigurasi ditulis , ia dibaca, dan selepas menulis ia tidak (jika perlindungan dipasang), dalam kes ini, konfigurasi juga dibaca dalam cip yang dilindungi. Ia tidak disyorkan untuk menetapkan bit keselamatan melainkan sangat diperlukan. Hakikatnya ialah sesetengah MK mempunyai perintah padam yang berbeza, dan anda tidak akan dapat memprogramnya semula, kerana bit perlindungan tidak akan dipadamkan pada PonyProg. Walau bagaimanapun, apabila menulis kepada cip yang tidak dilindungi di atas "perisian tegar" di dalamnya, kod yang ditulis akan memadamkan maklumat sebelumnya dan tidak akan ada keperluan untuk pemadaman. Walau bagaimanapun, ini tidak terpakai kepada PIC16F627, PIC16F628, maklumat di dalamnya boleh dilindungi tanpa rasa takut. Data ditulis ke EEPROM dengan cara biasa, kerana data dalam mikropengawal PIC16F dan PIC12F terletak dari alamat 2100p. Anda juga boleh melihat ini dalam fail .Ikr. Contoh rentetan: KOD NAME=eedata START=0x2100 END=0x217F DILINDUNGI (pemindahan bersyarat). Berbeza untuk pengawal PIC - hanya hujung kawasan data (disebabkan saiz yang berbeza): untuk PIC16F628 - 128, untuk PIC16F871 - 64 bait, tetapi jika jumlah yang anda perlukan untuk kerja tidak melebihi saiz EEPROM pengganti yang dipilih cip (untuk PIC16F871 - 64 bait) , maka anda boleh memprogram tanpa menukar jenis MK dalam menu: memori berlebihan PIC16F628 tidak akan digunakan. Jika anda perlu menulis jumlah yang lebih besar, maka anda harus menggantikan jenis MK dalam menu pengaturcara dengan saiz memori yang serupa dengan PIC16F628 (dalam kes kami, ia adalah PIC16F874 dengan 128 bait EEPROM) dan tulis dengan cara biasa. Anda boleh menukar jenis MK dalam menu pada mana-mana peringkat pengaturcaraan. Perlu diingat bahawa walaupun PIC16F874 mempunyai memori program dua kali lebih besar daripada PIC16F628, anda boleh menulis maklumat kepadanya dengan menetapkan PIC16F874 dan juga PIC16F877 (16K) dalam menu, namun, apabila menyemak rekod, pengaturcara akan memaparkan mesej ralat. Hakikatnya ialah apabila membaca sebahagian daripada memori yang tidak dilaksanakan dalam PIC16F628, MK akan memberikan maklumat yang direkodkan dalam alamat yang lebih rendah (bit alamat yang lebih tinggi diabaikan), iaitu memori program akan dibaca dua kali (dalam PIC16F877 - empat kali). Dalam erti kata lain, ini bukan ralat dalam program, tetapi pembacaan memori berulang, atur cara ditulis secara normal. Kesusasteraan
Pengarang: A.Sizov, Ivanovo Lihat artikel lain bahagian Pengawal mikro. Baca dan tulis berguna komen pada artikel ini. Berita terkini sains dan teknologi, elektronik baharu: Cara Baharu untuk Mengawal dan Memanipulasi Isyarat Optik
05.05.2024 Papan kekunci Seneca Prime
05.05.2024 Balai cerap astronomi tertinggi di dunia dibuka
04.05.2024
Berita menarik lain: ▪ Tingkatkan sambungan jalur lebar anda ▪ Telefon Pintar Extreme Ulefone Armor 12 5G ▪ Pemacu Mudah Alih 4TB Seagate Suapan berita sains dan teknologi, elektronik baharu
Bahan-bahan menarik Perpustakaan Teknikal Percuma: ▪ bahagian tapak Perlindungan kilat. Pemilihan artikel ▪ pasal Hammock dalam negara. Petua untuk tuan rumah ▪ artikel Apakah runtuhan salji? Jawapan terperinci ▪ artikel Bekerja dengan pam air. Arahan standard mengenai perlindungan buruh ▪ artikel VHF FM penala. Ensiklopedia elektronik radio dan kejuruteraan elektrik ▪ artikel Meneka salah satu daripada 15 kad. Fokus Rahsia
Tinggalkan komen anda pada artikel ini: Semua bahasa halaman ini Laman utama | Perpustakaan | artikel | Peta Laman | Ulasan laman web www.diagram.com.ua |