Aktív témák
-
1. Beállítod a baud rate-et. Ez 1843200/16/x, ahol x az osztó, amit beállítasz. Tehát bázis+3-ra írsz egyet úgy, hogy a 7. bit 1-es. Ezután az alsó és felső byte-ját az osztónak beírod a bázis+0 és +1-be.
2. Beállítod az adatformátumot a bázis+3-on és egyúttal a 7. bit 0-ra. A 6. bit is 0, mert nem kell BREAK.
Ezután már tudsz kommunikálni a bázis+0-n, oda kell írni, illetve onnan kell olvasni. Csak akkor írhatsz oda, ha az adó adatregisztere üres, tehát ha a bázis+5 5. bitje 1. Olvasni akkor kell, ha a vevő adatregisztere nem üres, tehát bázis+5 0. bitje 1.
Ha kell megszakítás is, akkor szólj!
Tehát:
mov dx,bázis
mov bx,dx
add dx,3
mov al,80h
out dx,al
mov ax,osztó
mov dx,bx
out dx,ax
add dx,3
mov al,00000011b ;nincs paritás, 1 stop, 8 adat
out dx,al
Kiírás:
mov dx,bázis
add dx,5
waittransmit:
in al,dx
test al,20h
jz waittransmit
mov al,amit ki akarsz írni
sub dx,5
out dx,al
Beolvasás:
mov dx,bázis
add dx,5
waitreceive:
in al,dx
test al,1
jz waitreceive
sub dx,5
in al,dx
Ezek persze elég gagyik, megszakítással illik pufferbe/ből dolgozni.
Remélem nem hibáztam
-
válasz
Blackmate
#10
üzenetére
Hmm... Ha ennyire utálod az assembly-t, akkor miért mikrokontrollerekkel foglalkozol? Ha nem érted meg a mikrokontroller lelkivilágát, akkor hogyan akarsz C programot írni hozzá?
Egyébként, ha tényleg tanultál assembly-t, akkor csak elő kell venni a mikrokontroller doksiját, végigfutni az utasításkészletet, meg a regiszterkiosztást. Utána utasításról utasításra szépen lapozgatva a doksit simán megérted, mit csinál, pláne kommentezett kódnál.
Egyébként meg nem létezhet olyan tool, ami assemblyből C-be fordít, mert pl. flag-ek nincsenek kezelve a C-ben, már egy elágazást sem tudsz visszafordítani. Persze az adott processzorhoz lehet írni egy ilyet, de aki annyira ért hozzá, az simán összelinkeli a C kódot az assemlby-vel. Igazából nem is értem, minek C-be fordítani...
Aktív témák
- iPhone topik
- Xiaomi 17 Ultra - jó az optikája
- PlayStation 5
- Crimson Desert
- Nagy aksival és erős hardverrel megjött Magyarországra a Poco X8 Pro és Pro Max
- Nem indul és mi a baja a gépemnek topik
- Kertészet, mezőgazdaság topik
- Revolut
- Pécs és környéke adok-veszek-beszélgetek
- Futás, futópályák
- További aktív témák...
- Xiaomi Redmi 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! Dell Latitude 5410 - i5-10GEN I 16GB I 256SSD I HDMI I 14" FHD I Cam I W11 I Garancia!
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Xbox One / Xbox Series játékok
- BESZÁMÍTÁS! Részletfizetés 0% THM ÚJ Sony PlayStation 5 Slim digital / lemezes / Pro konzol 27% áfa
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

