![Z80-mbc2 Z80 Code Flash foydalanuvchi LED: 3 qadam Z80-mbc2 Z80 Code Flash foydalanuvchi LED: 3 qadam](https://i.howwhatproduce.com/images/002/image-4451-j.webp)
Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14
![Z80-mbc2 Z80 Code Flash foydalanuvchi LED Z80-mbc2 Z80 Code Flash foydalanuvchi LED](https://i.howwhatproduce.com/images/002/image-4451-1-j.webp)
Bu z80-mbc2 kompyuteri uchun Z80 assembler-da yozilgan LED dasturining namunasi.
Men buni sinov va qayta ko'rib chiqish mashqlarini qildim, bu mening 35 yildan ortiq Z80 dasturim.
Xursand bo'ling
Ta'minotlar
Z80 mbc2 kompyuter
SLR Systems Rel -dan Z80ASM nusxasi. 1.32, ko'plab cp/m arxivlaridan yuklab olish mumkin
Tahrirchi, men ZDE16 dan foydalanardim, chunki u allaqachon z80-mbc2 uchun CP/M yuklash tasvirida edi.
1-qadam: Z80asm-ni Z80-mbc2-ga o'rnating
![Z80asm-ni Z80-mbc2-ga o'rnating Z80asm-ni Z80-mbc2-ga o'rnating](https://i.howwhatproduce.com/images/002/image-4451-2-j.webp)
Men sizning Z80-MBC2-dagi vositalaringiz bilan, xususan siz ishlatadigan cpmtools-ning har qanday versiyasi bilan tanishman deb o'ylayman. Buyruqlar satri versiyalarini ishlatishda quyidagi qadamlar:
- Fayllarni z80asm.com va z80asm.doc (ixtiyoriy) katalogdan kompyuteringizning biron bir joyidan oling
- SD -kartangizni bir xil kompyuterga qo'ying, menimcha, u quyida E diskda ko'rsatiladi.
- Men assemblerni CP/M diskimga qo'ydim, cp/m 2.2 uchun bu DS0N00. DSK disk tasviri bo'ladi.
- Buyruq: cpmcp -f z80mbc2 -d0 e: DS0N00. DSK z80asm.com 0: z80asm.com faylini rasmga ko'chiradi
- Cpmcp -f z80mbc2 -d0 e: DS0N00. DSK z80asm.doc 0: buyrug'i hujjatlarni diskka ko'chiradi (ixtiyoriy)
Z80-mbc-da cp/m 2.2 ni yuklaganingizda, sizda A diskda z80asm.com va z80asm.doc (ixtiyoriy) bo'lishi kerak.
2-qadam: Manba kodini Z80-mbc2-ga nusxalash
Terminal dasturingiz yordamida z80-mbc-ga ulaning
Men sizga manba kodini saqlash uchun to'ldirilmagan diskdan foydalanishni maslahat beraman, masalan f: bu disk turini tanlash uchun:
F:
bir necha soniyadan so'ng siz F: taklifini ko'rasiz.
Endi bo'sh faylni tahrir qilish uchun A diskidagi zde16 dasturidan foydalaning:
a: zde16 myled.z80
Bu diskda myled.z80 deb nomlangan faylni yaratadi: eslatma: z80asm ishlashi uchun.z80 nomi kerak.
Endi kodni quyida nusxa ko'chiring va joylashtiring, terminal tezligingizga va boshqalarga qarab kichik bo'limlarga nusxalash va joylashtirish kerak bo'ladi. Yoki yozing! 1980 -yillarning his -tuyg'ularini qaytaring.
;
Foydalanuvchi LEDini va kalitini tekshiring; BDOS teng 05h; cp/m BDOS kirish nuqtasi USRLED teng 0; Foydalanuvchi LEDni boshqarish uchun opcode USRKEY equ 80h; User Switch ni boshqarish uchun opcode DPORT teng 0; DATA port i/u CPORT teng 1; Buyruq portining chiqishi; tashkilot 0100h; ld (estack), sp; cp/m ld sp, stack -ga qaytish uchun mavjud ma'lumotlarni saqlang; ld hl, msg; salom xabar chaqiruvi _puts lp: ld a, 1; yoqish = 1 qo'ng'iroqni chaqirishni kechiktirish; kechiktirish va tugmachalarni kutish jr nz, tugatish; nol bo'lmagan tugmachani/kalitni bosilgan degan ma'noni anglatadi xor a; a = 0 qo'ng'iroqni kechiktirish; jr z, lp tugmachasini kechiktirish yoki kutish; agar nol bo'lsa, kalit/kalit bo'lmasa, yana o'ting; tugatish: xor a; tugma yoki tugma bosildi, shunday qilib chaqiruv amalga oshirildi ld hl, xayr; xayr qo'ng'iroq _puts; displeyda xabar HL = ld sp, (estack); original stack ret; cp/m ga qaytish; LED: 0 yoki 1 ld a saqlash, USRLED chiqish (CPORT), a; opt -kod yuborilgan pop af (DPORT), a; ma'lumotlar yuborilgan ret;; Terminal yoki foydalanuvchi tugmachasining kechiktirilishida tugma bosilganligini tekshiradigan kechikish davri: ld bc, 00e00h; taxminan 1/2s 8mHz chastotali protsessor, sof taxminiy ishchi tsikl2: dec bc; loop bc bc hisoblash; 6; BDOS raw i/o tugmasi bosilganligini tekshiring ld e, 0ffh qo'ng'iroq BDOS pop de; qiymatlarimizni stack pop bc yoki a dan qaytarib oling; terminal nz tugmachasi bosilganligini tekshiring; ha qaytish (shuningdek nz bayroq o'rnatiladi) ld a, USRKEY; Endi foydalanuvchi tugmachasini tekshiring (CPORT), a; buyruq porti a, (DPORT); o'qish tugmasi va a, 1; faqat bit 0 ret nz; agar userkey ld a, b tugmachasini bosgan bo'lsa qaytish; yoki bc = 0 yoki c jr nz, loop2; sanash tugallanmagan, yana xor a ga o'ting; z bayrog'ini 0 ret ga o'rnating; hech qanday tugma bosilmadi, kechikishning oxiri; _puts: push bc; bdos qo'ng'iroqlariga registrlarimizni saqlang push de nxt: ld a, (hl); char yoki a ni oling; 0 yoki yo'qligini tekshiring, msg jr z tugadi, bajarildi; ha shunday bajarildi ld e, a; char ld c, 2 push hl -ni chop etish uchun BDOS -ga qo'ng'iroqni o'rnating; matnli ko'rsatgichni saqlang BDOS; uni chop et hl inc hl; keyingi char jr nxt; bajarishda davom eting: pop de; tugatilgan regs pop bc ret; va qaytish; msg db 'User LED testi, chiqish db 0ah, 0dh, 0 bye db' Exit 'db 0ah, 0dh, 0 estack dw 0 ds 256 - 2 stack: dw 0
Faylni ESC x yordamida saqlang. Qo'shimcha ma'lumot olish uchun ZDE16 qo'llanmasiga qarang, bu ko'p tahrirlash uchun wordstar-ga o'xshaydi, faqat Ctrl-K variantlari boshqacha.
3 -qadam: Dasturni kompilyatsiya qiling va ishga tushiring
Mashinada manba kodini olganingizdan so'ng.
Turi:
F>
F> a: z80asm myled/a Z80ASM Copyright (C) 1983-86 SLR Systems Rel tomonidan. 1.32 MYLED/Faylning oxiri Pass 1 0 Xato (lar) aniqlandi. 406 mutlaq bayt. 16 ta belgi aniqlandi.
Bu myled.z80 faylini qidiradi va ikkilik (.com) faylini ishlab chiqaradi, bu variant /a nimani anglatadi.
Qo'shimcha ma'lumot olish uchun z80asm.doc faylini ko'ring.
Dasturni ishga tushirish uchun quyidagilarni kiriting:
F> myled
Foydalanuvchining LED sinovi, F> dan chiqish uchun istalgan tugma
Chiqish uchun terminal tugmachasini yoki foydalanuvchi tugmachasini bosing.
Bajarildi.
Tavsiya:
RTC va foydalanuvchi tomonidan belgilangan PIN kodli elektron xavfsizlik tizimi: 7 qadam
![RTC va foydalanuvchi tomonidan belgilangan PIN kodli elektron xavfsizlik tizimi: 7 qadam RTC va foydalanuvchi tomonidan belgilangan PIN kodli elektron xavfsizlik tizimi: 7 qadam](https://i.howwhatproduce.com/images/001/image-2187-26-j.webp)
Elektron xavfsizlik tizimi RTC va foydalanuvchi tomonidan PIN kodni aniqlaydi: Salom bolalar! Bu men pik mikrokontroler yordamida elektron PIN kodli xavfsizlik tizimi yordamida real vaqtda soat va foydalanuvchining pin -kod xususiyatlarini aniqlagan loyiha, bu sahifada uni o'zingiz qilishingiz uchun barcha tafsilotlar mavjud
WEB foydalanuvchi interfeysi bilan Arduino batareya tekshiruvchisi: 5 qadam
![WEB foydalanuvchi interfeysi bilan Arduino batareya tekshiruvchisi: 5 qadam WEB foydalanuvchi interfeysi bilan Arduino batareya tekshiruvchisi: 5 qadam](https://i.howwhatproduce.com/images/009/image-26211-j.webp)
WEB foydalanuvchi interfeysi bilan Arduino akkumulyatorini tekshiruvchi: Bugungi kunda elektron uskunalar zaxira batareyalardan foydalanadi, chunki uskunalar o'chirilganida yoki tasodifan uskunalar o'chirilgan paytdagi holat saqlanadi. Foydalanuvchi yoqilganda, u qolgan joyiga qaytadi
O'zingizning foydalanuvchi interfeysingiz yordamida Bluetooth boshqariladigan robot qiling: 5 qadam
![O'zingizning foydalanuvchi interfeysingiz yordamida Bluetooth boshqariladigan robot qiling: 5 qadam O'zingizning foydalanuvchi interfeysingiz yordamida Bluetooth boshqariladigan robot qiling: 5 qadam](https://i.howwhatproduce.com/images/010/image-28807-j.webp)
O'zingizning shaxsiy interfeysingiz bilan Bluetooth boshqariladigan robotni yarating: Salom do'stlar, bugun qo'l san'atlari loyihasini suratga olgandan so'ng, men bu erga ajoyib arduino loyihasi bilan keldim. Tashqi tomondan, bu eski kontseptsiyaga o'xshaydi, lekin kutib turing, yigitlar, menda bu loyihaning o'ziga xosligi bor. Xo'sh, bu erda nima o'ziga xos? Men sizga ko'rsatmoqchiman
Android foydalanuvchi interfeysi bilan mantiq analizatori: 7 qadam
![Android foydalanuvchi interfeysi bilan mantiq analizatori: 7 qadam Android foydalanuvchi interfeysi bilan mantiq analizatori: 7 qadam](https://i.howwhatproduce.com/images/011/image-31501-j.webp)
Android foydalanuvchi interfeysi bilan mantiqiy analizator: Dunyo allaqachon juda ko'p mantiq analizatorlari bilan to'lib ketgan. Elektronika mashg'ulotlarida menga muammolarni bartaraf etish va disk raskadrovka qilish kerak edi. Internetni qidirdim, lekin qidirayotganimni topa olmadim. Mana, men … " HAQIBATLI LO
Ingliz / Portugal: S4A Como Instalar E Usar / S4A Qanday o'rnatish va foydalanuvchi: 7 qadam
![Ingliz / Portugal: S4A Como Instalar E Usar / S4A Qanday o'rnatish va foydalanuvchi: 7 qadam Ingliz / Portugal: S4A Como Instalar E Usar / S4A Qanday o'rnatish va foydalanuvchi: 7 qadam](https://i.howwhatproduce.com/images/002/image-3771-19-j.webp)
Ingliz / portugal: S4A Como Instalar E Usar / S4A Qanday o'rnatish va foydalanuvchi: O S4A (ou Scratch for Arduino) é hech qanday chizilmasin, Arduino. É u tez -tez "tez" va "bir xil" dasturini amalga oshirdi