Mikrodenetleyiciler MCS-51: program modeli, yapısı, komutları. Mcs51 ailesinin mikro denetleyicileri A. Bileşenlerin ek özellikleri ve özellikleri

Şu anda, çeşitli şirketler bu ailenin analoglarını hem Intel'den hem de diğer üreticilerden değişiklik yapmadan piyasaya sürüyor, saat hızı ve bellek on kat arttı ve artmaya devam ediyor. Yerleşik BIS modüllerinin sayısı da genişletildi; çok sayıda mevcut model, 12'ye kadar çıkabilen yerleşik yüksek hızlı ADC'ye sahiptir ve aynı zamanda daha fazla deşarj olabilir. İlk versiyonları 1980'lerde piyasaya sürülen Intel'in BIS 8051, 80С51, 8751, 87С51, 8031, 80С31 MCS51 ailesini temel alır.

MCS51 ailesinin mikrodenetleyicileri, yüksek kaliteli n-MOS teknolojisine (8ХХХ serisi, analog - Rusya ve Beyaz Rusya'da 1816 serisi) ve k-MOS teknolojisine (8ХХХХ serisi, analog - 183 0 serisi) dayanmaktadır. Ardından 8 gelen diğer bir sembol şu anlama gelir: 0 – kristalde ROM yoktur, 7 – ultraviyole silgili 4K ROM. Üçüncü karakter: 3 – ROM kristalin üzerindedir, 5 – ROM yoksa kristalin üzerinde ROM maskesi vardır.

І so 80С51 - Çip üzerinde maske ROM'lu k-MOS teknolojisi için BIS, 8031 ​​- Çip üzerinde program belleği (ROM, RPOM) olmayan BIS n-MOS, 8751 - Yerleşik BIS n-MOS (çip üzerine yerleştirilmiş) ) Ultraviyole silinebilirliğe sahip RPOM. Uzaktan BIS 8751'i görebiliyoruz, diğer devrelerin özellikleri, ilk seri BIS için yayınlanan parametrelerin ayarlanması konusunda dikkat gerektiren sorunlar var. Gerekirse mevcut tüm değişiklikler hakkında ek bilgi şirketin danışmanlarında ve teknik belgelerinde bulunabilir.

A. Zagalny özellikleri ve sembollerin önemi

MCS51 ailesinin temeli, mikro denetleyicinin beş modifikasyonundan (temel özelliklerle aynı) oluşur; aralarındaki temel fark, bellek programının uygulanmasında ve işlem yoğunluğunda yatmaktadır (böl. tablo 3.1). Yani sekiz bitlik mikrodenetleyici. Sekiz bitlik kelimeleri işlemek için komutlar kullanır, Harvard mimarisini kullanır, ailenin temel cihazlarının saat frekansı 12 MHz'dir.

Tablo 3.1.

Mikro devreler

Dahili program belleği, bayt

Program belleği türü

Dahili veri belleği, bayt

Saat frekansı, MHz

Strum tüketimi, mA

MK 8051 ve 80C51, kristalin hazırlanması sırasında 4096 bayt kapasiteli, maske ile programlanabilir bir ROM program belleği içerir ve seri üretilen ürünlerden salınır. MK 8751, gelişmiş programlarla sistem geliştirme aşamasında ve ayrıca küçük partiler halinde üretim sırasında veya prosesin işleyişinde önemli olan sistemlerin oluşturulması sırasında ultraviyole silme ve manuel olarak 4096 bayt kapasiteli bir EPRAM içerir.

periyodik ayarlama.

MK 8031 ​​​​ve 80C31, depolanan program belleğine müdahale etmez. Değişiklikten önce açıklandığı gibi, 64 KB'a kadar harici program belleği kullanabilirler ve çok daha fazla veri gerektiren (yonga başına 4 KB'nin altında) sistemlerde etkin bir şekilde kullanılabilirler. i) PZP program belleği.

Kozhen MK ailesi, dahili veri RAM'ini harici IC RAM değişimi başına 64 KB'ye kadar genişletme olasılığı nedeniyle 128 bayt kapasiteli yerleşik bir veri belleğine sahiptir.

    merkezi sekiz bit işlemci;

    program belleği 4 KB (yalnızca 8751 ve 87C51);

    veri belleği 128 bayt;

    Sekiz bitlik programlanmış G/Ç bağlantı noktaları vardır;

    iki adet 16 bit çok modlu zamanlayıcı/dağıtıcı;

    beş vektöre ve iki programatik öncelik düzeyine sahip bir otomatik vektör sistemi;

    dört modda çalışan evrensel bir çift yönlü alıcı-vericiyi içeren son arayüz;

    saat üreteci.

MK komut sistemi 1, 2 veya 3 bayt formatında 111 temel komut içerir. Mikrodenetleyici şunları yapabilir:

    32 yasal tanınma RON kaydı, R0... R7 adlarıyla tüm kayıtlarda bankalar gibi düzenlenmiştir, PSW kayıt programında telefon numaralarını ayarlamak için program tarafından hangi bankanın seçimi belirtilir;

    128 yazılım-seramik işaret (bit işlemci, bölüm mesafesi);

    MK öğelerini içeren bir dizi özel fonksiyon kaydı. Mikrodenetleyicinin aşağıdaki çalışma modları vardır:

1). Zagalne skidannya. 2). Normal işleyiş. 3). Azaltılmış enerji tüketimi modu ve boşta modu. 4). Yerleşik RPZP'nin programlama modu aşağıdaki gibidir.

Burada asıl dikkatimizi ilk iki robot moduna veriyoruz; tüm modlar için MK robot deposunu açıklayan rapor Ek P1'e eklenmiştir.

Bit işlemcisinin RON bölgesi, 0 ila 80h arasında değişen adreslerle konut OZP'nin adres alanında bulunur.

Üst bölge yerleşik RAM'in ve genişletilmiş Özel Fonksiyon Kayıtlarının (SFR, Özel Fonksiyon Kayıtları) adresini içerir. Bu anlamlar tabloda belirtilmiştir. 3.2.

Tablo 3.2.

Randevu

İsim

Pil

B Kaydı

Kayıt defteri bir program haline gelecek

Yığın göstergesi

Veri vitrini. 2 bayt:

Düşük bayt

Yüksek bayt

Öncelik kaydını kesintiye uğrat

Kaydın kesintiye uğramasına izin verilir

Zamanlayıcı/dağıtıcı modlarının kaydı

Zamanlayıcı/dağıtıcı kaydı

Zamanlayıcı/oturum açma 0. Yüksek bayt

Zamanlayıcı/Dolap 0. Düşük bayt

Zamanlayıcı/oturum açma 1. Yüksek bayt

Zamanlayıcı/Dolap 1. Düşük bayt

Son liman yönetimi

Seri bağlantı noktası arabelleği

Oturma odası yönetimi

* - kayıt olmak, neyi itiraf etmeliyim Bitov tarafından adresleme

Şimdi Tablo 3.2'de özetlenen SFR kayıtlarının işlevlerine bakalım.

Pil ACC - Pil kaydı. Robotlar için belirlenmiş komutlar.

Pilin arkasındaysanız, örneğin “A” anımsatıcısını kullanın, MOV A, P2 . "ACC" anımsatıcısı, örneğin pil bit düzeyinde adreslendiğinde kullanılır. Yani daha sembolik olarak vikoristan montajcısı A5M51 geldiğinde pilin beşinci bitinin adı gelecek: ACC. 5. .

Kayıt sen . Vikorystvovaetsya çarpma ve alt işlem saatinde. Diğer talimatlar için kayıt defteri ek bir süper-işlem kaydı olarak görülebilir.

Kayıt ben olacağım programlar P.S.W. Programla ilgili bilgileri yerleştirin ve sıklıkla gerçekleştirilen seçilen işlemin sonucuna göre otomatik olarak yüklenir. Kayıt hanelerinin anlamı Tablo 3.3 ve 3.4'te açıkça gösterilmektedir.

Tablo 3.3.

Randevu

Tablo 3.4.

Randevu

Savaşların atanması

Bitlere erişim

Teğmen devredildi. Bir dizi aritmetik ve mantıksal talimat zamanla değişir.

Donanım ve yazılım

Ek transferin nişanı. Sonuçta en küçük bayt (D0-D3) oluşturulduğunda, bit 3'teki transfer veya konumların eklenmesi için eklenen veya verilen yeni talimatın saatinde donanım kurulur/kaldırılır.

Donanım ve yazılım

Teğmen 0. Koristuvach olarak belirlenen Teğmen.

Programlı olarak

Programlı olarak

Vkazivnik çalışma kayıtları bankası

Programlı olarak

Banka 0, adreslerle (00Н - 07Н) Banka 1, adreslerle (08Н - 0FН) Banka 2, adreslerle (10Н - 17Н) Banka 3, adreslerle (18Н - 1FН)

Prapor yeniden adlandırıldı. Ekleme için aritmetik talimatların yeniden kurulacağı saat içinde kurulan veya atılan donanım

Donanım ve yazılım

Rezerv. Kaydedilebilen ve okunabilen, vikorize edilebilen intikam tetikleyicisi

Biraz eşitlik. Donanım, "1" ayarında mevcut olan eşleştirilmiş veya eşleşmemiş sayıda pil deşarjının eklenmesine yönelik talimatlarla birlikte cilt döngüsüne atılır veya takılır.

Donanım ve yazılım

Pokazchik yığın SP - PUSH ve CALL komutları verildiğinde yığına veri yazılmadan önce artırılan 8 bitlik bir kayıttır. Yığın göstergesi 07H atılırken takılır ve veri RAM'indeki yığın alanı 08H adresinden başlar. Yığın göstergesinin yeniden atanmasına ihtiyaç duyulursa yığın alanı, mikro denetleyicinin dahili veri belleğindeki herhangi bir konuma taşınabilir.

Pokazchik haraç DPTR yüksek bayt (DPH) ve düşük bayttan oluşur

(DPL). Harici belleğe yükseltme yaparken 16 bit adresi değiştirin. Zafer kazanabilirsin.

ya 16 bitlik bir kayıt olarak ya da iki bağımsız sekiz bitlik kayıtlar olarak.

Bağlantı Noktası0 - PortZ. P0, P1, P2, RZ özel fonksiyonlarının kayıt bitlerinin yanı sıra, P0, P1, P2, RZ ana bağlantı noktalarının “yüklenmesi” bitleri de vardır.

Tampon ardışık liman SBUF kayıt defterinin iki parçasıdır: iletim arabelleği ve alma arabelleği. Veriler SBUF'a yazıldığında aktarım arabelleğine gönderilir ve SBUF baytının yazılması seri port üzerinden iletimi otomatik olarak başlatır. SBUF'tan veri okunduğunda veri alma arabelleğinden seçilir.

Kayıt zamanlayıcı. Kayıtlı bahisler (TH0, TL0) ve (TH1, TL1) onaylanır 16-

Zamanlayıcı/dağıtıcı 0 ve zamanlayıcı/dağıtıcı 1 için bit depolama kayıtları.

Kayıt yönetmek IP, IE, TMOD, TCON, SCON ve PCON özel fonksiyon kayıtları, sistemi gizlice kontrol etmek ve kesmek için kullanılabilir.

ziyaretler/hastaneler ve seri port. Koku uzaktan detaylı olarak incelenecek.

RxD TxD INT0 INT1 T0 T1 WR

P1.2 P1.3 P1.4 P1.5 P1.6 P1.7

RST BQ2 BQ 1 E.A.

P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7

P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7

P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7

MK çalışırken şunları sağlayacaktır:

    minimum komut teslim saati - 1 µs;

    minimum saat viconanne - 4 μs ile donanım çoğaltma ve alt zemin.

MK, dahili osilatörün frekansını ek bir kuvars, LC-fener veya harici osilatöre ayarlama yeteneğine sahiptir.

Genişletilmiş komut sistemi, bayt bayt ve bit bit adresleme, onda iki ve onda iki aritmetiği, aşırı eşleştirme ve eşleştirme/eşleştirmeyi kaldırma göstergesi ve mantıksal bir işlemci uygulama yeteneği sağlayacaktır.

MCS51 ailesi mimarisinin en önemli ve güçlü özelliği, ALU'nun 8 bitlik veri türleri üzerinde tutarlı işlemlerle tek bitlik verileri işleyebilmesidir. Yazılımın kullanabileceği bitlerin sayısı kurulabilir, kaldırılabilir veya ek bitlerle değiştirilebilir ve yeniden kurulabilir veya doğrulanabilir.

Şekil 3.2. Dış yapılar

mikrodenetleyici

mantıksal hesaplamalarda vikorystuvatsya. Bu aynı zamanda basit veri türleri için de bir destektir (eğer

Pek çok trende göre ilk bakışta biraz geriye bakabiliriz, bu da MCS51 ailesinin mikrokontrolörlerini özellikle kontrolörlerin kullanıldığı uygulamalar için uygun kılmaktadır. Geri kalan algoritmalar, standart mikroişlemciler kullanılarak uygulanması zor olan giriş ve çıkış Boolean değişkenlerinin varlığını varsayar. Tüm bu güce MCS51 ailesinin boolean işlemcisi adı veriliyor. Bununla birlikte, MCS51 ailesinin mikrodenetleyicilerinin böylesine ağır hizmet tipi bir ALU talimat seti, hem gerçek zamanlı işleme hem de veri yoğun algoritmalar için çok uygundur.

Mikrodenetleyicinin devre şeması Şekil 2'de gösterilmektedir. 3.2. Paketin temel versiyonunda 40 pinli DIP paketi bulunmaktadır. Sembollerin anlamlarına bir göz atalım.

vysnovki food'dan daha fazlası «0 İÇİNDE" і "5 İÇİNDE" , Ana yemeklerden sonra hangi şaraplar gelir? Strum'un bilgileri tabloda gösterilmektedir. 3.1.

Visnovok "RST" - Mikrodenetleyiciyi sıfırlayın. Bu uygulandığında aktif yüksek seviye başlar mod uyuyor indirim ve MK aşağıdakileri yapar:

PC komut temizleyicisini ve P0-P3 yükleme bağlantı noktaları, yığın göstergesi SP ve SBUF kaydı dahil olmak üzere özel fonksiyonların tüm kayıtlarını sıfıra ayarlar;

    Yığın göstergesi 07H'den daha yüksek bir değer alır;

    tüm kesintileri, zamanlayıcı-şifacıların çalışmalarını ve sonrakileri korur

    BANK 0 RAM'i seçer, veri almak ve tanımak için P0-RZ portunu hazırlar

ALE ve PME bileşenlerini harici senkronizasyon için giriş olarak paylaşır;

      PCON, IP ve IE özel fonksiyonlarının kayıtlarında, yedek bitler rastgele değerlere ayarlanır ve diğer tüm bitler sıfıra sıfırlanır;

      SBUF kaydı değişken değerlere sahiptir.

      P0-RZ "1" portları için kilitleme tutucularını kurar.

Sıfırlama sonrasında mikro denetleyicinin kayıt durumu Tablo 3.5'te gösterilmektedir.

Tablo 3.5.

Bilgi

Tanımlanamayan

k-MOS için 0ХХХ0000V n-MOS için 0XXXXXXXB

RST simgesinin alternatif bir işlevi vardır. Bu sayede, ana bellek çıkarıldığında mikrodenetleyici RAM'inin yerine kalıcı bellek tasarrufu sağlamak için bir yedek depolama sağlanır.

Visnovki BQ1, BQ2 MK'nin saat frekansını belirleyen bir kuvars rezonatörünü bağlamak için tasarlanmıştır.

Visnovok EA' (e harici A elbise harici adresler) - aktif bir düşük seviye uygulandığında, harici program belleğinden anahtar kodlarını okuma modunu etkinleştirme talimatları. Konseptin alternatif bir amacı (işlevi) vardır. ROM'un programlanması için yeni üniteye voltaj verilir.

Visnovok PME (P program M anı e uygun Dozvil hafıza programı) - program hafızasından okumanın keruvana döngüsünün amaçları ve cilt makinesi döngüsünde MK otomatik olarak etkinleştirilir.

Visnovok bira (A elbise L ength e uygun Dozvil genç adres) P0 bağlantı noktasındaki adresin genç kısmının görüntüsünü vurur. EPROM programlandığında cihaz vicorize edilir ve ona bir darbe programlama işlemi gönderilir.

MK dört grup bağlantı noktasını barındırabilir: P0, P1, P2 ve P3. 40 adet mikrodenetleyicinin kayıp pini bulunmaktadır. Bu portlar, kendi uzmanlıklarına ek olarak, bit-bit bilgi girişi ve çıkışı için de hizmet verebilir. Bağlantı noktasının işlevsel şeması Şekil 1'de gösterilmektedir. 3.3. Bağlantı noktası, alan etkili transistörler üzerindeki çıkış anahtarlarını, çıkışa bağlantıları, anahtarlama işlevlerini, D-tetikleyicide bir terminali ve kontrol mantığını içerir. MK'nin dahili veriyoluna bir veya sıfır yazılabilir. Bu bilgiye MK'nin çıkış tuşları ve ekranlarındaki fonksiyon değiştirme yoluyla erişilebilir. Aynı zamanda N ve N1 transistörleri kapalı, ancak N2 açıktır. Sıfır istasyonunda N eğriyi açar -

Xia ve N2 kapanır. Bağlantı noktasının uzmanlık nedeniyle alternatif bir işlev seçtiği anda yükleme modu devre dışı bırakılır. Mikrodenetleyici ayrıca harici bir sinyalle ayarlanarak bağlantı noktası ekleme modunu ve çıkış modunu da etkileyebilir. Bu amaçla MK assembler'da alt satırları etkinleştirecek özel komutlar vardır. Okumak için kablosuz bağlantı noktasının pinine göndereceğim.

ama daha önce kaydettim

İç mekanın görünümü

Yönetim Zasuvka

İşlevleri değiştir

Vcc

Hafta sonu

bir. “Read load” hattı aktif hale getirildiğinde çıkış, bu hattın bağlandığı ortadaki “I” olur.

yeni otobüs MK D Q

Çubuğa kayıt yapın C Q

Bir şeyler okumak

Limanın görünümü

Etkinleştirildiğinde MK'nin dahili veriyoluna uyan bir yükleme istasyonu vardır

"Chitannya vyvedennya" - limana harici vyvedennya kampı.

Liman P0 - Evrensel çift yönlü bağlantı noktası

tanıtım-izleme. SIM bağlantı noktasının arkasında

harici veri yolu adreslerini düzenleme işleviyle sabitlendi ve

Küçük 3.3. Mikrodenetleyici bağlantı noktasının fonksiyonel şeması

program hafızasını ve veri hafızasını genişletmek için veriler

mikrodenetleyici. Program harici belleğe indirildiğinde veya harici veri belleğini indirme komutu tamamlandığında, adresin daha genç olan kısmı (A0...A7) başlık portuna kurulur ve bu da üst düzey veri belleği tarafından tetiklenir. ALE çıkışı. Daha sonra belleğe veri yazarken MK'nin dahili veriyolundan yazılan bilgiler P0 pin portuna gider. Ancak okuma işlemlerinde ana bağlantı noktasından gelen bilgiler dahili veri yoluna gider. P0 portunun özel bir özelliği, terminale yaşam beslemesini sağlayan bir "yukarı çekme" transistörü N2'nin varlığıdır. Bir birimin pin portuna yazarken, değerler veri yolunun normal çalışması için gerekli olan yüksek empedans durumuna aktarılır. Gerekirse herhangi bir harici cihazın çıkışlarına güç verin ve ardından harici dirençleri Lanczug'dan çıkış bağlantı noktasına aktarın.

Liman P1 – alternatif işlevleri olmayan evrensel çift yönlü giriş/çıkış bağlantı noktası.

Liman P2 – harici belleğe aktarıldığında adresin (A8…A15) yüksek kısmını görüntülemek için alternatif bir işlev olan evrensel çift yönlü bağlantı noktası/giriş/çıkış.

Liman P3 – çeşitli alternatif işlevleri de aktaran evrensel çift yönlü giriş-çıkış bağlantı noktası. Alternatif fonksiyonlar yalnızca ana portun pinlerine yazılması durumunda uygulanır; diğer durumlarda alternatif fonksiyonların girişi engellenir. Bunları cilt bazında tanımlayalım:

P3.0 RxD (R e-e X dahili D ate, harici verileri oku) – yeni seri alıcının girişi.

P3.1 TxD (T evet e X dahili D ate, harici verileri ilet) – alınan seri alma-iletimin çıktısı.

P3.2 INT0` (Dahili Hata, kesinti) – harici kesinti girişi 0.

P3.3 INT1' - Harici kesinti girişi 1.

P3.4 С/T0 - Sıfır tetiklemeli zamanlayıcının/dağıtıcının girişi.

P3.5 C/T1 - İlk etkinleştirilen zamanlayıcının/klinisyenin girişi.

P3.6 WR' (K rite, write) – veri belleğindeki yazma döngüsünün kontrolünü görüntüler.

P3.7 RD' (R ead, read) – veri hafızasından okuma döngüsünden çıkarılır.

P1, P2 ve P3 portuna bağlantılar sıkı ve çıkış yaklaşık 0,2 mA ve çıkış 3 mA, P0 portu sıkılmış ve çıkış 0,8 mA'ya yakın ve çıkış 5 mA. Mikrodenetleyici bileşenlerinin atanmasına ilişkin kısa bilgi Tablo 3.6'da verilmektedir.

Tablo 3.6.

Randevu

Visnovka'ya atandı

8 bitlik çift yönlü bağlantı noktası P1. Dahili ROM'un (RPM) kontrol edildiği saatte A0-A7 adreslerini girin

Giriş giriş

Zagalny'nin atılmasının sinyali. OZP'nin yedek ömrünün dış gövdeden tanıtılması (1816 için)

Ek işlevlere sahip 8 bit çift yönlü P3 bağlantı noktası

Giriş giriş

En son alım verileri - RхD

En son iletim verileri - ТхD

Harici kesinti girişi 0-INT0`

Harici kesinti girişi 1-INT1`

Zamanlayıcı/dağıtıcı girişi 0: - T0

Zamanlayıcı/dağıtıcı girişi 1: - T1

Verilerin harici belleğe kaydedildiği saatte flaş sinyalinin çıkışı: - WR`

Harici veri belleğinden okuma saatinde flaş sinyali çıkışı – RD`

Kuvars rezonatörünü bağlamak için bağlantılar.

çıkış girişi

Zagalny visnovok

8 bit çift yönlü bağlantı noktası P2. A8-A15 adreslerinin robot modunda harici bellekten çıkışı. Dahili ROM'u kontrol etme modunda, P2.0 - P2.6 yükseltmeleri A8-A14 giriş adresleri olarak seçilir. Visnovok R2.7 - ROM'u okumaya izin verildi.

Giriş giriş

İzin verilen program belleği

Adresi düzeltme izni için çıkış sinyali. RPMM sinyalinin programlandığı saatte: PROG

Giriş giriş

Robotun dahili bellekten engellenmesi. RPZP programlanırken UРR sinyali verilir

Giriş giriş

8 bitlik çift yönlü bağlantı noktası P0. Harici bellekten adres/veri yolu. Dahili PPP'yi (IPPP) kontrol etme modunda veri çıkışı D7-D0.

Giriş giriş

Canlı video voltajı +5V

DERS PLANI

1. Giriş

2. Aritmetik ve mantıksal talimatlar

3. Veri aktarım komutları

4. Boole işlemleri

5. Geçiş talimatları

1. Giriş

Komuta sistemi MCS-51 tek bir talimat setini destekler; bu, cihazları kontrol etmek için 8 bitlik algoritmaların kurulumuna kadar anlamına gelir. Dahili RAM'in adreslenmesi, küçük veri yapılarında bit işlemlerinin gerçekleştirilmesi için esnek yöntemler kullanmak mümkündür. Mantıksal ve temel Boolean cebir komutlarında bit kenarlarının seçilmesine olanak tanıyan, tek bitlik değiştirilebilir verileri ayrı bir veri türü olarak adresleme sistemi etkinleştirildi.

Adresleme modları : arama komutları MCS-51 bu tür adresleme modlarını destekler. Doğrudan adresleme: işlenen, talimattaki 8 bitlik adresle gösterilir Doğrudan adresleme, dahili veri belleğinin ve kayıtların genç yarısıyla sınırlıdır SFR. Dolaylı adresleme: Komut, işlenenin adresiyle eşleşecek şekilde bir kaydı adresler.Bu tür adresleme, harici ve dahili OCP için kullanılır. Kayıtlar 8 bitlik adresleri eklemek için kullanılabilir R0і R1 seçilen kayıt defteri bankası veya yığın göstergesi SP. 16 bit adresleme için veri göstergesi kaydı kaldırılır DPTR.

Kayıt talimatları : kayıt olmak R0-R7 Geçerli kayıt bankası, talimatın kendisindeki kayıt numarasına işaret eden 3 bitlik bir alan eklenerek özel talimatlar aracılığıyla adreslenebilir. Bu alan türünün komutta bir adresi yoktur. Özel özel kayıtlarla işlemler: Eylem talimatları vikorist bireysel kayıtları (örneğin, pille yapılan işlemler, DPTR, vesaire.). Komutta işlenenin adresi belirtildiğinde. VIN, işlem koduyla gösterilir.

Orta sabitler olmadan : Sabit, işlem kodundan sonra doğrudan komutun yanına yerleştirilebilir.

Dizin adresleme : Dizin adresleme yalnızca program belleğine erişim için veya okuma modunda kullanılabilir. Program hafızasındaki tabloyu hangi modda görüntüleyebilirsiniz. 16 bitlik kayıt ( DPTR veya bir yazılım şifacı) gerekli tablonun temel adresini işaret eder ve akümülatör de ondan önceki giriş noktasını işaret eder.

Arama komutlarıSistemin 33 işlevini belirtmek için 42 anımsatıcı komut vardır. Çoğu montaj dili komutunun sözdizimi, anımsatıcı bir işlev atamasından ve ardından adresleme yöntemlerini ve veri türlerini belirten işlenenlerden oluşur. Çeşitli veri türleri ve adresleme modları, anımsatıcı değerlerdeki değişikliklerle değil, işlenenlerin eklenmesiyle gösterilir.

Komuta sistemi zihinsel olarak beş gruba ayrılabilir: aritmetik komutlar; mantıksal komutlar; komutları aktarma; bit işlemci komutları; sökme ve kontrolün devredilmesi komutları. Komuta sisteminde kullanılan semboller aşağıda belirtilmiştir.

Masa. Komuta sisteminde kullanılan sembollerin anlamları

Randevu, sembol

Atama

Pil

Akış tabanlı bir kayıt bankasının kaydı

Ekip tarafından belirtilen atanan kayıt numarası

doğrudan

8 bitlik dahili veri adresi doğrudan adreslenir; bu, dahili veri RAM'inin (0-127) veya özel işlev kaydı SFR'nin (128-255) ortası olabilir.

Dolaylı olarak dahili veri RAM'inin 8 bitlik orta kısmına adresleme

8 bit ortası olmayan Operasyon koduna neler dahildir (OPC)

veriH

Orta 16 bitlik verilerin yüksek bitleri (15–8)

veriL

Genç ortadaki 16 bitlik veriyi (7-0) geçiyor

11 bitlik hedef adresler

adresL

Gençlerin tanınma adresleri

İşaretli 8 bitlik yer değiştirme baytı

Doğrudan adreslemeden gelen bit, adresi dahili veri RAM'inde veya SFR özel fonksiyonlarının kaydında bulunan COP'yi yerleştirir.

a15, a14...a0

Bit adresleri ve atamaları

X öğesi yerine

X öğesinde saklanan adres yerine

X elemanının boşaltılması


+

*
VE
VEYA
XOR
/X

Operasyonlar:
ek olarak
vidnіmannya
çarpma işlemi
altında
mantıksal çarpma (işlem I)
mantıksal katlama (ABO işlemi)
Modül 2'den sonra eklendi (ABO'yu içerir)
X elemanının ters çevrilmesi

Anımsatıcı işlev atamaları, adresleme yöntemleri ve veri türlerinin belirli kombinasyonlarıyla benzersiz bir şekilde ilişkilendirilir. Komut sistemi bu tür 111 girişe sahip olabilir.

2. Aritmetik ve mantıksal talimatlar

Yak p örnek aritmetik talimatlar, Eklenen işlem aşağıdaki komutlardan biri olabilir.

EKLEMEKA,7 F 16 - Bunun yerine A'yı kaydetmek için 7 sayısını ekleyin F 16 sonucu A kaydıyla kaydedin;

EKLEMEKA,@ R0 – adresi olan numarayı A kaydına ekleyin (@ – reklam en ) kayıt defterine kaydedilir R 0 (dolaylı adresleme) ve sonucu A kaydına kaydedin;

A,R7 EKLE– kayıt yerine A kaydı yerine ekleyin R 7 ve sonucu A kaydına kaydedin;

A EKLE, #127- A numarasını kaydetmeye ekleyin, tasarruf adresi 127 ( # – sayı sembolü) ve sonucu kayıt defterine kaydedin T-Re A.

Tüm aritmetik talimatlar, talimat başına bir makine döngüsünde tamamlanır INC DPTR(Veri göstergesinin yer değiştirmesi DPTR iki makine döngüsü gerektiren bir sonraki bayta) ve 4 makine döngüsü süren bir çarpma işlemine sahiptir. Dahili veri belleğindeki herhangi bir bayt, pile ihtiyaç duymadan artırılabilir veya azaltılabilir.

Talimatlar MUL AB Pildeki B kaydındaki verilerde veri çoğalması vardır ve veriler A kaydına (genç yarısı) ve B'ye (eski yarısı) yerleştirilir.

Talimatlar DIV AB akümülatör yerine B kaydının değerlerine bölün (bölme - alt bölüm), fazlalığı B'de ve özellikle akümülatörde bırakın.

Talimatlar DA bir iki-on aritmetik işlemler (iki-on koduyla verilen sayılar üzerinde aritmetik işlemler) için tasarlanmıştır. İki sayısını değiştirmekten korkmayın dviykovo-desyatkovo, Ayrıca onda ikilik iki sayıyı toplarken de doğru sonucu sağlayacaktır.

popo mantıksal komut: Mantıksal işlem aşağıdaki komutlardan biri olarak kullanılabilir:

ANLA,7 F 16 - A kaydı yerine 7 sayısını çarpmak mantıklıdır F 16 ve sonuç A kaydına kaydedilir;

ANLA,@ R1 - A kaydı yerine adresleri kayıt defterinde saklanan sayıyla çarpmak mantıklıdır R 1 (dolaylı adresleme) ve sonucu A kaydına kaydedin;

ANLA,R6- A kaydı yerine kayıt yerine çarpmak mantıklıdır R 6, sonucu A kaydına kaydedin;

ANL A,#53 – A kaydı yerine 53 16 olan mağazanın adresi ile mantıksal çarpım yapılır ve sonuç A kaydına kaydedilir.

Pil alanındaki tüm mantıksal işlemler bir makine döngüsü, diğerleri ise iki makine döngüsü alır. Mantıksal işlemler, dahili veri belleğinin 128 baytlık alt kısmından herhangi birinde veya herhangi bir kayıtta gerçekleştirilebilir. SFR (özel fonksiyon kayıtları) pil değişimi olmadan doğrudan adresleme modunda.

Döngüsel depolama işlemleri RL A, RLC A daha sonra pil yerine bir bit sağa veya sola taşınır. Sol döngüsel bağlantı durumunda, genç olan bit eski konuma hareket eder. Sağ siklik sinüs vakalarında bir tersine dönüş meydana gelir.

Operasyon A'yı Değiştir Gençlerle yaşlılar arasındaki akım alışverişi bataryadadır.

3. Veri aktarım komutları

Takım MOV hedefi, kaynak Dahili belleğin ortası ile özel fonksiyonların kayıt alanı arasında veri aktarımı yapmanızı sağlar SFR vikoristan pili olmadan. Bu durumda, dahili OZP'nin üst yarısına sahip robot yalnızca dolaylı adresleme modunda çalışabilir ve kayıtlara genişletilebilir SFR– artık doğrudan adresleme modunda kullanılamaz.

Tüm mikro devreler için MCS-51 Yığın, yerleşik veri belleğinin hemen yanında bulunur ve uzar. Talimatlar İTMEK Başlangıçta yığın gösterge kaydındaki değerler daha büyüktür SP ve ardından veri baytlarını yığına yazar. Takım İTMEKі POP yalnızca doğrudan adresleme modunda (bayt yazma veya güncelleme), ancak yığın, yazmaç aracılığıyla dolaylı adreslemede her zaman kullanılabilir SP. Bu şekilde yığın, veri belleğinin üst 128 baytını kullanabilir. Bu işaretler, yazmaçları adreslemek için dize komutlarını kullanma yeteneğini içerir SFR.

Veri aktarım talimatları 16 bitlik aktarım işlemini içerir MOV DPTR,#veri16 Veri göstergesi kaydını başlatmak için kullanılan DPTR Bir saat içinde program hafızasındaki tabloya bakacağım veya harici veri hafızasına erişeceğim.

Operasyon XCH A, bayt Pil ile adreslenen bayt arasında veri alışverişi yapmak üzere ayarlanmıştır. Takım XCHD A, @Riöndekine benzer, ancak işlenen alışverişinde yalnızca gençlere yönelik olanlar yer alır.

Harici veri belleğine erişmek için dolaylı adresleme kullanılır. Her tek baytlık adresin bir vikorist kaydı vardır R0 ya da başka R1 akış yazmacı bankası ve 16 bitlik veri görüntüleme kaydı için DPTR. Pil, harici veri belleğine herhangi bir şekilde erişimde bilgi alma rolünü oynar.

Program belleğinde bulunan tablolara erişmek için aşağıdaki komutları kullanın:

MOVCA,@A+ DPTR ;

MOVCA,@A+ bilgisayar .

Vikor tablosunun temel adresi veri göstergesi kaydına nasıl atanır? DPTR ya da başka bilgisayar(program şifacı) ve yer değiştirme şuradan alınır: A. Bu komutlar yalnızca program belleğinden veri okumak için kullanılır, ona yazmak için kullanılmaz.

4. Boole işlemleri

Mikro devreler MCS-51 deponuza bir “Boolean” işlemci kurun. Dahili RAM'de 128 doğrudan adreslenebilir bit bulunur. Özel fonksiyon kayıtlarının kapsamı SFR 128 bit'e kadar alanları destekleyebilir. Biyolojik talimatlar arasında akıllı geçişler, iletme, atma, ters çevirmeler, "I" ve "ABO" işlemleri yer alır. Tüm bu bitler doğrudan adresleme modunda mevcuttur.

Bit aktarıldı CFözel işlevler kaydında “kelime bir program haline gelecektir P.S.W.» bir boolean işlemcinin bir bitlik toplayıcısı olarak tanımlanır.

5. Geçiş talimatları

Geçiş işlemlerinin adresleri, çevirici tarafından ayrı ayrı ve program hafıza alanındaki referans değerleri ile belirlenir. Akıllı geçişlerin adresleri, yazılım işlemcisine aktarılan bir referans yer değiştirmesinde (bir işaret baytı) birleştirilir. bilgisayar Vikonannya zamanında zihinler geçiş dönemindeydi. Bu tür geçişler arasındaki sınırlar, talimatı takip eden ilk bayttan hemen önce, eksi 128 ile 127 arasındadır. Özel fonksiyonların kaydında “kelime bir program haline gelecektir” P.S.W.» gün sıfırın işaretidir, bunun için talimatlar JZі JNZ Pildeki verileri test ederken aklın "tam olarak sıfır" olduğunu doğrulayın.

Çılgın bir geçiş için üç tür komut vardır: SJMP, LJMPі AJMP- Adresin formatı ve amacı bakımından farklılık gösterirler. Talimatlar SJMP adresi açıkça unutulmuş olarak kodlar ve iki bayt yer kaplar. Geçiş mesafesi talimat başına eksi 128 ila 127 bayt aralığıyla sınırlıdır SJMP.

Talimatlarda LJMP Vikorist, hedef adresi 16 bitlik bir sabit olarak tanımlar. Toplam komutun toplamı üç bayttır. Atama adresleri herhangi bir program hafıza konumuna atanabilir.

Takım AJMP Vikorist'in 11 bitlik adres sabiti. Komut iki bayttan oluşur. Bu talimat kaldırıldığında, şifacının daha genç olan 11 bitlik adresi, komutun 11 bitlik adresiyle değiştirilir. Yazılım şifacısının beş kıdemli parçası bilgisayar değiştirilemez hale gelecektir. Böylece geçiş, komutu takip eden talimatın eklendiği 2K baytlık bir bloğun ortasında gerçekleşebilir. AJMP.

İki tür alt program komutu vardır: LCALLі BİR ARAMA. Talimatlar LCALLÇağrılan alt programın vikorist 16 bit adresi. Her durumda, alt program herhangi bir program hafıza konumundan kaldırılabilir. Talimatlar BİR ARAMA Vikorist'in 11 bitlik alt program adresi. Bu durumda çağrılan altprogram, aşağıdaki talimatlarla birlikte 2K baytlık tek bir blokta paketlenmelidir. BİR ARAMA. Hücum komut seçenekleri saldıran komutun adresine yığına konur ve yazılım şifacı tarafından büyülenir bilgisayar yeni bir anlam.

Alt program bir talimatla sona erer RET, bir komutu takip etmek için talimatlara dönmenizi sağlar ARAMA. Bu talimat, yığından döndürülen adresi açar ve onu program temizleyicisine ekler. bilgisayar . Talimatlar RETİ Vikoristovatsya, işlemi kesintiye uğratmak için alt programlardan geri dönecek. Birlik RETİ görüş RET buna inanıyor RETİİşlemin tamamlandığını sisteme bildirir. Viconny zamanında Yakshcho RETİ Başka kesinti yok, o zaman aynı RET.

Talimatlar DJNZ Keruvannya döngüleri için tasarlanmıştır. Vikonanny döngüsü için N Doktora bayt ve değer eklemeniz gerektiğinde N daha sonra döngünün gövdesini şu komutla kapatın DJNZ, bu döngünün başlangıcını gösterir.

Takım CJNE iki işlenenini işaretsiz hedefler olarak eşitler ve hizalanan işlenenler eşit olmadığından içinde belirtilen adrese atlar. İlk işlenen diğerinden küçükse bit aktarılır CF “1”e kurulur.

Birleştirilmiş formdaki tüm komutlar 1, 2 veya 3 bayt kaplar.

UDC 681.5, 681.325.5 (075.8)

BBK 32.973.202-018.2 ve 73

Shcherbina O.N.Bilgisayar makineleri, sistemleri ve önlemleri. Kontrol sistemlerinde mikrodenetleyiciler ve mikroişlemciler: Cheb. Pos_bnik/O.M. Shcherbina, P.A. Nechaev-SPb.: Politeknik Enstitüsü. Üniv., 2012.-226 s.

Bu, teknik sistemler, enerji mühendisliği ve elektrik mühendisliği alanında yönetim alanındaki ulusal eğitim ve uzmanlık standardının ve "Bilgisayarlı tesviye makineleri, sistemleri ve önlemleri" disiplininin eğitim başlangıç ​​programının değiştirilmesini göstermektedir.

Mikroişlemci sistemlerinin mantıksal organizasyonunun temel beslenmesi, Intel'in MCS-51 mikrodenetleyici ailesinin temel mimarisi kullanılarak inceleniyor. Assembler ve CI dillerini kullanarak mikrodenetleyicileri programlama teknolojisi anlatılmaktadır.

Öğrenciler ve ileri teknik bilgi geliştiricileri, süreç otomasyonu ve üretim uzmanları ve ayrıca mikroişlemci sistemlerinin tasarım mühendisleri için yararlı olabilir.

Aynı zamanda doğrudan lisans, mühendislik ve yüksek lisans eğitimi için "Kontrol sistemlerinde mikro denetleyiciler ve mikro işlemciler" ve "Elektronik otomasyon cihazları" disiplinlerinin ulusal standardının yerini alır. 14 0400 "Elektrik enerjisi mühendisliği ve elektrik mühendisliği."

Editoryal ve editoryal kararlar üzerinde mutabakata varmak

St. Petersburg Devlet Politeknik Üniversitesi.

© Shcherbina A.N., Nechaev P.A., 2012

© St. Petersburg Eyaleti

Politeknik Üniversitesi, 2012

ISBN 978-5-7422-3553-8


Giriş.. 7

Bölüm 1. MCS51 ailesinin mimarisi. 10

1.1 Gaz özellikleri 10

1.2 Blok şeması 11



1.3 Mikrodenetleyici bileşenlerinin amacı 8051 15

1.4 Hafıza organizasyonu 17

1.4.1 Program belleği (PPM) 18

1.4.2 Veri belleği (DMS) 19

1.4.3 Özel fonksiyonların kayıtları. 20

1.4.4 Varantların kaydı (PSW) 23

1.5 Kurulum ve senkronizasyon 26

1.6 Giriş-çıkış portlarının organizasyonu 27

1.6.1 Kamera arkası raporları. 27

1.6.2 Alternatif işlevler. 27

1.7. 8051 ailesinin zamanlayıcıları / mikrokontrolörleri.28

1.7.1. Tedavi zamanlayıcılarının yapısı. 28

1.7.2 Tedavi zamanlayıcılarının çalışma modları. otuz

1.8. Seri bağlantı noktası 32

1.8.1. Seri portun yapısı. 32

1.8.2. Servis/fiyat durumu kaydı SCON.. 34

1.8.3. PCON.. kayıt 36

1.9. Sistem 37

1.9.1. Sistemin yapısını değiştirin. 37

1.9.2 Vikonannya alt programları perervaniya. 40

Bölüm 2. 80C51GB mikrodenetleyicinin özellikleri.

2.1 İşlevsel özellikler 42

2.2 G/Ç bağlantı noktaları P0-P5 43

2.2.1 G/Ç bağlantı noktalarının işleyişi. 43

2.2.2 Bağlantı noktasında kayıt.

2.3 8XC51GB kesme sisteminin özellikleri.

Kesintiye izin verilir/çitlenir. 50

Öncelik yönetimini kesintiye uğratın. 51

Dış kesintiler. 54

2.3. Vuzol ADC 56

2.4. Donanım gözlemcisi 61

2.5. Saat üreteci 63'ün ortaya çıkan arızası

2.6. Programlanmış doktorların matrisi RSA 64

2.6.1. PCA yapısı..64

2.6.2. Tıp doktoru kaydı RSA (CMOD) 66

2.6.3. PCA'nın tıbbi yönetiminin kaydı (CON) 67

2.6.4. Hizalama/sabitleme modülleri. 68

2.7. Seri port 76'nın genişletilmesi

2.8. Zamanlayıcılar/dağıtıcılar 79

8XC51GB grubunun mikrodenetleyicilerinin yerleştirilmesi.

Bölüm 3. MK 8051GB'nin Programlanması.

3.1. Yazılım modeli 89

3.2 Veri türleri 93

3.3 Verileri adresleme yöntemleri 93

3.4 Komuta sistemi 95

3.4.1. Zagalny karakteristiği. 95

3.4.2 Komut türleri. 96

3.4.3 İşlenen türleri. 97

3.4.4 Mikrodenetleyici verilerini geçersiz kılma komutları. 98

3.4.5 Aritmetik işlem talimatları 8051.101

3.4.6 Mikro denetleyici 8051'in mantıksal işlemlerinin komutları. 104

3.4.7 8051 mikrodenetleyicinin bitleri üzerindeki işlemlere yönelik komutlar.106

3.5 Programın ayarlanması 111

Bölüm 4. ASM-51'in dil programlaması. 112

4.2 Metin programının kaydedilmesi 113

4.3. Dil alfabesi. 114

4.4 Tanımlayıcılar. 115

4.5 Sayılar 117

4.6 Direktif 118

4.7 ASM51 alt programının uygulanması 122

4.7.1 ASM51'in alt program prosedürünün yapısı. 122

4.7.2 Değiştirilebilir parametrelerin alt programa aktarılması. 123

4.7.3 ASM51'imin alt program fonksiyonunun uygulanması. 123

4.7.4 ASM51'imi kullanarak işleme rutinlerinin uygulanması. 124

4.8 Yapısal olarak programlanmış birleştirici. 125

4.9 Zengin modüler programların yayınlanmasının özellikleri. 126

4.10 Segment seçimi 128

4.10.1 MK belleğinin segmentlere bölünmesi. 128

4.10.2. Mutlak bellek bölümleri. 129

4.10.2 Taşınan bellek bölümleri. 131

Bölüm 5. Dil programlama S-51. 134

5.1 134. filmin Zagalnaya özellikleri

5.3 Program yapısı S-51 136

5.3. Elementi film programlama S-51 138

5.3.1. Semboller.. 138

5.3.2. Sözcük birimleri, ayırıcılar ve açıklıklar. 141

5.3.3 Tanımlayıcı 142

5.3.4 Anahtar kelimeler. 143

5.3.5 Sabit.. 143

5.4. Film operatörlerinde Virazi 146

programlama C-51 146

5.5. Askeri operasyonların öncelikleri 148

5.6. Operatörlerin film programlaması C-51 149

5.6.1. Operatörler şaşkın. 150

5.6.2 Operatörler, neyi imzalayacaklar. 150

5.6.3 Atama operatörü. 151

5.6.4 Zihinsel operatör. 151

5.6.5 Yapısal operatör (). 152

5.6.6 Döngü operatörü. 152

5.6.7 While döngüsünün başa baş ters çevrildiği bir döngünün operatörü. 153

5.6.8 Döngünün operatörü, vücuttan sonra aklın do while döngüsüne çevrilmesidir. 154

5.6.9. Operatör molası. 155

5.6.10 Devam operatörü. 155

5.6.11 Anahtar seçim operatörü. 155

5.6.12 Operatöre git. 157

5.6.13 Virazu operatörü. 158

5.6.14 Alt programlardan dönüş operatörü dönüşü. 158

5.6.15 Boş operatör. 158

5.7. C-51'in programlanmasında yaptığım değişiklikler beni hayrete düşürdü. 159

5.7.1. Değişim karşısında şaşkına döndü. 159

5.7.3 Veri türlerinin amaçları. 161

5.7.4 Kayan öbek içeren sayılar. 162

5.7.5 Güvenli oynamak için kötü tipler. 162

5.7.6. C-51 programında sersemlemiş masifler. 164

5.7.7. Yapılar.. 165

5.7.8. Ob'ednannya (sumişi) 166

5.8. Vikoristannya movі C-51 167'de sergileniyor

5.8.1. Şaşkın görüntüleyiciler. 167

5.8.2. Türlenmemiş göstergeler. 168

5.8.3. Eski ekranların hafızası. 169

5.9. Çarpıcı yeni değişim türleri 169

5.10. Verilerin başlatılması 170

5.11. Vikoristannya alt programı ve S-51 programlamasını hareket ettirin. 170

5.11.1. Önemli alt program.. 171

5.11.2. Firmware parametreleri 173

5.11.3. İleri alt programlama 174

5.11.4 Viklik alt programı.. 176

5.11.5 Yinelemeli çağrı alt programı. 176

5.11.6 Alt programları kesintiye uğratın. 177

5.11.7 Değişim alanları ve alt programlar. 178

5.12. Zengin modül programları 179

Bölüm 6. Keil μVision2'nin entegre çekirdeği için programların hazırlanması. 182

6.1 ASM-51 projemin oluşturulması 182

6.2 Keil μVision2 188'in entegre çekirdeğindeki ilk kontrolör için C projem tarafından oluşturulan uygulama

Bölüm 7. İlk denetleyicinin açıklaması. 199

7.1. Denetleyici yapısı 199

7.2. Adres alanı 200

7.2.1. Hafızayı böldüm. 200

7.2.2 Harici bellek. 201

7.2.3. Verilerin dahili hafızası. 202

7.3. Takma ve çıkarma için bağlantı noktası listesi 202

7.4. Sıralı bağlantı noktası………………………………...203

7.5. Robot z RKI 205

7.6. Kontrol panelleri……………………………………………………………213

EK P2 LABORATUVAR ROBOTU HAKKINDA RAPORUN YAPISI……..217

Ek P3 Kodi makine komutları. 217

Referanslar... 224


Girmek

Teknolojik süreçlerin ve üretimin otomasyonu ile ilgili uzmanlık alanlarında mikrokontrolörlerin geliştirilmesi önemli bölümlerden biridir.

Dünya sürekli bir gelişme yaşıyor ve yeni ve yeni 16- ve 32-bit mikrokontrolörler ve mikroişlemcilerin ortaya çıkışı yaşanıyor, ancak hafif mikroişlemci pazarının en büyük kısmı hala 8-bit cihazlardan mahrum kalıyor. Analitik şirketlerin tüm tahminlerine göre, 8 bitlik mikrodenetleyicilerin aydınlatma pazarındaki lider konumu yakın gelecekte de devam edecek.

Şu anda, tüm 8 bitlik mikrodenetleyiciler arasında MCS-51 ailesi, çeşit sayısı ve modifikasyonlarını üreten şirket sayısında tartışmasız liderdir. Adını ailesinin ilk temsilcisi olan 8051 mikrodenetleyiciden almıştır.Çevresel aygıt setinin yanı sıra, harici veya dahili program belleği arasında seçim yapabilme olanağı da keyiflidir.Bu mikrodenetleyicinin pazardaki başarısını garantileyelim.

MCS-51 ailesinin avantajları:

· fiili bir standart olan mimari;

· Ailenin aşırı genişliği ve olasılıkların çeşitliliği;

· İşlemcilerin son derece üretken ve gelişmiş versiyonlarının mevcudiyeti;

· Yaygın olarak bulunabilen yazılım ve donanım seçeneklerinin sayısı oldukça fazladır;

· Dahili devre programlamayı da içeren donanım programlama kolaylığı;

· Temel çiplerin ucuzluğu ve bulunabilirliği;

· Özel beyinler için özel kontrolör versiyonlarının mevcudiyeti

· Azaltılmış düzeyde elektromanyetik geçici olaylara sahip kontrolör versiyonlarının mevcudiyeti;

· Hem dünyada hem de LIC ülkelerinde daha yaşlı nesil çocuklar arasında geniş popülerlik;

· Mimariyi ışığın öncü ilkeleriyle desteklemek.

Ve biliyorsunuz, asıl avantaj: ailenin temel çipine hakim olduktan sonra, Cygnal, Dallas Semiconductor, Analog Devices, Texas Instruments'ın mikro denetleyicileri gibi bilgi işlem canavarlarıyla çalışmaya başlamak kolaydır.

MCS-51 ailesinin stoğu, en basit mikrodenetleyicilerden birkaç katlanabilir olana kadar çok çeşitli mikro devreler içerir. Bugün, yaklaşık 20 şirket tarafından üretilen 8051 ailesinin 200'den fazla mikrodenetleyici modifikasyonu bulunmaktadır. Bu ailenin temsilcilerinin yeni çeşitleri yakında ortaya çıkıyor.

Gelişimin ana yönleri şunlardır:

· Arttırılmış hız kodu (artırılmış saat frekansı ve yeniden tasarlanmış mimari);

· Azaltılmış voltaj ve enerji tüketimi;

· Dahili devre programlama imkanı ile çip üzerinde RAM ve FLASH belleğin artan kullanımı;

· Tahrik sistemleri, CAN ve USB arayüzleri vb. katlama cihazları için mikro denetleyici çevre birimleri deposuna giriş.

MCS-51 ailesinin mikrodenetleyicileri, çeşitli cihazların kontrolünü yapılandırmanıza ve analog devrelerin çeşitli bileşenlerini uygulamanıza olanak tanır. Bu ailenin tüm mikro devreleri aynı komut sistemiyle çalışır. Çoğu, kaçınılan bir tabana sahip yeni kasalara kurulur (kasa için tabanın numaralandırılması). Bu, cihazın ve programların devre şemalarını yeniden düzenlemeden, farklı şirketlerin - üreticilerin mikro devrelerini kullanmanıza olanak tanır.

Dünyadaki 51. ailenin türlerinin ana üreticileri Philips, Siemens, Intel, Atmel, Dallas, Temic, Oki, AMD, MHS, Gold Star, Winbond, Silicon Systems ve diğerleridir.

MCS-51 ailesinin (Intel 8XC51FA, 8XC51GB, 80C152) mikrodenetleyicilerinin analoglarının genişletilmiş yeteneklere sahip özellikleri tabloda gösterilmektedir. 1'DE.

Tablo B.1

Veri deposu ROM RSA ADC WDT T/C Slayt Kanallar Özellikler
Atmel: AT89C2051
- - - - UART Flaş 2 KB
AT89C4051 - - - - UART Flaş 4 KB
AT89S4D12 128K - - - UART, SPI Flaş 4 KB
DALLAS Yarı İletken: DS5000FP
- - - + UART Önyükleme yükleyicisi
DS5001FP - - - + UART Önyükleme yükleyicisi
DS8xC520 16K - - + 2xUART 2DPTR
SIEMENS: C505C
16K - + + UART, CAN 8DPTR
C515C 64K - + + UART+SSC+CAN 4 PWM, 8 DPTR
Philips: *89C51RA+
- + - + UART 2 DPTR, 4 seviye. devir, zaman aşımı, Flash 8K
P51XAG1x 8K - - + 2 UART
Intel: 8xC51RA
8K - + + UART 4 seviyeli IRQ, saat çıkışı
8XC196KC 64K 16K - + - UART 3PWM
80C196KB 64K 8K - + - UART PWM

Bölüm 1. MCS51 ailesinin mimarisi

MCS-51 ailesinin 8 bitlik tek çipli mikrodenetleyicileri, mimarinin tasarımına bağlı olarak mikroişlemci kontrol sistemi geliştiricileri arasında büyük popülerlik kazanmıştır. Mikrodenetleyici mimarisi, dahili ve harici yazılımla erişilebilen donanım kaynakları ve komut sistemlerinin bir koleksiyonudur. MCS-51 ailesinin mimarisi, önemli ölçüde kompakt ve düşük maliyetli dijital cihazlar yaratma hedeflerinden kaynaklanmaktadır. Tüm mikro-EOM fonksiyonlarını tek bir mikro devrede birleştiren mikro denetleyicilere tek çipli EOM (SOC) adı verildi.

Intel, Intel 8051 mikrodenetleyicisinin işletim çekirdeğini temel alan 50'ye yakın model piyasaya sürdü.Aynı zamanda Atmel, Philips gibi diğer birçok şirket de MCS-51 standardına bölünmüş kendi mikrodenetleyicilerini üretmeye başladı.

yeraltı özellikleri

Ailenin temel özellikleri:

· Bilgisayar cihazlarını kontrol etmeye yönelik 8 bitlik merkezi işlemci (CPU);

· CPU, 8 bitlik bir donanım çoğaltma devresi ile donatılmıştır;

· Komut setinin doğrudan adreslenen bitlerle çalışmaya yönelik çok sayıda işlem içermesi, bit verileriyle çalışmaya yönelik bir işlemciden (Boolean işlemci) bahsetmeyi mümkün kılıyor;

· Her gün bazı versiyonlarda, 4 ila 32 KB hacimli farklı kristaller için olabilen, maskelenmiş veya yeniden programlanmış tipte dahili (kristal üzerinde döndürülmüş) program belleği;

· Organizasyon, kayıt bankaları, yığın ve veri depolama için kullanılan en az 128 bayt yerleşik veri RAM'i;

· Bilgi girişi veya çıkışı için ayrı ayrı yapılandırılabilen en az 32 çift yönlü arayüz hattı (port);

· harici süreçleri sürdürmek, zaman saatlerini düzenlemek ve iletişim portunu saatlemek için kullanılan iki adet 16 bitlik çok modlu şifacı/zamanlayıcı;

· Mikrodenetleyici ile harici cihazlar arasındaki iletişim kanallarını çok çeşitli bilgi aktarım hızlarına sahip olarak düzenlemek için kullanılan çift yönlü çift yönlü asenkron alıcı (UART). Є mikro denetleyicilerin ilgili sistemdeki donanım ve yazılım entegrasyonuna yönelik özellikler;

· 4 dahili ve 2 harici su jetinden en az 5 sulama vektörünü destekleyen ev içi öncelikli sulama sistemi;

· Dahili saat üreteci.

Blok şeması

Kontrolörün blok şeması Şekil 1.1'de gösterilmektedir ve aşağıdaki ana işlevsel birimlerden oluşur: bir kontrol ünitesi, bir aritmetik-mantıksal birim, bir zamanlayıcı/dağıtıcı bloğu, bir seri arayüz ve kesinti bloğu, bir program kontrolörü, Veri belleği ve program belleği. İki yönlü iletişim, dahili 8 bitlik veri yolu aracılığıyla gerçekleşir. MCS-51 ailesinin neredeyse tüm temsilcileri bu plan kapsamında oluşturuldu. Bu ailenin çeşitli mikro devreleri özel amaçlı kayıtlara (kayıtlar ve port sayısı) bölünmüştür.

Zamanlama ve Kontrol bloğu- OEM birimlerinin izin verilen tüm çalışma modlarında entegre çalışmasının koordinasyonunu sağlamak için titreşimli senkronizasyon ve kontrol sinyallerinin amaçları. Depo kontrol ünitesi şunları içerir:

saat aralıklarının gelecekteki oluşumu;

giriş-çıkış mantığı;

komut kaydı;

elektrik tedarik yönetimi kaydı;

komut kod çözücü, EOM kontrol mantığı.

Küçük 1.1. I8051 denetleyicisinin blok şeması.

Saat aralıkları oluşturmaya yönelik cihaz Dahili faz saat sinyallerini, saat döngülerini ve döngülerini oluşturmak ve oluşturmak için tasarlanmıştır. Makine çevrimlerinin sayısı, komut dizisinin karmaşıklığı anlamına gelir. Çarpma komutları dışında neredeyse tüm OEOM komutları bir veya iki makine döngüsünde yürütülür ve bunların önemsizliği birkaç makine döngüsünde gerçekleşir. Önemli ölçüde F r ile ayarlanan jeneratörün frekansı. Makine çevriminin frekansı 12/F veya ayarlanan jeneratör sinyaline 12 periyot olarak ayarlanır. Giriş-çıkış mantığı, P0-P3 giriş-çıkış bağlantı noktaları aracılığıyla harici cihazlardan bilgi alışverişini sağlayan sinyal türlerini almak üzere tasarlanmıştır.

Komut kaydı Kaydın amacı, eklenen komutun 8 bitlik işlem kodunu kaydetmektir. İşlem kodu, bir komut kod çözücü ve EOM kontrol mantığı yardımıyla komutun mikro programına dönüştürülür.

Üyelik Kontrol Kaydı (PCON) Tüketilen elektrik enerjisi miktarını değiştirmek ve mikrodenetleyiciden gelen giriş düzeyini değiştirmek için mikrodenetleyici robotunu değiştirmenize olanak sağlar. Elektrik enerjisi miktarında daha da büyük bir değişiklik ve kod dönüştürmede değişiklik, onu ayarlayan mikro denetleyici jeneratörünün fişinin çekilmesiyle elde edilebilir. Bu, PCON ile bağlantılı olarak bit kaydının ters çevrilmesi yardımıyla başarılabilir. N-MOS teknolojisi kullanılarak üretilen versiyon için (1816 serisi veya adlarının ortasında "c" harfi bulunan yabancı mikro devreler), PCON kayıt kaydı, yüksek hızlı iletim ve seri port sağlayan yalnızca bir bit içerir. SMOD, her gün elektrik şebekesine bağlanacaktır.

Aritmetik Mantık Birimi (ALU) geniş bir yelpazede aritmetik ve mantıksal işlemler sağlayan paralel sekiz bitlik bir cihazdır. ALU şunlardan oluşur:

pil kayıtları, zaman kazandıran kayıtlar TMP1 ve TMP2;

PZP sabitleri;

sumatora;

ek kayıt (B kaydı);

pil (ACC);

kayıt bir program (PSW) haline gelecektir.

Kayıt pil ve zaman tasarrufu kaydı- işlenenleri, üzerlerindeki işlemlerin yürütüldüğü saat boyunca yakalamak ve kaydetmek için tasarlanmış sekiz bitlik kayıtlar. Bu kayıtlara program aracılığıyla erişilemez.

Sabit ROM ondalık veri gönderimi sırasında düzeltilmiş bir kodun, bit işlemleri sırasında bir maske kodunun ve sabit bir kodun oluşturulmasını sağlayacaktır.

Paralel sekiz bitlik toplayıcı toplama, toplama aritmetik işlemlerinin ve toplama, çarpma, belirsizlik ve özdeşliğin mantıksal işlemlerinin hesaplanması için tasarlanmış, sonraki transferli kombinasyonel tipte bir şemadır.

B Kaydı- çarpma işlemi sırasında değiştirilen sekiz bitlik bir kayıt. Diğer talimatlar için ek bir operasyonel kayıt olarak düşünülebilir.

Pil- aritmetik-mantıksal işlemlerin veya işlemlerin yürütülmesi sırasında elde edilen sonucun alınması ve kaydedilmesi için sekiz basamaklı bir kayıt.

Seri arayüz bloğu (SIP) girdiyi organize etme amaçları - sonraki bilgi akışlarını görüntülemek ve bir program kesinti sistemini organize etmek. Depo bloğu şunları içerir:

PIP arabelleği;

mantık keruvannya;

kontrol kaydı;

iletim arabelleği;

birincil tampon;

seri port alıcısı;

öncelik kaydını kesintiye uğratın;

kaydın kesilmesine izin verilir;

Teğmenleri işleme mantığı kesintiye uğrar ve vektör titreşim şeması.

Komut sayacı (Program Sayacı) Dahili program belleğinin dişli 16 bitlik adresini ve harici program belleğinin 8/16 bitlik adresini oluşturmanın amaçları. Komut depolama ambarı, 16 bitlik bir PC arabelleği, bir PC kaydı ve bir artış şeması (1 artırılmış) içerir.

Veri belleği (RAM) Program yükleme işlemi sırasında toplanan bilgilerin saatlik olarak kaydedilmesi için tasarlanmıştır.

Bağlantı Noktası P0, P1, P2, P3 OEM bilgilerinin harici cihazlarla alışverişini sağlamak için yarı çift yönlü giriş-çıkış bağlantı noktalarına sahiptir ve 32 giriş-çıkış hattı oluşturur.

Kayıt bir program haline gelecektir (PSW) Program kurulumu sırasında LSA tesisi hakkındaki bilgilerin kaydedilmesinin amaçları.

Program belleği (EPROM) Programları ve kalıcı bellek aygıtlarını (ROM) kaydetmek için tasarlanmıştır. Bazı mikro devrelerde ultraviyole maruz kalma veya FLASH ROM ile silinebilen durgun maskeler bulunur.

Veri Görüntüleme Kaydı (DPTR) harici veri belleğinin 16 bitlik adresini saklamak için kullanılır.

Yığın göstergesi (SP) Herhangi bir miktarda belleği hızlı bir şekilde kaydedebileceğiniz özel bir veri belleği alanını (yığın) düzenlemek için kullanılan sekiz bitlik bir kayıttır.

1.3 8051 mikrodenetleyici bileşenlerinin amacı(Şekil 1.2)

· U ss - yeraltı drotu'nun ("toprak") potansiyeli;

· U cc - ana besleme voltajı +5 V;

· X1, X2 – kuvars rezonatörünü bağlamak için konektörler;

· RST - mikro denetleyicinin girişi;

· PSEN - harici program belleğinin yalnızca yeni ROM'a yükseltildiğinde görünmesine izin verildi;

· ALE – harici hafıza adresinin flaşı;

· EA - dahili program belleğinin etkinleştirilmesi; Girişin mikro denetleyicinin programı yalnızca harici PZP'den sonlandırmasına neden olduğu düzey 0; İçi görmezden gelmek (olduğu gibi);

Küçük 1.2. 8051 pinlerinin atanması.

· P1 - sekiz bitlik yarı çift yönlü giriş/çıkış bağlantı noktası, her bağlantı noktası diğer kategorilerden bağımsız olarak hem bilgi girişi hem de çıkışı için programlanabilir;

· P2, P1'e benzer, sekiz bitlik yarı çift yönlü bir bağlantı noktasıdır; bu bağlantı noktasının pinleri, program veya veri harici belleğe indirildiğinde adres bilgilerini görüntülemek üzere etkinleştirilir (16 bitlik bir adres etkinleştirildiğinden ben geri kalanıyım) ). Ek olarak, mikro denetleyiciye yüksek dereceli adresler girecek şekilde programlandığında port pinleri seçilir;

· РЗ - P1'e benzer sekiz bitlik yarı çift yönlü bağlantı noktası; bağlantı noktasının pinleri, zamanlayıcıların, seri giriş-çıkış bağlantı noktasının, kesme denetleyicisinin çalışmasında kullanılanlar gibi bir dizi alternatif işlevle donatılabilir. ve harici program belleği m ta danih;

· P0 - bilgilerin giriş-çıkışları için çoklayıcı sekiz bitlik çift yönlü bağlantı noktası; bu bağlantı noktası aracılığıyla adresin ve verilerin düşük baytı farklı zamanlarda çıkarılır.

Belleğin organizasyonu

MCS-51 serisinin tamamı, adreslenebilir program ve veri belleği sağlamak için Harvard mimarisini kullanır. Belleğin yapısı Şekil 2'de gösterilmektedir. 1.3.

Kristalde depolanan dahili (yerleşik) program belleğinin (ROM, EPROM veya OTP ROM) miktarı, mikro devrenin türüne bağlı olarak 0 (ROM'suz), 4K (baz kristal), 8K, 16K veya 32K olarak ayarlanabilir. Tüketim için kurulu harici PZP'nin program belleğini genişletebilirsiniz. Dahili veya harici PZP'ye erişim, EA çıkışındaki (Harici Erişim) sinyal değerlerine atanır:

EA = V cc (yaşam voltajı) - dahili PZP'ye erişim;

EA = V ss (toprak potansiyeli) – harici ROM'a erişim.

PZP'siz (ROM'suz) kristaller için EA bağlantılarının V ss'ye kalıcı olarak bağlanması gerekir.

Küçük 1.3. MCS-51 ailesinin hafıza organizasyonu

Harici PZP'yi okumak için flaş - (Program Mağazasını Etkinleştirme), program harici belleğe indirildiğinde oluşturulur ve çipte bulunan PZP'ye indirme sırasında etkin değildir. Alt program hafıza adreslerinin alanı sistem tarafından kesilir. 8051 çekirdekli çip mimarisi beş işlevi destekler:

· iki harici olanı kesintiye uğratın;

· zamanlayıcıları iki kez kesintiye uğratın;

· Seri portun kesintiye uğraması.

İncirde. Şekil 1.4 program belleğinin alt alanının haritasını göstermektedir.

Küçük 1.4. Program belleğinin alt alanının haritası

Program belleği (PPM)

8051 ailesindeki mikrodenetleyicilerde program belleği ve veri belleği, kontrol edilen farklı komut ve sinyallerle adreslenen bağımsız ve bağımsız cihazlardır.

8051 mikrodenetleyicinin çipinde bulunan depolanan program belleğinin hacmi 4 KB'a kadardır (ailede 32'ye kadar). Programları yeni belleğe aktarırken, 8051 ailesinin tüm mikrodenetleyicileri her zaman 64 KB'a kadar ROM'a erişim sağlayacak 16 bitlik bir adres kullanacaktır. Mikrodenetleyici, işlem kodunu ve işlenenleri (PC komut işlemcisi) okuduğu saatte program belleğine geçer ve baytın program belleğinden pile kopyalanması için komutları gönderir. Bu komutları kullanırken, veri kopyalama, verilerin okunacağı programın belleğinin ortasında adreslenir, PC veri denetleyicisi ve özel çift baytlı veri kaydı DPTR ile etkileşime girebilir.

Haraçların anısı (MP)

Çipte depolanan veri belleğinin hacmi 128 bayttır. Harici veri belleğinin hacmi 64 KB'a kadar ulaşabilir. İlk 32 bayt, sıra 0 - sıra 3 olarak adlandırılan, birincil öneme sahip dört kayıt kümesi halinde düzenlenir. Her biri sekiz R0-R7 kaydından oluşur. Herhangi bir zamanda, programda, kayıt adresleme sırasında kullanılabilen yalnızca bir kayıt bankası bulunur; bu kayıtların sayısı, kelimenin üçüncü ve dördüncü bitlerinde bulunur ve PSW programı olacaktır.

8051 mikrodenetleyicinin bit hafıza alanının adresleri

Tablo 1.1

Bayt adresleri (Hex) Rütbelere göre savaşların adresleri
D7 D6 D5 D4 D3 D2 D1 D0
2F 7F 7E 7 boyutlu 7C 7B 7A
2E
2 boyutlu 6F 6E 6 boyutlu 6C 6B 6A
2C
2B 5F 5E 5 boyutlu 5C 5B 5A
2A
4F 4E 4 boyutlu 4C 4B 4A
3F 3E 3 boyutlu 3C 3B 3 A
2F 2E 2 boyutlu 2C 2B 2A
1F 1E 1 boyutlu 1C 1B 1 A
0F 0E 0 gün 0C 0B 0A
20 saat

Kaybolan adres alanı geliştiricinin takdirine bağlı olarak yapılandırılabilir: yığın, sistem ve kişisel veri alanlarını barındırabilir. Bu verilerin hafızaya çağrılması iki şekilde yapılabilir. Birinci yöntem hafızanın ortasına doğrudan adreslemedir. Giriş komutunun işleneni ortadaki adres türüdür. Başka bir yöntem, ek gösterge kayıtları R0 veya R1'in dolaylı adreslenmesidir: harici komutun çıkışından önce, ortadaki adresler, onları açmak gerekli olana kadar bunlardan birine girilebilir.

Verileri harici belleğe aktarmak için, ek R0 ve R1 kayıtları veya 16 bit gösterge kaydı DPTR için dolaylı adresleme gerekir.

Veri belleğinin bir kısmı bit alanıdır; burada özel bit komutlarını kullanarak orta belleğin cilt deşarjını ele alma yeteneği vardır. Doğrudan adreslenen bitlerin adresleri de aynı şekilde kaydedilebilir (AddressByte). (Deşarj). Bu iki adresleme yönteminin ilişkisi tabloda görülebilir. 1.1.

Mikrodenetleyici mimarisi

Mikrodenetleyicilerin gelişmiş mimarisi, montaj tipi programlamanın anahtarıdır. Derleyicinin yapısı, talimatlarının formatı, işlenenlerin adreslenmesi de doğrudan mimari tarafından belirlenir. Mimariyi değiştirme yöntemi:

· Programlama için mevcut kayıt setlerinin, bunların işlevsel amaçlarının ve yapılarının tanımlanması;

· operasyonel hafıza ve düzenin makul organizasyonu;

· Veri türlerinin farkındalığı;

· Makine komutlarının Vivchenya formatı;

· İş organizasyonunu kesintiye uğratmak.

MCS-51 ailesinin mimarisi, önemli ölçüde kompakt ve düşük maliyetli dijital cihazlar yaratma hedeflerinden kaynaklanmaktadır. MK'nin tüm fonksiyonları tek bir mikro devre kullanılarak gerçekleştirilir. MCS-51 ailesinin stoğu, en basit mikrodenetleyicilerden birkaç katlanabilir olana kadar çok çeşitli mikro devreler içerir. MCS-51 ailesinin mikrodenetleyicileri, çeşitli cihazların kontrolünü yapılandırmanıza ve analog devrelerin çeşitli bileşenlerini uygulamanıza olanak tanır. Bu ailenin tüm mikro devreleri aynı komut sistemi ile çalışır, çoğu yeni kasalara kaçınılan bir tabanla (kasa için bazların numaralandırılması) kurulur. Bu, cihazın ve programların devre şemalarını yeniden çalıştırmadan farklı üreticilerin (Intel, Dallas, Atmel, Philips vb.) mikro devrelerini kullanmanıza olanak tanır.

MCS-51, program belleği ve verilerin adreslenebilir alanlarının ayrıldığı Harvard mimarisine dayanmaktadır.

Kontrolörün blok şeması Şekil 2.3'te sunulmuştur ve aşağıdaki ana işlevsel birimlerden oluşur: bir kontrol ünitesi, bir aritmetik-mantıksal birim, bir zamanlayıcı/dağıtıcı bloğu, bir seri arayüz ve kesinti, bir program kontrolörü (l ekibi) lider), veri hafızası ve hafıza yati programları

İki yönlü iletişim, dahili 8 bitlik veri yolu aracılığıyla gerçekleşir. Gelin cilt bloğunun önemine ilişkin rapora bir göz atalım. MCS-51 ailesinin neredeyse tüm temsilcileri bu plan kapsamında oluşturuldu. Bu ailenin çeşitli mikro devreleri özel amaçlı kayıtlara (kayıtlar ve port sayısı) bölünmüştür. MCS-51 ailesinin tüm kontrolörlerinin komut sistemi, 1, 2 veya 3 bayt formatında 111 temel komut içerir ve bir mikro devreden diğerine geçerken değişmez. Bu, programların bir mikro devreden diğerine mucizevi taşınabilirliğini sağlayacaktır.

Kontrol ve senkronizasyon ünitesi(Zamanlama ve Kontrol), izin verilen tüm çalışma modlarında OEM ünitelerinin genel çalışmasının koordinasyonunu sağlamak için senkronizasyon ve kontrol sinyallerinin üretilmesini amaçlar. Depo kontrol ünitesi şunları içerir:


  • saat aralıklarını oluşturmaya yönelik cihaz,
  • kombinasyonel giriş-geri çekilme şeması,
  • komut kaydı,
  • komut kod çözücü.

Hafta sonları ve hafta sonları kontrol ve senkronizasyon ünitesine sinyaller:

1 PSEN- Program belleğinin ayrı depolanması;

2 bira- Adresi sabitleme izni için çıkış sinyali;

3 PROG- Sinyal programlama;

4 E.A.– robotun dahili bellekten engellenmesi;

5 VPP- Gerilim programlama;

6 RST- Zagalny atma sinyali.

Cihaz, CPU duraklarının sırasını senkronize etmek, makine döngüsünü sürdürmek ve tüm dahili terminallerin ve çıkış portu arabelleklerinin düzgün çalışmasını sağlamak için gerekli olan saat aralıklarını oluşturur. Makine çevrimi, S1'den S6'ya kadar iki aşamaya ayrılan altı son durumdan (Durumlar) oluşur:

faz 1 (Faz 1 - P1) ve faz 2 (Faz 2 - P2). Böylece makine çevrimi saatlik aralıklarla S1P1, S1P2, S2P1, ..., S6P2 şeklinde ölçülebilir. Fazın süresi doğrudan saat darbelerinin periyoduyla aynıdır, dolayısıyla makine çevrimi 12 saat periyodu sürer.

Makine çevrimlerinin sayısı, komut dizisinin karmaşıklığı anlamına gelir. Birkaç makine döngüsünde yürütülebilen çarpma komutları dışında hemen hemen tüm komutlar bir veya iki makine döngüsünde yürütülür. Giriş-çıkış mantığı, P0-P3 giriş-çıkış bağlantı noktaları aracılığıyla harici cihazlardan bilgi alışverişini sağlayan sinyal türlerini almak üzere tasarlanmıştır.

Komut kaydı Kaydın amacı, eklenen komutun 8 bitlik işlem kodunu kaydetmektir. İşlem kodu, bir komut kod çözücü ve EOM kontrol mantığı yardımıyla komutun mikro programına dönüştürülür.

Pirinç. 2.3. Tek çipli mikrodenetleyici Intel 8051'in blok şeması

(MCS-51'in evi)

Aritmetik-mantıksal cihaz(ALU), çeşitli aritmetik ve mantıksal işlemler sağlayan paralel sekiz bitlik bir cihazdır. ALU şunlardan oluşur:

  • zaman tasarrufu sağlayan kayıtlar -TMP1 ve TMP2,
  • ROM sabitleri,
  • suatora,
  • ek kayıt - kayıt ol,
  • pil - ACC,
  • kelimenin kaydı bir program haline gelecektir (teğmenlerin kaydı) - PSW.

Zaman kazandıran yazmaç TMP1, TMP2- işlenenleri, üzerlerindeki işlemlerin yürütüldüğü saat boyunca yakalamak ve kaydetmek için tasarlanmış sekiz bitlik kayıtlar. Bu kayıtlara program aracılığıyla erişilemez.

Sabit ROM ondalık veri gönderimi sırasında düzeltilmiş bir kodun, bit işlemleri sırasında bir maske kodunun ve sabit bir kodun oluşturulmasını sağlayacaktır.

Paralel sekiz bitlik toplayıcı toplama, toplama aritmetik işlemlerinin ve toplama, çarpma, belirsizlik ve özdeşliğin mantıksal işlemlerinin hesaplanması için tasarlanmış, sonraki transferli kombinasyonel tipte bir şemadır.

B Kaydı- çarpma işlemi sırasında değiştirilen sekiz bitlik bir kayıt. Diğer talimatlar için ek bir operasyonel kayıt olarak düşünülebilir.

Pil- aritmetik-mantıksal işlemlerden veya depolama işlemlerinden elde edilen sonuçların alınması ve kaydedilmesi için sekiz basamaklı bir kayıt.

Kayıt bir program PSW'ye (Program Durum Sözcüğü) dönüşecektir. Sözü kurtarmak için imzalanacak komutlar olacağım. Çok sayıda ALU komutu girildiğinde, program sözcüğü (PSW) kaydına kaydedilen bir dizi işlem sembolü (işareti) oluşturulur. Masada 1'de PSW bayraklarının tercümesi özetlenmekte, sembolik isimleri verilmekte ve zihinsel oluşumu anlatılmaktadır.

Seri arayüzün kesilmesi için blok - UART (Evrensel Asenkron Alıcı/Verici) girdiyi organize etme amaçları - sonraki bilgi akışlarını görüntülemek ve bir program kesinti sistemini organize etmek.

Sonuçta kesinti, robotik ekipman ve programlar tarafından tetiklenen çeşitli planlı ve plansız eylemlerin yürütülmesini hesaplamaya yönelik ana sürecin zaman alıcı uygulaması anlamına gelir.

Bu eylemler, yan yana hizmet programları tarafından desteklenen veya rutin durumlara tepki veren bir hizmet niteliğinde olabilir.

OMEOM komut sistemi, mükemmel veri işleme yetenekleri sağlar; mantıksal, aritmetik işlemlerin yanı sıra gerçek zamanlı kontrolün uygulanmasını sağlar. Bit-bit, tetrad-bit (4 bit), bayt-bayt (8 bit) ve 16 bit veri işleme uygulandı.

MCS-51 ailesinin BIS'si 8 bitlik bir OMEOM'dur: ROM, RAM, özel amaçlı kayıtlar, ALU ve harici veri yolları bir bayt organizasyonuna sahiptir. Çift baytlı veriler yalnızca ekran kaydı (DPTR) ve komut temizleyici (PC) tarafından işlenir. Veri kaydının çift baytlık bir kayıt DPTR veya iki tek baytlık özel amaçlı kayıt DPH ve DPL olabileceğini unutmayın. Komut temizleyicisi her zaman çift baytlık bir kayıt olarak kullanılır.

OMEOM komut seti, sistemin 33 işlevini belirtmek için 42 anımsatıcı komut içerir.

Çoğu montaj dili komutunun sözdizimi, anımsatıcı bir işlev atamasından ve ardından adresleme yöntemlerini ve veri türlerini belirten işlenenlerden oluşur. Çeşitli veri türleri ve adresleme modları, anımsatıcı değerlerdeki değişikliklerle değil, işlenenlerin eklenmesiyle gösterilir.

Komuta sistemi zihinsel olarak beş gruba ayrılabilir:

Aşağıdaki adresleme işlenen türleri vardır:

  • Temel ve indeks kayıtlarının toplamının ötesinde dolaylı kayıt adresleme

Komuta sisteminde kullanılan sembollerin tablosu

Randevu, sembol Atama
A Pil
Rn Akış tabanlı bir kayıt bankasının kaydı
R Ekip tarafından belirtilen atanan kayıt numarası
doğrudan 8 bitlik dahili veri adresi doğrudan adreslenir; bu, dahili veri RAM'inin (0-127) veya SFR'nin (128-255) ortası olabilir.
@RR Dolaylı olarak dahili veri RAM'inin 8 bitlik orta kısmına adresleme
veri8 COP'tan önce girmek için ortası olmayan 8 bit verilir
veriH Orta 16 bit verinin yüksek bitleri (15-8)
veriL Genç ortadaki 16 bitlik veriyi (7-0) yendi
adres11 11 bitlik hedef adresler
adresL Gençlerin tanınma adresleri
disp8 İşaretli 8 bitlik yer değiştirme baytı
biraz Verilerin dahili OCP'sinde veya SFR'de bulunan COP'nin yerleştirildiği doğrudan adresleme biti
a15, a14...a0 Bit adresleri ve atamaları
(X) X öğesi yerine
((X)) X öğesinde saklanan adres yerine
(X)[M] X elemanının boşaltılması

+
-
*
VE
VEYA
XOR
/X
Operasyonlar:
ek olarak
vidnіmannya
çarpma işlemi
altında
mantıksal çarpma (işlem I)
mantıksal katlama (ABO işlemi)
Modül 2'den sonra eklendi (ABO'yu içerir)
X elemanının ters çevrilmesi

Anımsatıcı işlev atamaları, adresleme yöntemleri ve veri türlerinin belirli kombinasyonlarıyla benzersiz bir şekilde ilişkilendirilir. Komut sistemi bu tür 111 girişe sahip olabilir. Tablo, alfabeye göre sıralanmış bir komut listesi içerir.

Anımsatıcılar İşlev Prapori
ACALL komutu Mutlak wiklik alt programları
Dodavannya AC, C, OV
Aktarılanlara eklendi AC, C, OV
AJMP Ekibi Mutlak geçiş
Mantıksal "ben"
Değişim temposu için “ben” daha mantıklıdır C
Birden fazla olduğu için tesviye ve geçiş C
CLR Bir komut Pil düşüşü
CLR komutu Skidannya bita C, bit
CPL A Takımı Pilin ters çevrilmesi
CPL Ekibi Bit ters çevirme C, bit
Takım DA A Katlama için onlarca pil düzeltmesi AC, C
Aralık Ekibi<байт> Azaltma
DIV AB Takımı Podil C, OV
DJNZ Takımı<байт>, <смещение> Sıfıra eşit olmayan azalma ve geçiş
Takım A.Ş.<байт> Artış
INC DPTR Komutanlığı Veri göstergesi artışı
JB Takımı , Bit ayarlandığında geçiş
JBC Ekibi , Geçiş, bu bitin biraz eklenmesi ve silinmesi olarak
Takım JC Aktarım yüklüyse geçiş
Komut JMP @A+DPTR Dolaylı geçiş
JNB Takımı , Bit ayarlanmamışsa geçiş
JNC Ekibi Aktarım yüklü değilse geçiş
JNZ Ekibi Pil yerine sıfıra eşit değilse geçiş
JZ Takımı Geçiş, pil yerine yenisi varsa 0
LCALL komutu Dovgy Viklik
LJMP Ekibi Uzun geçiş
zminna bayt ilet
Bit verilerini ilet C
MOV DPTR komutu, #data16 Veri göstergesine 16 bitlik bir sabitle açıklama ekleyin
MOVC komutu A, @ A + ( ) Program belleğinden bir bayt gönder
Verileri harici belleğe aktarın (harici bellekten)
Çalışmıyor