Kazalo:
- Zaloge
- Korak: Namestite Z80asm na vaš Z80-mbc2
- Korak: Kopirajte izvorno kodo na vas Z80-mbc2
- 3. korak: Prevedite in zaženite program
Video: Z80-mbc2 Z80 kodna bliskavica uporabnika LED: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:02
To je primer uporabniškega LED programa, napisanega v asemblerju Z80 za računalnik z80-mbc2.
Zame sem naredil preizkus in revizijo, to je moj prvi program Z80 za več kot 35 let.
Uživajte
Zaloge
Računalnik Z80-mbc2
Kopija Z80ASM iz SLR Systems Rel. 1.32, ki jih je mogoče prenesti iz številnih arhivov cp/m
Urejevalnik, uporabil sem ZDE16, saj je bil že na zagonski sliki CP/M za z80-mbc2
Korak: Namestite Z80asm na vaš Z80-mbc2
Predvidevam, da ste seznanjeni z orodji, ki jih imate za svoj Z80-MBC2, in sicer katero koli različico orodja cpmtools, ki jo uporabljate. Če uporabljate različice ukazne vrstice, so naslednji koraki:
- Prenesite datoteki z80asm.com in z80asm.doc (izbirno) v imenik na svojem mestu v gostiteljskem računalniku
- Kartico SD vstavite v isti računalnik, spodaj predvidevam, da se prikazuje kot pogon E: spodaj.
- Asembler sem dal na svoj CP/M disk A, za cp/m 2.2 bi to bila slika diska DS0N00. DSK
- Ukaz: cpmcp -f z80mbc2 -d0 e: DS0N00. DSK z80asm.com 0: bo kopiral datoteko z80asm.com na sliko
- Ukaz cpmcp -f z80mbc2 -d0 e: DS0N00. DSK z80asm.doc 0: bo kopiral dokumentacijo na disk (neobvezno)
Ko zaženete cp/m 2.2 na svojem z80-mbc, bi morali imeti na disku A z80asm.com in z80asm.doc (izbirno)
Korak: Kopirajte izvorno kodo na vas Z80-mbc2
Povežite se z z80-mbc s svojim terminalskim programom
Predlagam, da za shranjevanje izvorne kode uporabite nenaseljen disk, na primer f: za izbiro te vrste pogona:
F:
po nekaj sekundah boste videli poziv F:
zdaj uporabite program zde16 na pogonu A za urejanje prazne datoteke:
a: zde16 myled.z80
To bo ustvarilo datoteko myled.z80 na disku F:, opomba:.z80 je v imenu potrebna za delovanje z80asm.
Zdaj kopirajte in prilepite spodnjo kodo, odvisno od hitrosti terminala itd., Boste morda morali kopirati in prilepiti v majhne odseke. Ali pa vnesite! dobite občutek tudi v osemdesetih letih.
;
; Preizkusite uporabniško LED in uporabniški ključ; BDOS equ 05h; cp/m vstopna točka BDOS USRLED equ 0; koda za opcijo uporabniškega LED -upravljanja USRKEY equ 80h; opcode za upravljanje uporabniškega stikala DPORT enako 0; vrata za podatke i/o CPORT enaka 1; izhod ukaznih vrat; org 0100h; ld (estack), sp; ohraniti obstoječe podatke za vrnitev na cp/m ld sp, sklad; ld hl, msg; pozdravni klic sporočila _puts lp: ld a, 1; vklop = 1 zakasnitev klica, ki ga vodi klic; zakasnitev in čakanje na tipko (-e) jr nz, končaj; ničelno pomeni tipko/stikalo pritisnjeno xor a; a = 0 zakasnitev klica s klicem; zakasnite ali počakajte na tipko/stikalo jr z, lp; če nič, brez tipke/stikala, pojdite znova; zaključek: xor a; pritisnjena je bila tipka ali stikalo, tako da je klic opravljen ld hl, adijo; recite bye call _puts; prikaz sporočila HL = ld sp, (estack); LED: push af; shrani vrednost LED 0 ali 1 ld a, USRLED out (CPORT), a; optcode poslano pop af (DPORT), a; podatki poslani ret;; Zakasnitvena zanka, ki pritisne tipko za preverjanje na zakasnitvi terminala ali uporabniškega ključa: ld bc, 00e00h; približno 1/2s 8mhz CPE, čista ugibanja, zanka2: dec bc; šteje potisk zanke bc; shrani regre pri klicu BDOS push de ld c, 6; BDOS raw v/i preveri, če je tipka pritisnjena ld e, 0ffh kliče BDOS pop de; vrni naše vrednosti iz sklada pop bc ali a; preveri, če je tipka pritisnjena na terminalu ret nz; da vrne (tudi nastavi zastavico nz) ld a, USRKEY; Zdaj preverite uporabniški ključ (CPORT), a; ukazna vrata v a, (DPORT); tipka za branje in a, 1; zanima samo bit 0 ret nz; vrnitev, če je uporabniška tipka pritisnjena ld a, b; ali je bc = 0 ali c jr nz, zanka2; štetje ni končano, pojdite znova xor a; zastavico z nastavite na 0 ret; vrnite brez pritisnjene tipke, konec zamude; _puts: push bc; shranite naše registre pripravljene za klice bdos push de nxt: ld a, (hl); get char or a; test, če je 0, konec sporočila jr z, končano; ja tako storjeno ld e, a; nastavite klic v BDOS, da natisnete char ld c, 2 push hl; shranite klic besedilnega kazalca BDOS; natisnite ga pop hl inc hl; naslednji char jr nxt; nadaljujte: pop de; končana obnovitev regs pop bc ret; in vrnite; msg db 'Uporabniški test LED, kateri koli ključ za izhod' db 0ah, 0dh, 0 bye db 'Exit' db 0ah, 0dh, 0 estack dw 0 ds 256 - 2 stack: dw 0
Shranite datoteko s tipko ESC x. Za več informacij si oglejte priročnik za uporabo ZDE16, za večino urejanj je nekoliko podoben wordstar, le da so možnosti Ctrl-K različne.
3. korak: Prevedite in zaženite program
Ko imate na stroju izvorno kodo.
Vrsta:
F>
F> a: z80asm myled/a Z80ASM Avtorske pravice (C) 1983-86 avtorja SLR Systems Rel. 1,32 MYLED/A Konec datoteke Pass 1 0 Zaznane napake. 406 absolutnih bajtov. 16 zaznanih simbolov.
To bo poiskalo datoteko myled.z80 in ustvarilo binarno (.com) datoteko, kar pomeni možnost /a.
Za več informacij si oglejte datoteko z80asm.doc.
Če želite zagnati program, vnesite:
F> miled
Uporabniški test LED, katera koli tipka za izhod iz izhoda F>
Za izhod pritisnite uporabniški gumb ali tipko na terminalu.
Končano.
Priporočena:
512 Barvna LED bliskavica (naključno): 13 korakov
512 Barvna LED utripalec (naključno): Ta LED utripalec prikazuje 512 barv brez uporabe mikrokrmilnika. 9-bitni binarni števec ustvari psevdo naključno število in 3 D/A (digitalno-analogni) pretvorniki poganjajo rdečo, zeleno in modro LED
LED bliskavica za glasbeni ritem: 9 korakov (s slikami)
LED bliskavica za glasbeni ritem: v tem projektu bomo z mikrofonom in BC547 naredili vezje za bliskovito bliskavico glasbenega ritma z mikrofonom in BC547 na plošči in tiskanem vezju, kjer bodo lučke LED trakov utripale z ritmom glasbe. električni pul
Elektronska kodna ključavnica: 4 koraki
Elektronska kodna ključavnica: digitalne kodne ključavnice so zelo priljubljene v elektroniki, kjer morate vnesti posebno kodo, da odprete ključavnico. Ta vrsta ključavnic potrebuje mikrokrmilnik za primerjavo vnesene kode s vnaprej določeno kodo za odpiranje ključavnice. Obstajajo te vrste
Uv/bela bliskavica v obliki kovanca v 30 minutah ali manj!: 4 koraki
Uv/bela bliskavica v obliki kovanca v 30 minutah ali manj!: Pozdravljeni! Včeraj sem prejel nekaj UV 5 mm LED. Že nekaj časa sem si želel nekaj narediti s temi. Moja prva interakcija z njimi je bila nekaj let nazaj med obiskom Kitajske. S temi sem kupil obesek za ključe in je precej
10 -letna LED bliskavica + PC plošča: 6 korakov
10 -letna LED bliskavica + PC plošča: Ta LED bliskavica bo delovala 10 let na eni 1,5 -voltni alkalni celici AA. Vključil sem tudi PC-ploščo. Lahko ga prenesete v obliki PDF tukaj: prenos PCB. Našli boste tudi vodnik za postavitev komponent. Tako dolga življenjska doba celic je dosežena