Menu English Ukrainian Russia Laman Utama

Perpustakaan teknikal percuma untuk penggemar dan profesional Perpustakaan teknikal percuma


ENSIKLOPEDIA ELEKTRONIK RADIO DAN KEJURUTERAAN ELEKTRIK
Perpustakaan percuma / Skim peranti radio-elektronik dan elektrik

Kami mereka bentuk peranti pada mikropengawal. Ensiklopedia elektronik radio dan kejuruteraan elektrik

Perpustakaan teknikal percuma

Ensiklopedia elektronik radio dan kejuruteraan elektrik / Pengawal mikro

Komen artikel Komen artikel

Di antara idea awal untuk mencipta peranti berdasarkan mikropengawal (MCU) dan pembangunan programnya, terdapat peringkat penting - merangka gambar rajah blok algoritma. Ia sering dilupakan atau, lebih teruk, diabaikan. Pengaturcaraan dijalankan secara "heuristik", pada asasnya melalui percubaan dan kesilapan. Hasilnya ialah program yang tidak berfungsi dan menyusahkan yang tidak dapat difahami sepenuhnya walaupun oleh penciptanya, dan sukar untuk dimodenkan. Walau bagaimanapun, kaedah yang agak mudah telah lama diketahui dan digunakan oleh pengaturcara, yang membolehkan, bermula dengan rumusan lisan algoritma, untuk mereka bentuk rajah bloknya dengan cekap. Kepentingan profesional pengarang artikel itu terletak pada bidang perkembangan MK siri Z8, tetapi bahan yang dibentangkannya sama digunakan untuk jenis MK lain.

Interaksi mana-mana sistem MK dengan pengendali dan objek kawalan boleh diwakili seperti ditunjukkan dalam Rajah. 1 rajah [1]. Dalam kes umum, objek kawalan dilengkapi dengan penggerak dan sensor. Pengendali manusia bertindak pada mikropengawal menggunakan peranti induk dan menerima maklumat tentang keadaan objek daripada bacaan peranti paparan. Yang pertama ialah suis, butang, perintang boleh ubah, yang kedua ialah penunjuk cahaya (termasuk grafik dan abjad angka), pemancar bunyi dan peranti isyarat lain.

Kami mereka bentuk peranti pada mikropengawal

Semua unit berfungsi dan sambungan yang ditunjukkan dalam rajah hanya diperlukan dalam sistem pemantauan dan kawalan interaktif yang kompleks. Dalam apa yang dipanggil sistem kawalan gelung terbuka, mikropengawal berfungsi "secara membabi buta", tanpa menerima sebarang maklumat tentang keadaan objek. Kadang-kadang ia tidak memberikan sebarang maklumat kepada pengendali tentang kerja (kedua-duanya sendiri dan objek), terutamanya jika ada kemungkinan untuk menilai hasil kawalan dengan memerhati objek itu sendiri. Dalam sistem kawalan tertutup, MC melaraskan tindakan kawalan pada objek bergantung pada bacaan sensor, tetapi peranti paparan juga tidak diperlukan di sini. Sistem kawalan tidak mengandungi penggerak, dan dengan bantuan peranti induk, pengendali hanya memilih parameter terkawal atau menukar mod operasi penunjuk.

Metodologi untuk mereka bentuk sistem pada MK [2, 3] termasuk perumusan dan analisis masalah, tafsiran kejuruteraannya, pembangunan gambar rajah blok algoritma dan teks program aplikasi. Dalam sistem sedemikian, mereka cenderung untuk menetapkan bilangan maksimum fungsi kepada perisian. Kecekapan pelaksanaannya akhirnya menentukan jumlah memori yang diperlukan, kelajuan dan kebolehpercayaan sistem secara keseluruhan. Sudah tentu, kita masih perlu membangunkan gambar rajah konsep dan reka bentuk produk itu sendiri, tetapi kita akan menyentuhnya hanya setakat yang diperlukan untuk pembangunan program MK.

Pernyataan masalah ialah rumusan lisan tentang keperluan untuk sistem yang direka bentuk. Pertama sekali, mereka menerangkan tujuannya, ciri-ciri objek kawalan, sensor, penunjuk, penggerak dan peranti induk. Seterusnya, anda harus bercakap secara terperinci tentang tingkah laku sistem yang diingini dalam semua situasi yang mungkin, termasuk yang "tidak normal". Dalam apa jua keadaan, anda tidak boleh bergantung pada tindakan pengendali tanpa ralat. Sebagai contoh, setelah mendengar isyarat kecemasan, dia mungkin menekan butang "MULA" dan bukannya butang "BERHENTI" yang ditetapkan atau secara rawak menekan semua butang berturut-turut. Sudah tentu, adalah mustahil untuk meramalkan semua situasi sedemikian, tetapi kita mesti berusaha untuk ini. Adalah penting untuk menentukan nilai berangka parameter sistem yang direka bentuk.

Pertama, tugas itu dirumuskan, sebagai peraturan, "di peringkat pengguna." Sebagai contoh, tugas awal untuk membangunkan sistem kawalan kipas mungkin berbunyi seperti ini: "Hidupkan dan matikan kipas, laraskan keamatan aliran udara dan tukar arahnya (ekzos / pelepasan)." Analisis kejuruteraan akan mengurangkan masalah ini untuk mengawal kelajuan dan arah putaran pemacu kipas - motor elektrik DC. Memandangkan kuasa isyarat keluaran MC jelas tidak mencukupi untuk kawalan terus enjin, peranti pemacu khas perlu dipasang di antara mereka, menjana isyarat kuasa yang diperlukan, dan tugas itu diselesaikan oleh MC. akan terhad kepada pembekalan tindakan kawalan kepada pemandu.

Kami tidak akan membincangkan secara terperinci mengenai pilihan elemen kawalan kuasa, sensor dan peranti untuk antara muka mereka dengan MK. Hari ini, litar mikro khusus dihasilkan untuk tujuan ini, penggunaannya jauh lebih cekap daripada membina sistem daripada komponen diskret.

Mari kita andaikan bahawa pemacu motor DC bersepadu LMD18200 daripada National Semiconductor akan digunakan. Gambar rajah tipikal sambungannya ditunjukkan dalam Rajah. 2. Ia mengandungi jambatan transistor MOS yang berkuasa, pepenjurunya termasuk motor.

Kami mereka bentuk peranti pada mikropengawal

Pemandu dikawal menggunakan tiga isyarat logik. Denyutan segi empat tepat dibekalkan kepada input PWM (Pulse Width Modulation), nisbah tempohnya kepada tempoh ulangan (faktor tugas) menentukan kelajuan enjin. Tahap logik isyarat pada input DIR (arah) menetapkan kekutuban voltan yang dibekalkan kepada motor, dan oleh itu arah putarannya. Dengan menetapkan log tahap. 1 pada input BR (brek), enjin dihentikan, dan jika pada masa ini terdapat log pada input PWM. 0, litar bekalan kuasa motor hanya akan terbuka, jika tidak, petunjuk motor juga akan disambungkan antara satu sama lain, yang akan menyediakan brek kecemasan.

Pemandu mempunyai dua sensor terbina di dalamnya. Salah satu daripadanya menghasilkan arus yang mengalir dari pin CUR (arus) dan berkadar dengan arus motor dengan faktor 377 μA/A. Keluaran penderia suhu TF (Bendera Termal) adalah diskret dengan pengumpul terbuka. Ia masuk ke keadaan log. 0. jika kristal pemacu dipanaskan melebihi 145 °C.

Mari kita rumuskan keperluan untuk peranti kawalan motor kipas, dan pada dasarnya, pemandu motor.

Peranti kawalan mesti dilengkapi dengan butang, dengan menekan yang mana pengendali (pengguna) boleh menghidupkan dan mematikan enjin, menukar arah, menambah dan mengurangkan kelajuannya. Mesti ada petunjuk arah putaran enjin dengan isyarat cahaya warna yang berbeza dan penggera yang boleh didengar tentang kemalangan (terlalu panas atau beban).

Selepas menggunakan voltan bekalan, peranti mesti, tanpa menghidupkan enjin, menunggu arahan yang menyatakan arah putaran. Penerimaannya hendaklah disahkan oleh isyarat cahaya. Selepas arahan "MULA", enjin mesti dihidupkan dan mula berputar ke arah yang ditentukan pada frekuensi purata (kitaran tugas isyarat PWM = 0.5). Untuk arahan "SLOWER" dan "FASTER", kitaran tugas harus berkurangan atau meningkat dengan sewajarnya, tanpa melebihi 0.2... 1. Arahan "STOP" harus segera menghentikan enjin, selepas itu ia boleh dihidupkan semula dengan mengeluarkan arahan "MULA".

Jika nilai penggunaan semasa yang dibenarkan melebihi, yang mungkin merupakan akibat, sebagai contoh, kesesakan mekanikal aci motor, yang kedua mesti dimatikan dan isyarat bunyi terputus-putus dengan frekuensi 1000 Hz mesti diberikan dalam bentuk letusan pendek (tempoh dan jeda antara mereka ialah 1 s). Jika litar mikro terlalu panas, enjin perlu dihentikan dan bunyikan isyarat bunyi dalam letupan panjang (tempoh letusan dan jeda ialah 2 saat). Penggera boleh didengar harus kekal dihidupkan sehingga itu. sehingga operator mengeluarkan arahan STOP, mengembalikan peranti ke keadaan asalnya. Sebelum arahan sedemikian diberikan, ia tidak sepatutnya bertindak balas kepada orang lain.

Sudah pada peringkat ini, seseorang harus mengabstrak daripada butiran yang tidak penting untuk pembangunan program MK. Sebagai contoh, dalam kes ini tidak mengapa. bahawa objek kawalan (motor) berfungsi sebagai pemacu kipas, jenis pengudaraan (ekzos atau bekalan) bergantung pada arah putarannya, dan keamatan aliran udara bergantung pada frekuensi. Lebih-lebih lagi, apabila membangunkan algoritma, anda boleh melupakan sepenuhnya motor dan pemandunya, memfokuskan pada penjanaan isyarat kawalan PWM. DIR, BR dan pemprosesan isyarat daripada penderia CUR dan TE.

Apabila menganalisis masalah yang dirumuskan, adalah dinasihatkan untuk segera mengenal pasti beberapa masalah yang pasti akan muncul pada peringkat seterusnya. Sebagai contoh, patutkah sistem bertindak balas kepada arahan RUN jika arah putaran tidak dipratetap? Jika ya. maka ke arah manakah enjin harus berputar dalam keadaan sedemikian? Perlukah kelajuan dan arah putaran yang ditentukan dikekalkan selepas berhenti dan menghidupkan semula enjin? Dan selepas situasi kecemasan diselesaikan? Semua soalan sebegini mesti dijawab seawal mungkin.

Berdasarkan penerangan lisan, senarai isyarat input dan output MK disusun. Yang pertama termasuk arahan yang diberikan oleh pengendali dan isyarat sensor: "EXTRACTION". "PUMPING". "MULA". "LEBIH CEPAT". "LEBIH LAMBAT." "BERHENTI". "LEBIHAN" (CUR). "TERPANAS" (TF). Yang kedua mengandungi isyarat kawalan untuk pemandu motor dan penunjuk: PWM - kelajuan putaran. DIR - arah putaran, BR - matikan enjin. G - hidupkan LED hijau. Y - hidupkan LED kuning. S - bunyi.

Dengan mengambil kira perkara di atas, kita boleh membuat kesimpulan awal. apa yang MK perlukan. mempunyai sekurang-kurangnya 14 pin untuk menyambungkan litar luaran (lapan input dan enam output). Memandangkan isyarat CUR adalah analog, pembanding akan diperlukan untuk membandingkan bacaan sensor dengan nilai yang boleh diterima dan menjana isyarat logik "LEBIHAN". Oleh itu, MK adalah lebih baik. dilengkapi dengan pembanding terbina dalam. Sesuai, sebagai contoh, ialah pengubahsuaian 18-pin minimum bagi siri Z86 MK. Pilihan termurah ialah litar mikro. Z86E02. Itu sahaja buat masa ini. bagi perkakasan peranti. Pengagihan isyarat input dan output merentasi pin MC tidak penting pada peringkat ini.

Seterusnya, disyorkan untuk menggambarkan algoritma yang dinyatakan secara lisan dalam bentuk graf mesin keadaan terhingga yang dipanggil. Peranti diskret dianggap sebagai mesin keadaan terhingga jika boleh menyenaraikan semua keadaan di mana ia boleh, semua peristiwa (pengaruh luar) yang membawa kepada perubahan keadaan, dan semua isyarat keluaran yang dihasilkan. Ini adalah tepat peranti berdasarkan MK.

Contoh graf automaton ditunjukkan dalam rajah. 3.

Kami mereka bentuk peranti pada mikropengawal

Keadaan diwakili oleh nod (bucu) graf. Dalam kes ini, terdapat empat daripadanya: A. B. C dan D. Bucu disambungkan oleh lengkok yang dilengkapi dengan anak panah yang menunjukkan arah peralihan, peristiwa Xi yang menyebabkan peralihan ini ditunjukkan di atas lengkok, dan di bawahnya adalah satu set daripada isyarat keluaran Yi yang dijana oleh mesin pada masa ini dan tidak berubah sehingga peralihan seterusnya. Secara teorinya, tepat bahawa banyak lengkok harus keluar dari setiap bucu graf. berapa banyak pengaruh luaran yang berbeza pada mesin yang mungkin. Jika sesetengah peristiwa tidak mengubah keadaan automaton, arka yang sepadan ditunjukkan memasuki puncak yang sama dari mana ia keluar. Walau bagaimanapun, untuk tidak mengacaukan lukisan, dalam praktiknya hanya arka ini yang tinggal. yang mana perubahan dalam isyarat keluaran dikaitkan. Sebagai contoh, daripada graf yang ditunjukkan dalam Rajah. 3. Anda boleh mengeluarkan arka A-A dan B-B. Dalam bahasa biasa, ini bermakna mesin dalam keadaan A dan B tidak bertindak balas terhadap peristiwa X3.

Peristiwa yang mempengaruhi mesin, dilaksanakan dalam bentuk program MK. bukan sahaja "langsung", disebabkan oleh perubahan dalam tahap logik isyarat yang dibekalkan kepada pin luaran MC, tetapi juga "tidak langsung". Yang terakhir termasuk, sebagai contoh, hasil tertentu untuk membandingkan nilai yang dikira dan ditentukan bagi parameter tertentu atau penyiapan operasi jangka panjang. Garis antara peristiwa langsung dan tidak langsung kadangkala sukar dilukis. Sebagai contoh, peristiwa biasa seperti pencetus pemasa yang dibina ke dalam MK boleh dianggap tidak langsung jika ia direkodkan. dengan menganalisis nombor yang terdapat dalam daftar yang sepadan, atau secara langsung, dengan bertindak balas kepada isyarat yang dijana oleh pemasa pada penghujung kiraan. Isyarat output juga boleh menjadi tidak langsung, tidak secara langsung mengubah tahap logik pada output MK. Selalunya, apabila beralih antara keadaan automaton, mereka hanya memberikan nilai tertentu kepada pembolehubah program.

Berbalik kepada masalah yang dihadapi, mari kita bina graf mesin kawalan enjin. Menganalisis tugas, kita boleh membezakan keadaan berikut:

  • MULA - tetapkan serta-merta selepas menghidupkan kuasa. Tindakan awal yang diperlukan dilakukan - nilai awal pembolehubah program dan isyarat output ditetapkan, dan peranti persisian dikonfigurasikan. Selepas ini, mesin pergi ke keadaan STOP1 (contoh peralihan yang baik berdasarkan peristiwa tidak langsung - penyiapan permulaan);
  • STOP 1 - mesin memasukinya setelah selesai pemulaan atau selepas keluar dari situasi kecemasan. Output mengikut arahan yang menentukan arah putaran enjin:
  • STOP2 - mesin sedang menunggu arahan "MULA";
  • OPERASI - keadaan utama, peranti menjana isyarat PWM. Keluar dengan arahan "STOP" atau dengan isyarat daripada penderia kecemasan;
  • TERLALU PANAS. LEBIH BEBAN - menyatakan ke mana mesin pergi dari keadaan OPERASI hasil daripada pengaktifan penderia yang sepadan. Enjin dimatikan dan peranti menjana isyarat bunyi. Keluar hanya dengan arahan "STOP".

Graf yang dibina ditunjukkan dalam rajah. 4.

Kami mereka bentuk peranti pada mikropengawal

Adalah mudah untuk melihat bahawa adalah mustahil untuk menukar arah putaran yang salah yang ditetapkan secara tidak sengaja tanpa menghidupkan dan kemudian mematikan enjin. Di samping itu, untuk memulakannya, anda sentiasa perlu memberikan dua arahan - arah dan mula. Dengan menolak arahan "MULA", anda boleh menghapuskan syarat STOP2. dan halakan lengkok arahan "PUSH" dan "EXTRACTION" terus ke keadaan OPERASI. Akibatnya, akan terdapat kurang satu butang pada panel kawalan, dan satu input MK akan dikosongkan. dan enjin akan dihidupkan serta-merta selepas menekan mana-mana butang yang menetapkan arah. Tegasnya, sebarang perubahan pada algoritma kawalan yang diberikan mesti mendapat persetujuan pelanggan atau pengguna peranti pada masa hadapan. Tetapi dalam amalan amatur, pelanggan, penghibur dan pengguna selalunya adalah satu orang dan sudah cukup untuk "berunding dengan diri sendiri."

Adalah menarik perhatian bahawa graf tidak menggambarkan kaedah menjana isyarat PWM dengan kitaran tugas berubah-ubah. Secara umum, ini boleh dilakukan oleh peranti khas yang dikawal dari MK. Tetapi kami berusaha untuk melaksanakan semuanya secara pemrograman semata-mata, jadi kami perlu membahagikan keadaan KERJA kepada dua. Dalam yang pertama (KERJA) PWM = 0, dalam yang kedua (KERJA 1) - PWM = 1.

Sekarang kami akan menyediakan untuk peristiwa yang menyebabkan peralihan di antara mereka - pencetus ganti dua pemasa, satu daripadanya menetapkan tempoh denyutan PWM, dan yang kedua - jeda di antara mereka, dan setiap pemasa, apabila dicetuskan, memulakan yang lain. Disebabkan fakta bahawa dalam kes ini pemasa "logik" tidak pernah beroperasi secara serentak, ia boleh dilaksanakan menggunakan satu pemasa "fizikal", secara pemrograman mengubah kelewatan masanya selepas setiap operasi.

Arahan "FASTER" dan "SLOWER" melaraskan kelewatan masa pemasa, meninggalkan jumlahnya tidak berubah dan sama dengan tempoh pengulangan yang ditentukan bagi denyutan PWM. Mesin boleh bertindak balas kepada arahan ini di kedua-dua negeri yang sedang dipertimbangkan. Walau bagaimanapun, untuk memudahkan algoritma, adalah dibenarkan untuk mengehadkan tindak balas kepada hanya satu daripadanya. Disebabkan tempoh singkat keadaan ini, kelewatan pelaksanaan akan kekal tidak dapat dilihat oleh pengendali.

Satu lagi penjelasan yang diperlukan ialah menyemak kebolehterimaan nilai kelewatan masa. Mengikut tugas, kitaran tugas isyarat PWM. sama dengan T1/(T1+T0). di mana T1 dan T0 adalah kelewatan masa pemasa, mesti sentiasa kekal dalam selang 0,2... 1. Oleh itu, selepas setiap arahan untuk menukar kelajuan, mesin mesti masuk ke keadaan SEMAK dan hanya dari sana kembali ke OPERASI nyatakan sepanjang satu daripada dua lengkok. Yang pertama sepadan dengan keputusan ujian positif; apabila mengklik padanya, nilai kelajuan pengatup baharu ditetapkan. Yang kedua - hasilnya negatif, petikan yang sah sebelum ini kekal tidak berubah.

Meneruskan menganalisis graf, kami perhatikan bahawa keadaan OVERHEAT dan OVERLOAD berbeza hanya dalam tempoh pengulangan isyarat bunyi. Adalah idea yang baik untuk menggabungkannya menjadi satu, memanggilnya KEMALANGAN. Isyarat audio S boleh dijana menggunakan dua pemasa, serupa dengan isyarat PWM yang dibincangkan di atas. Selain itu, adalah dinasihatkan untuk menggunakan pemasa "fizikal" yang sama, yang kekal terbiar dalam keadaan ini.

Untuk membuat bunyi terputus-putus, anda boleh menggunakan pemasa lain, tetapi lebih mudah dilakukan tanpanya dengan mengira tempoh isyarat yang dijana menggunakan pembilang yang dilaksanakan dalam perisian, menghidupkan dan mematikan isyarat output selepas bilangan tertentu. Semua ini memerlukan penyediaan keadaan tambahan mesin dan peralihan di antara mereka.

Graf yang dibangunkan bagi kawalan automatik enjin ditunjukkan dalam rajah. 5.

Kami mereka bentuk peranti pada mikropengawal

Ambil perhatian bahawa pernyataan lisan tindakan yang dilakukan digantikan dengan memberikan nilai khusus kepada pembolehubah. Sebagai contoh, bukannya frasa "hidupkan LED kuning", Y = 1 ditunjukkan dan dinyatakan bahawa LED hijau harus dimatikan, G = 0. Sebagai tambahan kepada isyarat keluaran dan kelewatan pemasa yang dinyatakan sebelum ini, malar T ialah tempoh pengulangan denyutan PWM dan pembolehubah N ialah bilangan denyutan S yang tinggal sehingga akhir selang isyarat audio yang dijana.

Langkah seterusnya ialah menukar graf ke dalam gambarajah blok algoritma operasi MK. Pertama sekali, semua bucu graf (keadaan mesin) hendaklah dinomborkan. Susunan penomboran adalah sangat penting dalam pelaksanaan perkakasan mesin. Dengan memilihnya dengan betul, anda boleh memudahkan peranti dengan ketara. Untuk pelaksanaan perisian ini tidak begitu penting, dan dalam kebanyakan kes penomboran boleh sewenang-wenangnya. Program ini mesti menyediakan apa yang dipanggil "pembolehubah keadaan", yang semasa operasi diberikan nilai yang sama dengan nombor keadaan semasa. Dalam program yang kompleks mungkin terdapat beberapa pembolehubah sedemikian. Banyak bahasa pengaturcaraan membolehkan anda memberikan nama simbolik nilai angka. Ini boleh digunakan secara meluas, memandangkan barisan atur cara di mana pembolehubah diberikan nilai RABOTA adalah lebih jelas daripada penetapan baris, contohnya, nilai 6.

Dalam Rajah. 6 gambarajah blok biasa bagi algoritma kawalan dibentangkan dalam bentuk yang paling umum. Selepas permulaan, program berjalan secara kitaran. Setelah menganalisis pembolehubah keadaan, ia melaksanakan prosedur yang sesuai dalam setiap kitaran. Perubahan dalam keadaan mesin dicerminkan dengan memberikan nilai baharu kepada pembolehubah keadaan, akibatnya prosedur berbeza akan dilakukan dalam kitaran seterusnya.

Kami mereka bentuk peranti pada mikropengawal

Prosedur yang melaksanakan setiap keadaan mesin dibina mengikut gambarajah blok yang serupa dengan yang ditunjukkan dalam Rajah. 7. Pertama sekali, pengaruh luaran (peristiwa) dianalisis. Seterusnya, proses dibahagikan kepada seberapa banyak cawangan kerana terdapat lengkok yang meninggalkan puncak sepadan graf automaton, setiap daripada mereka menyediakan untuk pelaksanaan fungsi yang diperlukan untuk melaksanakan peralihan ini, dan akhirnya, nilai yang sama dengan bilangan bucu yang mana arka diarahkan diberikan kepada pembolehubah keadaan. Pendekatan lain juga mungkin: pertama mereka melaksanakan arka memasuki puncak, dan kemudian bertindak balas terhadap pengaruh. Kelemahan utamanya ialah program mesti "tahu" dari mana keadaan mesin berpindah ke yang ini, yang tidak diperlukan dalam kes sebelumnya.

Kami mereka bentuk peranti pada mikropengawal

Sila ambil perhatian bahawa dalam rajah. Rajah 7 menunjukkan dua pilihan yang mungkin untuk keluar dari prosedur keadaan. Pada mulanya, peristiwa dianalisis secara kitaran sehingga salah satu daripadanya dikesan, menyebabkan keluar dari negeri ini. Dalam kedua - jika tidak ada pengaruh sedemikian. prosedur selesai seperti yang ditunjukkan oleh garis putus-putus.

Jika terdapat sedikit pengaruh luar dan tindak balas terhadapnya di setiap negeri adalah khusus, prosedur pengesanan peristiwa disertakan dalam blok pemprosesan keadaan. Sebagai contoh, anda boleh menyemak sama ada butang "MULA" ditekan hanya dalam keadaan di mana mesin harus bertindak balas terhadapnya. Selalunya, prosedur penapisan acara diletakkan dalam gelung utama (dalam Rajah 6 ia ditunjukkan dengan garis putus-putus) dan pembolehubah disediakan, yang diberikan nilai yang dikaitkan secara unik dengan peristiwa yang berlaku. Contohnya, hasil tinjauan pendapat papan kekunci ialah kod kekunci yang ditekan. Dalam blok pemprosesan negeri, dilaksanakan mengikut pilihan kedua yang dibincangkan di atas, nilai pembolehubah ini hanya dianalisis.

Tidak seperti model teori, peristiwa sebenar sering berlaku serentak. Dalam keadaan sedemikian, mesin mesti bertindak balas terhadap peristiwa yang mempunyai keutamaan tertinggi. Cara paling mudah untuk menetapkan keutamaan ialah memilih urutan analisis peristiwa yang betul. Sebagai contoh, mengikut gambarajah blok yang ditunjukkan dalam Rajah. 7, acara X1 mempunyai keutamaan tertinggi. yang paling rendah adalah untuk HZ. Jika acara keutamaan tinggi berlaku lebih kerap daripada acara keutamaan rendah, baris gilir mungkin tidak akan sampai ke yang terakhir. Untuk mengelakkan ini, kejadian yang jarang berlaku harus diberi keutamaan tertinggi. Kadangkala pengedaran yang terakhir perlu diubah semasa program sedang berjalan, contohnya, meletakkan setiap acara yang baru diproses pada penghujung baris gilir.

Tingkah laku sistem yang tidak dapat diramalkan pada MK sering dijelaskan oleh gangguan atau lantunan kenalan kawalan. Peristiwa palsu tersebut mesti "disaring" menggunakan penapis perisian. Selalunya, untuk mengiktiraf sesuatu peristiwa sebagai telah berlaku, sudah cukup untuk memastikan bahawa tahap isyarat logik pada input MK yang sepadan kekal tidak berubah untuk masa tertentu. Dalam kes kritikal, prosedur yang lebih kompleks digunakan.

Di antara banyak peristiwa, seseorang sering dapat membezakan yang "kecemasan", yang tindak balasnya mesti segera. Contoh tipikal. Untuk tidak terlepas saat pemasa menyala, program perlu menyemak keadaan daftarnya secara berterusan, tanpa dapat melakukan apa-apa lagi sehingga pemasa tamat tempoh. Isyarat permintaan gangguan yang dijana oleh pemasa pada penghujung kiraan menyelesaikan masalah. Setelah menerimanya. MK dengan serta-merta (dalam apa jua keadaan, jauh lebih pantas daripada semasa pemprosesan program biasa bagi acara yang sama) meneruskan pelaksanaan subrutin untuk menservis gangguan ini, alamat (vektor) yang mesti dinyatakan dalam sel memori program yang ditetapkan khas.

Peranti untuk gangguan vektor keutamaan program yang sedang dilaksanakan disediakan dalam kebanyakan mikropengawal. Gangguan boleh sama ada luaran atau dalaman. Dalam kes kedua, input permintaan gangguan tidak mempunyai output luaran, tetapi disambungkan kepada sumber permintaan yang terletak terus pada cip MK. Biasanya, gangguan dalaman disediakan bukan sahaja dari pemasa, tetapi juga dari peranti lain yang dibina ke dalam MK ini: pengawal port bersiri, pembanding isyarat analog, penukar analog-ke-digital.

Selalunya salah satu gangguan dalaman MK moden dikaitkan dengan apa yang dipanggil Watch Dog, yang berfungsi untuk melindungi daripada kegagalan rawak. Pemasa ini memerlukan pemalar

permulaan dengan menulis kod tertentu ke lokasi tertentu dalam ruang alamat. Program MK dibina sedemikian rupa sehingga semasa kursus biasa prosedur sedemikian dilakukan dengan kerap. Jika MK dibekukan, permulaan pemasa pengawas berhenti dan selepas beberapa ketika ia menyerahkan permintaan gangguannya, pemprosesan yang bertujuan untuk memulihkan operasi normal sistem. Lazimnya, tindak balas kepada gangguan pengawas adalah sama. sebagai isyarat luaran yang menetapkan MK kepada keadaan asalnya.

Gangguan dikawal dengan mendayakan atau melumpuhkannya bergantung pada keadaan mesin yang sedang dilaksanakan. Jika gangguan yang sama dalam keadaan berbeza perlu diproses secara berbeza, prosedur pemprosesan dibina serupa dengan gelung program utama, menyediakan analisis keadaan. Bezanya begini. bahawa prosedur sedemikian tidak ditutup dalam gelang. Setelah selesai, MK akan terus melaksanakan program dari tempat ia tergendala. Ini penuh dengan kegagalan, kerana dalam keadaan yang telah berubah akibat pemprosesan gangguan, tindakan terputus yang berterusan mungkin memberikan hasil yang salah. Mereka dilindungi daripada ralat sedemikian dengan melarang gangguan semasa pelaksanaan bahagian kritikal aliran program, yang. sudah pasti memperlahankan tindak balas sistem.

Jika terdapat lebih banyak sumber permintaan gangguan dalam sistem daripada input MK yang disediakan untuk mereka, permintaan kumpulan dilaksanakan dalam perkakasan, menggabungkan output beberapa sumber menggunakan litar OR. Setelah menerima permintaan sedemikian. MK bertanggungjawab untuk mengetahui siapa yang menghantarnya dan memprosesnya dengan sewajarnya.

Keseluruhan algoritma pengendalian peranti kadangkala dilaksanakan oleh satu set rutin pengendalian gangguan. Dalam kes ini, gelung utama merosot kepada beberapa arahan mesin, sehingga satu perintah untuk melompat ke dirinya sendiri tanpa syarat. Banyak MK secara khusus menyediakan arahan HALT atau IDLE, yang mereka gunakan. Pada asasnya, mereka berhenti bekerja (kadangkala penjana jam dimatikan). Hanya permintaan gangguan masuk boleh membawa MC keluar dari negeri ini. Setelah selesai memproses permintaan. Mikropengawal melakukan peralihan tanpa syarat kepada arahan berhenti yang disediakan dalam gelung utama dan "tertidur" semula. Mod ini sangat menjimatkan, kerana kuasa yang digunakan oleh MK yang dihentikan dikurangkan berkali-kali, hanya meningkat semasa tindak balas terhadap pengaruh luar.

Gambar rajah blok algoritma kawalan motor kipas, yang dibangunkan dengan mengambil kira perkara di atas, terdiri daripada dua bahagian, ditunjukkan dalam Rajah. 8 (kitaran utama) dan Rajah. 9 (pemprosesan gangguan pemasa). Kedua-duanya pada asasnya sepadan dengan gambar rajah blok biasa yang dibincangkan di atas, dengan pengecualian bahawa operasi yang sama dilakukan apabila memproses peristiwa yang berbeza digabungkan. Pengendali gangguan pemasa menjana isyarat PWM dan S. Apabila beralih daripada keadaan STOP ke keadaan RUN, gangguan didayakan dan apabila kembali ke keadaan STOP, ia dinyahdayakan.

Kami mereka bentuk peranti pada mikropengawal

Program ini kini mempunyai pembolehubah keadaan ST, yang untuk kejelasan diberikan nilai rentetan - nama negeri yang sepadan. Seperti yang dinyatakan di atas, dalam program ini akan menjadi nombor - nombor nyatakan atau nama simboliknya. Nilai yang diberikan kepada pembolehubah N0 dipilih berdasarkan andaian bahawa tempoh pengulangan denyutan PWR dan S yang dijana adalah sama dan sama dengan 1 ms. Jika tidak begitu. Gambarajah blok perlu diubah sedikit.

Kami mereka bentuk peranti pada mikropengawal

Kini anda boleh beralih kepada memilih MK, mengedarkan isyarat input dan output merentasi pinnya dan membangunkan gambar rajah litar lengkap peranti. Setelah menentukan litar luaran yang mana bit port input/output tertentu MK akan disambungkan, dan tahap logik isyarat dalam litar ini, pengaturcara boleh mula membangunkan atur cara.

Kesusasteraan

  1. Franke K. Pengenalan kepada mikrokomputer: Per. dengan dia. - M.: Energoatomiedat. 1998.
  2. Kagan B. M., Stashin V. V. Asas-asas mereka bentuk peranti automasi berasaskan mikropemproses. - M.: Energoatomiedat. 1987.
  3. Stashin V.V., Urusov A.V., Mologoitseva O.F. Reka bentuk peranti digital pada mikropengawal cip tunggal. - M.: Energoatomiedat. 1990.

Pengarang: M. Gladshtein, Rybinsk

Lihat artikel lain bahagian Pengawal mikro.

Baca dan tulis berguna komen pada artikel ini.

<< Belakang

Berita terkini sains dan teknologi, elektronik baharu:

Cara Baharu untuk Mengawal dan Memanipulasi Isyarat Optik 05.05.2024

Dunia sains dan teknologi moden berkembang pesat, dan setiap hari kaedah dan teknologi baharu muncul yang membuka prospek baharu untuk kita dalam pelbagai bidang. Satu inovasi sedemikian ialah pembangunan oleh saintis Jerman tentang cara baharu untuk mengawal isyarat optik, yang boleh membawa kepada kemajuan ketara dalam bidang fotonik. Penyelidikan baru-baru ini telah membolehkan saintis Jerman mencipta plat gelombang yang boleh disesuaikan di dalam pandu gelombang silika bersatu. Kaedah ini, berdasarkan penggunaan lapisan kristal cecair, membolehkan seseorang menukar polarisasi cahaya yang melalui pandu gelombang dengan berkesan. Kejayaan teknologi ini membuka prospek baharu untuk pembangunan peranti fotonik yang padat dan cekap yang mampu memproses jumlah data yang besar. Kawalan elektro-optik polarisasi yang disediakan oleh kaedah baharu boleh menyediakan asas untuk kelas baharu peranti fotonik bersepadu. Ini membuka peluang besar untuk ...>>

Papan kekunci Seneca Prime 05.05.2024

Papan kekunci adalah bahagian penting dalam kerja komputer harian kami. Walau bagaimanapun, salah satu masalah utama yang dihadapi pengguna ialah bunyi bising, terutamanya dalam kes model premium. Tetapi dengan papan kekunci Seneca baharu daripada Norbauer & Co, itu mungkin berubah. Seneca bukan sekadar papan kekunci, ia adalah hasil kerja pembangunan selama lima tahun untuk mencipta peranti yang ideal. Setiap aspek papan kekunci ini, daripada sifat akustik kepada ciri mekanikal, telah dipertimbangkan dengan teliti dan seimbang. Salah satu ciri utama Seneca ialah penstabil senyapnya, yang menyelesaikan masalah hingar yang biasa berlaku pada banyak papan kekunci. Di samping itu, papan kekunci menyokong pelbagai lebar kunci, menjadikannya mudah untuk mana-mana pengguna. Walaupun Seneca belum tersedia untuk pembelian, ia dijadualkan untuk dikeluarkan pada akhir musim panas. Seneca Norbauer & Co mewakili piawaian baharu dalam reka bentuk papan kekunci. dia ...>>

Balai cerap astronomi tertinggi di dunia dibuka 04.05.2024

Meneroka angkasa dan misterinya adalah tugas yang menarik perhatian ahli astronomi dari seluruh dunia. Dalam udara segar di pergunungan tinggi, jauh dari pencemaran cahaya bandar, bintang dan planet mendedahkan rahsia mereka dengan lebih jelas. Satu halaman baharu dibuka dalam sejarah astronomi dengan pembukaan balai cerap astronomi tertinggi di dunia - Balai Cerap Atacama Universiti Tokyo. Balai Cerap Atacama, yang terletak pada ketinggian 5640 meter di atas paras laut, membuka peluang baharu kepada ahli astronomi dalam kajian angkasa lepas. Tapak ini telah menjadi lokasi tertinggi untuk teleskop berasaskan darat, menyediakan penyelidik dengan alat unik untuk mengkaji gelombang inframerah di Alam Semesta. Walaupun lokasi altitud tinggi memberikan langit yang lebih jelas dan kurang gangguan dari atmosfera, membina sebuah balai cerap di atas gunung yang tinggi memberikan kesukaran dan cabaran yang besar. Walau bagaimanapun, walaupun menghadapi kesukaran, balai cerap baharu itu membuka prospek yang luas kepada ahli astronomi untuk penyelidikan. ...>>

Berita rawak daripada Arkib

Ingatan orang berfungsi lebih baik dalam gelap. 16.05.2017

Para saintis Amerika telah mendapati bahawa ingatan manusia berfungsi lebih baik dengan mata tertutup.

Para penyelidik berusaha untuk mengetahui sama ada ingatan manusia benar-benar berfungsi dengan baik dengan mata tertutup dan dalam gelap. Sekumpulan sukarelawan telah ditayangkan filem yang tidak pernah mereka tonton sebelum ini. Selepas tamat tontonan, semua peserta dalam eksperimen menceritakan secara terperinci peristiwa yang ditunjukkan dalam filem itu.

Percubaan melibatkan membahagikan orang kepada kumpulan. Salah seorang daripada mereka dibenarkan memejamkan mata sambil mengingati detik-detik filem itu, manakala yang lain tidak dibenarkan berbuat demikian. Membandingkan keputusan yang diperolehi, ternyata dengan menutup mata, seseorang mengaktifkan ingatannya. Semua mereka yang melakukan ini mengingati lebih banyak daripada bahan yang baru dilihat daripada yang lain. Oleh itu, saintis telah membuktikan bahawa sesungguhnya, orang dalam gelap atau dengan mata tertutup mampu mengaktifkan ingatan dan menumpukan perhatian dengan lebih baik.

Berita menarik lain:

▪ Meriam air untuk kapal selam

▪ Basikal elektrik ADO A20

▪ Kad grafik EVGA GeForce GTX 980 Hibrid

▪ Penerima Antara Muka Dalam Sistem 56Gbps

▪ Kembali ke Edison

Suapan berita sains dan teknologi, elektronik baharu

 

Bahan-bahan menarik Perpustakaan Teknikal Percuma:

▪ bahagian laman web Teka-teki lucu. Pemilihan artikel

▪ artikel Perakam pita. Sejarah ciptaan dan pengeluaran

▪ artikel Apa itu moluska? Jawapan terperinci

▪ Pasal Jerusalem articok. Legenda, penanaman, kaedah aplikasi

▪ artikel Bekalan kuasa dengan penyongsangan voltan licin. Ensiklopedia elektronik radio dan kejuruteraan elektrik

▪ artikel Penguji bateri. Ensiklopedia elektronik radio dan kejuruteraan elektrik

Tinggalkan komen anda pada artikel ini:

Имя:


E-mel (pilihan):


Komen:





Semua bahasa halaman ini

Laman utama | Perpustakaan | artikel | Peta Laman | Ulasan laman web

www.diagram.com.ua

www.diagram.com.ua
2000-2024