ENSIKLOPEDIA ELEKTRONIK RADIO DAN KEJURUTERAAN ELEKTRIK Antara muka pengawal PIC dengan komputer. Ensiklopedia elektronik radio dan kejuruteraan elektrik Ensiklopedia elektronik radio dan kejuruteraan elektrik / Pengawal mikro Apabila membangunkan peranti pada mikropengawal (MCU), masalah menyambungkannya dengan komputer untuk bertukar maklumat sering timbul. Dalam kebanyakan kes, mod dwiarah diperlukan pada kadar pertukaran yang agak rendah. Dalam kes terbaik, MK mungkin mempunyai antara muka bersiri, tetapi selalunya ia perlu dipilih daripada antara yang murah yang tidak dilengkapi dengan antara muka sedemikian. Sebagai contoh, mikrocip PIC16F84A yang sangat popular baru-baru ini daripada Microchip tidak mempunyai antara muka sedemikian. Artikel ini membincangkan pilihan pelaksanaan perisian antara muka bersiri dari sisi MK dan dari sisi komputer. Untuk berkomunikasi dengan peranti pada MK, anda boleh menggunakan port selari (LPT) atau bersiri (COM) komputer. Yang pertama lebih mudah untuk digunakan - ia boleh menggunakan bilangan isyarat input dan output yang agak besar, tahap yang serasi dengan TTL. Kelemahan port ini ialah walaupun di bawah DOS atau Linux operasi input/output mudah mencukupi untuk menggunakannya, maka untuk operasi yang betul di bawah Windows adalah perlu untuk mematuhi protokol pemindahan data dengan ketat, yang tidak berkesan apabila bekerja dengan mikropengawal. . Kawalan terus talian port LPT individu juga boleh dilakukan, tetapi ini memerlukan pemasangan pemacu khas. "Kelemahan" port LPT ialah dalam kebanyakan komputer hanya ada satu dan, sebagai peraturan, ia diduduki oleh pencetak. Kelebihan utama port COM ialah antara muka pengaturcaraan Windows standard (API) membolehkan anda mengawal secara langsung beberapa talian keluaran dan mengawal talian input, dan juga mempunyai fungsi menunggu beberapa acara yang dikaitkan dengan port COM. Kelebihannya ialah standard RS-232, mengikut mana port COM dibuat, membolehkan kabel disambungkan dan diputuskan semasa peranti beroperasi (palam panas). Di samping itu, komputer hampir selalu mempunyai port COM percuma. Kelemahan port ialah tahap isyarat berbeza daripada TTL, di mana tahap logik rendah sepadan dengan voltan -12, dan yang tinggi hingga +12 V. Pelaksanaan antara muka RS-232 standard memerlukan MK mematuhi selang masa antara isyarat keluaran dengan ketat. Dalam keadaan sebenar, resonator kuarza mikropengawal mungkin tidak sepadan dengan kekerapan penghantaran data, dan MK itu sendiri biasanya sibuk dengan sesuatu yang lebih penting daripada pembentukan selang masa yang tepat. Akibatnya, ternyata lebih mudah untuk melaksanakan pilihan pertukaran segerak bersiri secara pemprograman, apabila setiap bit data disahkan oleh nadi penyegerakan. Gambarajah skematik antara muka yang dicadangkan ditunjukkan dalam Rajah. 1. Untuk menukar tahap RS-232 kepada TTL, pembahagi rintangan R1R4 dan R2R5 digunakan. Diod VD1 dan VD2 diperlukan agar tidak melepasi voltan negatif yang sepadan dengan sifar logik. Isyarat TTL keluaran MK tidak memerlukan penukaran dan boleh disalurkan terus ke talian input port COM. Perintang R3 mengehadkan arus keluaran MK sekiranya berlaku litar pintas yang tidak disengajakan. Seperti yang anda lihat dari rajah, empat wayar diperlukan untuk berkomunikasi dengan komputer. Komputer memulakan pertukaran data dengan mengeluarkan denyutan jam ke talian DTR, meletakkan data yang dihantar pada talian RTS dan menerima data yang diterima melalui talian CTS. Komputer dan MK boleh menukar data hanya apabila tahap logik isyarat penyegerakan adalah rendah. Pilihan pelaksanaan antara muka ini membolehkan penghantaran data dupleks penuh. Nombor pin XS1 dalam rajah adalah untuk soket DB-25F apabila menggunakan kabel modem standard. Nombor hubungan untuk penyambung lain dan apabila menggunakan kabel modem null diberikan dalam jadual. 1. Kadar pengulangan denyutan penyegerakan mesti dipilih supaya mikropengawal dijamin mempunyai masa untuk memproses data dari komputer, bertindak balas kepada setiap denyutan penyegerakan. Bit maklumat dihantar secara berurutan. Setelah selesai penghantaran bit satu bait, penghantaran bit bait seterusnya menyusuli, dengan bit maklumat yang paling penting dihantar terlebih dahulu. Untuk memulihkan antara muka kepada keadaan asalnya (menetapkan bilangan bait yang dihantar kepada 0), komputer mesti, pada log. 1 pada baris penyegerakan menukar keadaan baris data. MK mengeluarkan sedikit data baharu pada talian CTS pada kejatuhan denyutan kekutuban positif pada input penyegerakan DTR, dan membaca data daripada talian RTS di tepi denyutan kekutuban positif. Pertukaran boleh diganggu pada bila-bila masa dengan menghentikan bekalan denyutan penyegerakan. Rajah masa pertukaran data ditunjukkan dalam Rajah. 2. Apabila melaksanakan antara muka, adalah disyorkan untuk menghantar nilai kawalan dalam beberapa bait untuk menyemak ketepatan data yang dihantar. Kod sumber prosedur untuk mikropengawal PIC16F84A [1] dalam bahasa C, melaksanakan antara muka yang dicadangkan, diberikan dalam Jadual. 2. Prosedur panggilan ke pautan() terletak dalam gelung program utama dan sentiasa dipanggil semasa operasi MK untuk memantau keadaan antara muka. Semua pembolehubah yang digunakan oleh prosedur diisytiharkan sebagai global. Pada setiap panggilan, ia membaca keadaan talian input antara muka (RB6 dan RB7) dan membandingkannya dengan keadaan mereka pada panggilan sebelumnya. Di bawah keadaan tertentu (kejatuhan penyegerakan, tepi penyegerakan, tetapan semula antara muka), tindakan dilakukan mengikut logik antara muka. Kod sumber prosedur untuk komputer dalam Pascal (Delphi) diberikan dalam Jadual. 3. Di sini prosedur pautan dipanggil sekali untuk menjalankan tindakan bertukar maklumat dengan MK. Sebelum memanggilnya, anda perlu mengisi penimbal obuf yang diluluskan. Pada akhir prosedur, data yang diterima akan ditempatkan dalam tatasusunan ibuf. Prosedur ini membuka port COM yang ditentukan pada komputer dan, menggunakan fungsi API Windows [2], mengawal keadaan talian keluaran dan meninjau talian input. Selepas pertukaran maklumat selesai, pelabuhan ditutup. Dalam prosedur pautan, kelewatan masa dilaksanakan menggunakan fungsi sleep(). Nilai mereka dikira atau dipilih secara eksperimen berdasarkan ketiadaan kehilangan bit semasa pertukaran data antara MK dan komputer. Contoh menunjukkan kelewatan untuk pertukaran dengan pengawal PIC dengan resonator kuarza pada frekuensi 4 MHz, yang, sebagai tambahan, melakukan kerja berguna lain. Jika prosedur pertukaran mengambil masa terlalu lama, ia boleh dialihkan ke urutan pelaksanaan sistem pengendalian yang berasingan supaya ia dilaksanakan selari dengan program utama [2]. Jika pertukaran maklumat memerlukan pembacaan dan penulisan yang berasingan, anda boleh mengedarkan tatasusunan data yang dihantar dan diterima ke alamat yang berbeza, seperti yang ditunjukkan dalam Rajah. 2. Dalam MK, adalah mudah untuk membina pembentukan data yang dihantar dan penggunaan data yang diterima dalam bentuk prosedur muat naik() dan muat turun(), yang dipanggil sebelum menghantar dan apabila menerima bait seterusnya, masing-masing. Yang pertama mesti mengembalikan nilai bait yang dihantar dengan nombornya dalam paket maklumat yang dihantar, yang kedua menerima nilai bait yang diterima dan nombornya dalam paket dan mesti menggunakan nilai ini untuk menukar daftar MK, tulis kepada EEPROM, dsb. Pelaksanaan prosedur ini untuk memproses paket maklumat bersaiz 4 bait (Jadual 4) ditunjukkan dalam Jadual. 5. Contoh program untuk MK diberikan untuk pengkompil C2C [3]. Prosedur komputer boleh digunakan dalam program yang ditulis dalam Borland Delphi 3 atau lebih tinggi. Kesusasteraan
Pengarang: S.Kuleshov, Kurgan Lihat artikel lain bahagian Pengawal mikro. Baca dan tulis berguna komen pada artikel ini. Berita terkini sains dan teknologi, elektronik baharu: Mesin untuk menipis bunga di taman
02.05.2024 Mikroskop Inframerah Lanjutan
02.05.2024 Perangkap udara untuk serangga
01.05.2024
Berita menarik lain: ▪ Seterika seterika secara menegak ▪ Modul kuasa pintar voltan tinggi dengan kapasiti bawaan arus yang meningkat ▪ Cro-Magnon lebih bijak daripada kami Suapan berita sains dan teknologi, elektronik baharu
Bahan-bahan menarik Perpustakaan Teknikal Percuma: ▪ bahagian tapak Motor elektrik. Pemilihan artikel ▪ artikel Hadiah orang Denmark. Ungkapan popular ▪ artikel Apa yang dipanggil subbotnik sebelum kedatangan kuasa Soviet? Jawapan terperinci ▪ artikel Output dari PC ke fon kepala. Ensiklopedia elektronik radio dan kejuruteraan elektrik
Tinggalkan komen anda pada artikel ini: Semua bahasa halaman ini Laman utama | Perpustakaan | artikel | Peta Laman | Ulasan laman web www.diagram.com.ua |