Intel MCS-51 (odatda 8051 deb ataladi, odatda sakkiz-oh-besh-bir deb talaffuz qilinadi) 1980 yilda o'rnatilgan tizimlarda foydalanish uchun Intel tomonidan ishlab chiqilgan yagona chipli mikrokontroller (MCU) seriyasidir. Intel MCS-51 ko'rsatmalar to'plamining me'mori Jon H. Uorton edi.[1][2] Intelning asl versiyalari 1980-yillar va 1990-yillarning boshlarida mashhur bo'lgan va kengaytirilgan ikkilik mos keluvchi lotinlar bugungi kunda mashhur bo'lib qolmoqda. Bu murakkab ko'rsatmalar to'plami kompyuteriga misol bo'ladi (lekin shuningdek, RISC arxitekturasining ba'zi xususiyatlariga ega, masalan, katta registrlar to'plami va registr oynalari) va dastur ko'rsatmalari va ma'lumotlari uchun alohida xotira joylari mavjud.
Intelning asl MCS-51 oilasi o'zidan oldingi Intel MCS-48 kabi N-tipli metall-oksid-yarim o'tkazgich (NMOS) texnologiyasidan foydalangan holda ishlab chiqilgan, ammo ularning nomidagi C harfi bilan belgilangan keyingi versiyalari (masalan, 80C51) qo'shimcha metalldan foydalanadi. -oksid-yarim o'tkazgich (CMOS) texnologiyaspackage javaapplication2; i va NMOS o'tmishdoshlariga qaraganda kamroq quvvat sarflaydi. Bu ularni batareya bilan ishlaydigan qurilmalar uchun ko'proq moslashtirdi.
Oila 1996 yilda takomillashtirilgan 8-bitli MCS-151 va 8/16-bit/32-bitli MCS-251 ikkilik mos keluvchi mikrokontrollerlar oilasi bilan davom ettirildi.[3] Intel endi MCS-51, MCS-151 va MCS-251 oilalarini ishlab chiqarmasa-da, ko'plab sotuvchilar tomonidan ishlab chiqarilgan yaxshilangan ikkilik mos keluvchi hosilalar bugungi kunda mashhur bo'lib qolmoqda. Ba'zi lotinlar raqamli signal protsessorini (DSP) birlashtiradi. Ushbu jismoniy qurilmalardan tashqari, bir nechta kompaniyalar MCS-51 lotinlarini dalada dasturlashtiriladigan darvoza massivi (FPGA) yoki dasturga xos integral mikrosxema (ASIC) dizaynlarida foydalanish uchun IP yadrolari sifatida ham taklif qilishadi.
Muhim xususiyatlar va ilovalar
8051 arxitekturasi koʻplab funksiyalarni (markaziy protsessor (CPU), tasodifiy kirish xotirasi (RAM), faqat oʻqish uchun moʻljallangan xotira (ROM), kirish/chiqarish (I/U) portlari, ketma-ket port, uzilishni boshqarish, taymerlar) bilan taʼminlaydi. paket:
8-bitli arifmetik mantiq birligi (ALU) va akkumulyator, 8-bitli registrlar (maxsus koʻchirish koʻrsatmalariga ega bitta 16-bitli registr), 8-bitli maʼlumotlar shinasi va 2×16-bitli manzil shinalari, dastur hisoblagichi, maʼlumotlar koʻrsatkichi va tegishli 8/11/16 bitli operatsiyalar; shuning uchun u asosan 8 bitli mikrokontrollerdir
17 ta koʻrsatmalar, 1 bitli akkumulyator, 32 ta registr (4x8 bit, bit manzilli) va 144 tagacha maxsus 1 bit manzilli RAM oʻzgaruvchilari (18x8 bit) bilan mantiqiy protsessor[4]
Ko'rsatmalarni ko'paytirish, bo'lish va solishtirish
Har birida sakkizta registrga ega to'rtta tez almashtiriladigan registrlar banki (xotira xaritasi)
Ixtiyoriy registrlar bankini almashtirish bilan tezkor uzilish
Tanlanadigan ustuvorlikka ega uzilishlar va oqimlar[5]
128 yoki 256 bayt chipdagi operativ xotira (IRAM)
Ikkita 16-bitli manzil avtobusi; u 2×216 xotira joylariga kirishi mumkin: Harvard arxitekturasida ikkita xotira avtobusidan foydalangan holda 64 KB (65 536 joy) ROM (PMEM) va tashqi RAM (XRAM).
Chipdagi ROM (803x variantlariga kiritilmagan)
To'rtta 8-bitli ikki yo'nalishli kirish/chiqish portlari, bit manzilli
UART (seriyali port)
Ikkita 16-bitli hisoblagich/taymer
Quvvatni tejash rejimi (ba'zi hosilalarda)
8051 yadrosining xususiyatlaridan biri bu mantiqiy ishlov berish mexanizmini kiritish bo'lib, u bit darajasidagi mantiqiy mantiqiy operatsiyalarni tanlangan ichki registrlar, portlar va tanlangan operativ xotira joylarida to'g'ridan-to'g'ri va samarali bajarishga imkon beradi. Yana bir xususiyat - to'rtta bank tanlanadigan ishchi registrlar to'plamini o'z ichiga oladi, ular uzilishlar xizmati tartiblariga kirish va chiqish uchun kontekstni almashtirishni bajarish uchun zarur bo'lgan vaqtni sezilarli darajada kamaytiradi. Bitta ko'rsatma bilan 8051 muhim registrlarni operativ xotiraga o'tkazish uchun ko'p vaqt talab qiladigan vazifadan qochib, registrlar banklarini almashtirishi mumkin.
UART va agar kerak bo'lsa taymer sozlangandan so'ng, dasturchi faqat oxirgi bit UART tomonidan o'zgartirilganda yuborishni almashtirish registrini to'ldirish uchun oddiy uzilish tartibini yozishi va/yoki to'liq qabul qilish siljish registrini bo'shatishi kerak (nusxalash). ma'lumotlar boshqa joyda). Keyin asosiy dastur 8 bitli ma'lumotlarni steklarga o'qish va yozish orqali ketma-ket o'qish va yozishni amalga oshiradi.
Hosil xususiyatlari
2013 yil holatiga ko'ra, yangi lotinlar hali ham ko'plab yirik chip ishlab chiqaruvchilar tomonidan ishlab chiqilmoqda va IAR Systems, Keil va Altium Tasking[6] kabi yirik kompilyator yetkazib beruvchilar doimiy ravishda yangilanishlarni chiqaradi.
MCS-51-ga asoslangan mikrokontrollerlar odatda bir yoki ikkita UART, ikki yoki uchta taymer, 128 yoki 256 bayt ichki ma'lumotlar operativ xotirasi (ulardan 16 bayt bit-adresli), 128 baytgacha kiritish-chiqarish, 512 baytdan 64 KBgacha o'z ichiga oladi. ichki dastur xotirasi va ba'zan tashqi ma'lumotlar maydonida joylashgan kengaytirilgan ma'lumotlar RAM (ERAM) miqdori. Tashqi RAM va ROM ma'lumotlar va manzil avtobuslarini almashadi. Asl 8051 yadrosi har bir mashina siklida 12 soat siklida ishlagan, ko'pgina ko'rsatmalar bir yoki ikkita mashina tsiklida bajarilgan. 12 MGts takt chastotasi bilan 8051 sekundiga 1 million bir davrli ko'rsatmalarni yoki sekundiga 500 000 ikki davrli ko'rsatmalarni bajarishi mumkin edi. Kengaytirilgan 8051 yadrolari hozirda tez-tez ishlatilmoqda, ular har bir mashina siklida olti, to'rt, ikkita yoki hatto bir soatda ("1T" bilan belgilanadi) ishlaydi va 100 MGts gacha bo'lgan takt chastotalariga ega va shuning uchun bundan ham ko'proq sonni oshirishga qodir. soniyada ko'rsatmalar. Barcha Silicon Labs, ba'zi Dallas (hozirgi Maxim Integrated qismi) va bir nechta Atmel (hozirgi Microchipning bir qismi) qurilmalari bitta tsiklli yadrolarga ega.
8051 variantlari o'z ichiga o'rnatilgan qayta o'rnatish taymerlari bilan jigarrang o'chirishni aniqlash, chipdagi osilatorlar, o'z-o'zidan dasturlashtiriladigan flesh-ROM dastur xotirasi, o'rnatilgan tashqi RAM, qo'shimcha ichki dastur xotirasi, ROMdagi yuklash kodi, EEPROM o'zgarmas ma'lumotlarni saqlashni o'z ichiga olishi mumkin. , I2C, SPI va USB xost interfeyslari, CAN yoki LIN avtobusi, ZigBee yoki Bluetooth radio modullari, PWM generatorlari, analog komparatorlar, analog-raqamli va raqamli-analogga o'zgartirgichlar, RTClar, qo'shimcha hisoblagichlar va taymerlar, o'chirish disk raskadrovka imkoniyatlari, ko'proq uzilish manbalari, qo'shimcha quvvat tejash rejimlari, ko'proq/kamroq parallel portlar va boshqalar. Intel ROMda BASIC tarjimoniga ega, RAMga yuklangan foydalanuvchi dasturlarini ishga tushirishga qodir bo'lgan 8052AH-BASIC niqobli dasturlashtirilgan versiyasini ishlab chiqardi.
MCS-51 asosidagi mikrokontrollerlar ekstremal muhitlarga moslashtirilgan. Yuqori haroratli variantlarga misollar -40 °C dan +250 °C gacha [10] Tekmos TK8H51 oilasi yoki −55 °C dan +225 °C gacha bo'lgan Honeywell HT83C51 (+300 ° da 1 yilgacha ishlash bilan) C).[11] Kosmik kemalarda foydalanish uchun radiatsiyaviy qotib qolgan MCS-51 mikrokontrollerlari mavjud; masalan, UT69RH051[12] sifatida Cobham (sobiq Aeroflex) yoki 1830VE32 (ruscha: 1830VE32) sifatida NIIET.
Oila nomlari qoidalari
8051 - 4 KB ROM va 128 bayt operativ xotiraga ega bo'lgan Intelning asl nomi. 87 dan boshlanadigan variantlar foydalanuvchi tomonidan dasturlashtiriladigan EPROMga ega, ba'zan esa UV nurlarini o'chirish mumkin. Uchinchi belgi sifatida C bo'lgan variantlar qandaydir CMOS turidir. 8031 va 8032 ROM-dan kam versiyalar bo'lib, 128 va 256 bayt operativ xotiraga ega. Oxirgi raqam xotira hajmini ko'rsatishi mumkin, masalan. 8 KB ROM bilan 8052, 87C54 16 KB EPROM va 32 KB EPROM bilan 87C58, barchasi 256 bayt operativ xotiraga ega.
Xotira arxitekturasi
MCS-51 to'rt xil xotira turiga ega: ichki operativ xotira, maxsus funksiya registrlari, dastur xotirasi va tashqi ma'lumotlar xotirasi. Ularga samarali kirish uchun ba'zi kompilyatorlar[18] 7 turdagi xotira ta'riflaridan foydalanadilar: ichki operativ xotira, ichki operativ xotiraga bir bitli kirish, maxsus funksiya registrlari, tanlangan (8 ga bo'linadigan) maxsus funktsiya registrlariga bir bitli kirish, dastur operativ xotirasi, standart 8-bitli registrlardan biri yordamida bilvosita kirish registridan foydalaniladigan tashqi RAM va 16-bitli bilvosita kirish registridan foydalangan holda bilvosita tashqi RAMga kirishni ro'yxatdan o'tkazish.
8051 ko'rsatmalar to'plami ajratilgan xotiraga (ma'lumotlar va ko'rsatmalar) ega Garvard arxitekturasi sifatida ishlab chiqilgan; u faqat dastur xotirasidan olingan kodni bajarishi mumkin va dastur xotirasiga yozish uchun ko'rsatmalari yo'q. Biroq, IC dan chiqadigan avtobus bitta manzil va ma'lumotlar yo'liga ega va Von Neumann arxitektura avtobusiga juda o'xshaydi.
Aksariyat 8051 tizimlari ko'rsatmalar to'plamini hurmat qiladi va yangi bajariladigan dasturlarni yuklab olish uchun moslashtirilgan xususiyatlarni talab qiladi, masalan. flesh xotirada.
Ichki RAM
Ichki operativ xotira (IRAM) 0 dan 0xFFgacha bo'lgan manzillardan foydalangan holda 8 bitli manzil maydoniga ega. 0x00 dan 0x7F gacha bo'lgan IRAM 128 ta to'g'ridan-to'g'ri manzilli 1 baytli registrlarni o'z ichiga oladi, ularga ko'rsatmalarning bir qismi bo'lgan 8 bitli mutlaq manzil yordamida kirish mumkin. Shu bilan bir qatorda, IRAM ga bilvosita kirish mumkin: manzil R0 yoki R1 ga yuklanadi va xotiraga kirish @R0 yoki @R1 sintaksisi yordamida yoki stek xotirasi sifatida PUSH va POP operatsiyalari yordamida SP stek ko'rsatkichi orqali amalga oshiriladi; va *CALL va RET operatsiyalari.
Asl 8051da atigi 128 bayt IRAM mavjud. 8052 0x80 dan 0xFF gacha bo'lgan IRAMni qo'shdi, unga faqat bilvosita kirish mumkin (masalan, stek maydoni sifatida foydalanish uchun). Aksariyat 8051 klonlar ham to'liq 256 bayt IRAMga ega.
80-FF IRAM manzillariga to'g'ridan-to'g'ri kirishlar, aksincha, A, B akkumulyatorlari, C bitlari va boshqaruv, holat va boshqalar uchun boshqa maxsus registrlar joylashgan maxsus funktsiya registrlari (SFR) bilan taqqoslanadi.
Maxsus funksiya registrlari
Maxsus funktsiya registrlari (SFR) IRAM bilan bir xil manzil maydonida, 0x80 dan 0xFFgacha bo'lgan manzillarda joylashgan bo'lib, ularga bevosita IRAM ning pastki yarmidagi kabi ko'rsatmalar yordamida kirish mumkin. Ularga bilvosita @R0 yoki @R1 orqali yoki SP stack ko'rsatkichi orqali kirish mumkin emas; bu manzillarga bilvosita kirish o'rniga IRAM ning ikkinchi yarmiga kirish imkonini beradi.
Maxsus funktsiya registrlari (SFR) tarkibiga A (yoki ACC, E0 da) va B (F0 da) akkumulyatorlar va dastur holati so'zi (yoki PSW, D0 da), o'zlari, shuningdek, 16 bitli DPTR ma'lumotlar ko'rsatkichi (da). 82, DPL sifatida va 83 DPH sifatida). Bularga qo'shimcha ravishda, boshqa maxsus funksiya registrlarining kichik yadrosi - shu jumladan A8 da uzilishni yoqish IE va B8 da uzilish ustuvorligi IP; kiritish/chiqarish portlari P0 (80), P1 (90), P2 (A0), P3 (B0); ketma-ket kiritish-chiqarish boshqaruvi SCON (98) va bufer SBUF (99); CPU/quvvatni boshqarish registri PCON (87); va taymerlar 0 va 1 boshqaruvi (88 da TCON) va ish rejimi (TMOD 89), 16 bitli taymer 0 (8A da TH0, 8C da TH0) va taymer 1 (8B da TH1, 8D da TH1) uchun registrlar. - 8051 ning barcha versiyalarida mavjud. Boshqa manzillar versiyaga bog'liq; Xususan, 2-taymer 8052 uchun registrlar: boshqaruv registri T2CON (C8 da), 16-bitli tutib olish/latch (CA da RCAP2L, CB da RCAP2H) va taymer 2 (CCda TL2 va CD da TH2), 8051 ga kiritilmagan.
Windowsni ro'yxatdan o'tkazish
0x00–0x1F dan IRAMdagi 32 bayt to'rtta sakkiz baytli registr oynalari uchun joyni o'z ichiga oladi, 8 ta registr R0–R7 xaritasi uchun. Hozirgi faol oyna dastur holati so'zida joylashgan ikki bitli manzil bilan aniqlanadi.
Bit registrlari
0x20–0x2F IRAM joylaridagi 16 bayt (128 bit) 128 ta 1-bitli registrlar uchun joyni o'z ichiga oladi, ular 00-7F bit registrlari sifatida alohida manzillanishi mumkin.
80-FF sifatida manzillangan qolgan bit registrlari 16 ta maxsus funktsiya registrlari 80, 88, 90, 98, ..., F0 va F8 (manzillari 8 ga karrali bo'lganlar) bilan taqqoslanadi va shuning uchun quyidagi bitlarni o'z ichiga oladi. A, B akkumulyatorlari va PSW dastur holati so'zi. PSW da 3 va 4 bitlar bo'lgan registr oynasi manzili mos ravishda D3 va D4 bit registrlari sifatida adreslanishi mumkin; PSW ning 7-bitidagi C (yoki CY) ko'chirish biti D7 bit registrida adreslanishi mumkin.
Dastur xotirasi
Dastur xotirasi (PMEM, garchi IRAM va XRAMga qaraganda kamroq tarqalgan bo'lsa-da) alohida manzil maydonida 0 manzilidan boshlab, faqat o'qish uchun mo'ljallangan 64 KBgacha xotirani tashkil qiladi. Amaldagi chipning muayyan modeliga qarab, u yoniq yoki chipdan tashqari bo'lishi mumkin. Dastur xotirasi faqat o'qish uchun mo'ljallangan, ammo 8051 ning ba'zi variantlari chipli flesh-xotiradan foydalanadi va xotirani tizimda yoki ilovada qayta dasturlash usulini taqdim etadi.
Kodga qo'shimcha ravishda MOVC A,@A+DPTR yoki MOVC A,@A+PC ko'rsatmalari orqali olingan qidiruv jadvallari kabi faqat o'qish uchun mo'ljallangan ma'lumotlarni dastur xotirasida saqlash mumkin. Manzil 8-bitli akkumulyator va 16-bitli registrning (PC yoki DPTR) yig'indisi sifatida hisoblanadi.
Maxsus o'tish va chaqiruv ko'rsatmalari (AJMP va ACALL) mahalliy (bir xil 2 KB ichida) dastur xotirasiga kiradigan kod hajmini biroz qisqartiradi.[19]
64K dan katta kod kerak bo'lganda, umumiy tizim kod bankini almashtiradi, umumiy maqsadli I/U esa yuqori manzil bitlarini tanlaydi. Ba'zi 8051 kompilyatorlar[18] sahifalangan kodga avtomatik kirishni ta'minlaydi. Ushbu tizimlarda uzilish vektorlari va peyjing jadvali kodning birinchi 32K qismiga joylashtiriladi va har doim rezident bo'ladi.
Tashqi ma'lumotlar xotirasi
Tashqi ma'lumotlar xotirasi (XRAM) uchinchi manzil maydoni bo'lib, u ham 0 manzildan boshlanadi va 16 bit manzil maydoniga ruxsat beradi. Bundan tashqari, chipda yoki tashqarida bo'lishi mumkin; uni "tashqi" qiladigan narsa shundaki, unga MOVX (tashqi ko'chirish) ko'rsatmasi yordamida kirish kerak. 8051 ning ko'pgina variantlari standart 256 bayt IRAM va chipdagi bir necha kilobayt XRAMni o'z ichiga oladi.
XRAMning dastlabki 256 baytiga MOVX A,@R0, MOVX A,@R1, MOVX @R0,A va MOVX @R1,A koʻrsatmalari yordamida kirish mumkin. Toʻliq 64KB ga MOVX A,@DPTR va MOVX @DPTR,A orqali kirish mumkin. 16-bitli manzil dasturchidan 16-bitli indeks registrini yuklashni talab qiladi. Shu sababli, 16-bitli manzillar bilan RAMga kirish sezilarli darajada sekinroq.
Ba'zi protsessorlar [20] 8 bitli bilvosita manzilga har qanday 8 bitli umumiy maqsadli registrdan foydalanishga ruxsat beradi.
Ushbu xususiyatdan foydalanishga ruxsat berish uchun ichki operativ xotirasi 256 baytdan katta bo'lgan ba'zi 8051-mos keluvchi mikrokontrollerlar yoki tashqi operativ xotiraga kirish imkoni yo'qligi[20] ichki operativ xotiraga tashqi kabi kirish va maxsus funksiya registriga ega (masalan, PDATA) bu ularga 256 baytlik sahifaning yuqori manzilini belgilash imkonini beradi. Bu MCS8051 rejimiga taqlid qiladi, u umumiy maqsadli kiritish/chiqarish pinlarini o'rnatish orqali RAM manzilining yuqori baytini sahifalashi mumkin.
64K dan katta RAM kerak bo'lganda, umumiy tizim operativ xotira bankini almashtiradi, umumiy maqsadli kiritish/chiqish esa yuqori manzil bitlarini tanlaydi. Ba'zi 8051 kompilyatorlar[18] sahifalangan ma'lumotlarga avtomatik kirishni ta'minlaydi.
Mikroarxitektura
Intel MCS8051 mikroarxitekturasi xususiydir, ammo nashr etilgan[21] xususiyatlar uning qanday ishlashini ko'rsatadi. Bu ko'p davrli protsessor. MCS8051 ko'pgina ko'rsatmalar uchun 12 soat siklidan[21] foydalangan. Ko'pgina ko'rsatmalar akkumulyatordan foydalanadi.[21] Aksincha, mos keluvchi kompyuterlarning ko'pchiligi ko'rsatmalarni bir-uch tsiklda bajaradi, ko'paytirish va bo'lish ko'rsatmalaridan tashqari. Ko'pgina ilovalarda MCS8051 o'rnini bosganining asosiy sababi shundaki, tezlik ancha yuqori.
Har bir uzilish to‘rtta ustuvorlikka ega.[21] Har bir ustuvorlik doirasida qurilmalarning uzilishlari belgilangan ustuvorlikka ega.
Dasturlash
8051 uchun turli xil yuqori darajali dasturlash tili kompilyatorlari mavjud. 8051 uchun bir nechta C kompilyatorlari mavjud bo'lib, ularning aksariyati dasturchiga har bir o'zgaruvchining olti turdagi xotirasida qayerda saqlanishi kerakligini belgilash imkonini beradi va 8051 maxsus uskunasiga kirishni ta'minlaydi. bir nechta registr banklari va bitni manipulyatsiya qilish bo'yicha ko'rsatmalar kabi xususiyatlar. Ko'pgina tijorat C kompilyatorlari mavjud.[22] Kichik qurilma C kompilyatori (SDCC) mashhur ochiq manbali C kompilyatoridir.[23] 8051 uchun C++, Forth,[24][25][26][27] BASIC, Object Pascal, Pascal, PL/M va Modula-2 kabi yuqori darajadagi boshqa tillar mavjud, ammo ular kamroq qo'llaniladi[iqtibos] kerak] C va montajdan ko'ra.
IRAM, XRAM va PMEM (faqat o'qish) 0 manziliga ega bo'lganligi sababli, 8051 arxitekturasi uchun C kompilyatorlari ma'lum bir ma'lumot bo'lagi qayerda saqlanishi kerakligini ko'rsatish uchun kompilyatorga xos pragmalarni yoki boshqa kengaytmalarni taqdim etadi (ya'ni, PMEMdagi doimiylar yoki kerak bo'lgan o'zgaruvchilar). IRAMda tezkor kirish). Ma'lumotlar uchta xotira bo'shlig'idan birida bo'lishi mumkinligi sababli, odatda ko'rsatgich qaysi xotiraga tegishli ekanligini aniqlashga imkon beradigan mexanizm taqdim etiladi, yoki xotira maydonini o'z ichiga olishi uchun ko'rsatgich turini cheklash yoki ko'rsatgich bilan metadata saqlash.
Tegishli protsessorlar
Intel 8031 mikrokontrollerlari
Intel D87C51 mikrokontrolleri
Intel MCS-51 mahsulot liniyasini 2007 yil mart oyida to'xtatdi;[28][29] Biroq, boshqa sotuvchilardan muntazam ravishda qo'shiladigan ko'plab yaxshilangan 8051 mahsulot yoki silikon intellektual mulk mavjud.
8051 ning o'tmishdoshi 8048 birinchi IBM PC klaviaturasida ishlatilgan, u erda tugmachalarni bosishni kompyuterning asosiy blokiga yuboriladigan ketma-ket ma'lumotlar oqimiga aylantirgan. Intel 8049 Sinclair QL-da xuddi shunday rolni bajargan. 8048 va lotinlari bugungi kunda ham asosiy model klaviaturalari uchun ishlatiladi.
8031 asl 8051 ning qisqartirilgan versiyasi bo'lib, u ichki dastur xotirasiga ega bo'lmagan (faqat o'qish uchun xotira, ROM). Ushbu chipdan foydalanish uchun 8031 olib keladigan va bajaradigan dasturni o'z ichiga olgan tashqi ROM qo'shilishi kerak edi. 8051 chipi ROMsiz 8031 sifatida sotilishi mumkin, chunki 8051-ning ichki ROM 8031-ga asoslangan dizayndagi EA pinining normal holati tufayli o'chirib qo'yilgan. Sotuvchi 8051-ni 8031 sifatida sotishi mumkin, masalan, 8051-ning ROM-dagi noto'g'ri kod yoki oddiygina 8051-ning ortiqcha va 8031-ning kamligi kabi sabablarga ko'ra.
8052 original 8051 ning takomillashtirilgan versiyasi bo'lib, unda 128 bayt o'rniga 256 bayt ichki operativ xotira, 4 KB o'rniga 8 KB ROM va uchinchi 16 bitli taymer mavjud edi. Ko'pgina zamonaviy 8051-mos keladigan mikrokontrollerlar ushbu xususiyatlarni o'z ichiga oladi.
8032 8052 bilan bir xil xususiyatlarga ega edi, bundan tashqari ichki ROM dastur xotirasi yo'q edi.
8751 4 KB ROM o'rniga 4 KB EPROMga ega 8051 edi. Ular o'zgarmas xotira turidan tashqari bir xil edi. Ushbu qism EPROMni o'chirish uchun ultrabinafsha nurlanishidan foydalanish uchun matritsaning tepasida shaffof kvarts oynasi bo'lgan keramika paketida mavjud edi. Tegishli qismlar: 8752 tasida 8 KB EPROM, 8754 tasida 16 KB EPROM, 8758 tasida 32 KB EPROM mavjud.
80C537 (ROMsiz) va 80C517 (8 KB ROM) avtomobil sanoati uchun mo'ljallangan CMOS versiyalaridir. Yaxshilashlar asosan yangi va takomillashtirilgan tashqi qurilmalarni o'z ichiga oladi. 80C5x7 ishlamay qoladigan mexanizmlar, analog signallarni qayta ishlash moslamalari, kengaytirilgan taymer imkoniyatlari va 32-bitli arifmetik periferiyaga ega. Boshqa funktsiyalarga quyidagilar kiradi:
256 baytli chipdagi operativ xotira
256 to'g'ridan-to'g'ri manzilli bit
64 KB gacha kengaytirilishi mumkin bo'lgan tashqi dastur va ma'lumotlar xotirasi
12 ta multiplekslangan kirishga ega 8 bitli A/D konvertor
Arifmetik periferiya 16×16→32-bitli koʻpaytirish, 32/16→16-bitli boʻlinish, 32-bitli siljish va 32-bitli normallashtirish operatsiyalarini bajarishi mumkin.
Dastur va tashqi ma'lumotlar xotirasini bilvosita manzillash uchun bitta o'rniga sakkizta ma'lumot ko'rsatkichi
Kengaytirilgan kuzatuv ob'ektlari
To'qqizta I/U porti
Shaxsiy uzatish tezligi generatorlari bilan ikkita to'liq dupleks seriyali interfeys
To'rtta ustuvor darajadagi uzilish tizimi, 14 ta uzilish vektori
Uchta energiya tejash rejimi
8051 mikrokontrollerlarida har biri 8 bitli 4 ta kirish/chiqarish portlari mavjud bo'lib, ular kirish yoki chiqish sifatida sozlanishi mumkin. Shunday qilib, jami 32 ta kirish / chiqish pinlari mikrokontrollerni periferik qurilmalar bilan ulash imkonini beradi.
Pin konfiguratsiyasi, ya'ni pinni mantiqiy holatga ko'ra kirish uchun 1 va chiqish uchun 0 sifatida sozlash mumkin.
Kirish/chiqish (I/U) pin - mikrokontroller ichidagi barcha kontaktlarning zanglashiga olib P0 portidan tashqari uning pinlaridan biriga ulangan bo'lishi kerak, chunki unda o'rnatilgan tortishish rezistorlari yo'q.
Kirish pin - Logic 1 P registrining bir qismiga qo'llaniladi. Chiqish FE tranzistori o'chirilgan va boshqa pin yuqori qarshilikka ega bo'lgan tortishish qarshiligi orqali quvvat manbai kuchlanishiga ulangan bo'lib qoladi.
Port 0 − P0 (nol) porti ikkita funksiya bilan tavsiflanadi −
Tashqi xotiradan foydalanilganda, unga pastki manzil bayti (manzillar A0A7) qo'llaniladi, aks holda ushbu portning barcha bitlari kirish/chiqish sifatida sozlangan.
P0 porti chiqish sifatida sozlangan bo'lsa, so'ngra uning uchi 5V quvvat manbaiga ulangan o'rnatilgan tortuvchi rezistorli pinlardan iborat boshqa portlar sozlangan bo'lsa, ushbu portning pinlarida bu rezistor tashqarida qoladi. Kirish konfiguratsiyasi
Agar ushbu portning har qanday pinlari kirish sifatida sozlangan bo'lsa, u xuddi "suzuvchi" kabi ishlaydi, ya'ni kirish cheksiz kirish qarshiligiga va aniqlangan potentsialga ega.
Chiqish konfiguratsiyasi
Pim chiqish sifatida sozlangan bo'lsa, u "ochiq drenaj" vazifasini bajaradi. Mantiq 0 ni port bitiga qo'llash orqali tegishli pin erga (0V) ulanadi va mantiq 1 ni qo'llash orqali tashqi chiqish "suzuvchi" bo'lib qoladi.
Ushbu chiqish pinida mantiq 1 (5V) ni qo'llash uchun tashqi tortish rezistorini qurish kerak.
Port 1
P1 haqiqiy kiritish/chiqarish portidir, chunki u P0dagi kabi muqobil funksiyalarga ega emas, lekin bu port faqat umumiy kiritish/chiqarish sifatida sozlanishi mumkin. U o'rnatilgan tortishish qarshiligiga ega va TTL sxemalariga to'liq mos keladi.
Port 2
P2 tashqi xotiradan foydalanilganda P0 ga o'xshaydi. Ushbu portning pinlari tashqi xotira chipi uchun mo'ljallangan manzillarni egallaydi. Bu port A8-A15 manzillari bilan yuqoriroq manzil bayti uchun ishlatilishi mumkin. Xotira qo'shilmasa, bu port 1-portga o'xshash umumiy kirish/chiqish porti sifatida ishlatilishi mumkin.
Port 3
Ushbu portda funktsiyalar boshqa portlarga o'xshaydi, bundan tashqari mantiq 1 P3 registrining tegishli bitiga qo'llanilishi kerak.
Joriy cheklovlar
Pimlar chiqish sifatida sozlangan bo'lsa (ya'ni mantiqiy 0), u holda bitta port pinlari 10 mA oqim olishi mumkin.
Ushbu pinlar kirishlar sifatida sozlangan bo'lsa (ya'ni mantiq 1), keyin o'rnatilgan tortishish rezistorlari juda zaif oqimni ta'minlaydi, lekin LS seriyasining 4 tagacha TTL kirishini faollashtirishi mumkin.
Agar portning barcha 8 biti faol bo'lsa, u holda umumiy oqim 15 mA (port P0: 26 mA) bilan cheklanishi kerak.
Agar barcha portlar (32 bit) faol bo'lsa, u holda umumiy maksimal oqim 71 mA bilan cheklanishi kerak.
Kitoblar
mazidi; MakKinley; Mazidi (2012). 8051 mikrokontroller: tizimli yondashuv. 648-bet ISBN 978-0-13-508044-3.
Shults, Tomas (2008). C va 8051 (4-nashr). 464-bet ISBN 978-0-9783995-0-4.
Shtayner, Kreyg (2005). 8051/8052 mikrokontroller: arxitektura, yig'ish tili va apparat interfeysi. 348-bet ISBN 978-1-58112-459-0.
Kalkutt; Kovan; Parchizoda (2000). 8051 Mikrokontrollerlar: Uskuna, dasturiy ta'minot va ilovalar. 329-bet ISBN 978-0-340-67707-0.
Axelson, Yanvar (1994). Mikrokontroller g'oyalari kitobi: 8052-BASIC mikrokontrolleriga ega sxemalar, dasturlar va ilovalar. 277-bet ISBN 978-0-9650819-0-0.
Payne, Uilyam (1990 yil 19 dekabr) [1990]. 8051 oilasi uchun FORTH o'rnatilgan kontroller (qattiq muqovali). Boston: Akademik matbuot. 528-bet ISBN 978-0-12-547570-9.
Do'stlaringiz bilan baham: |