Svetelektro.com

Svetelektro.com

Meno:
Heslo:
SVETELEKTRO • ├Üprava k├│du v assembleri

Úprava kódu v assembleri

Moderátori: psichac, Moderátori

Úprava kódu v assembleri

Odosla┼ąod Brian01 » 03 Nov 2018, 01:27

Dobr├Ż de┼ł prajem, zap├í─Źil sa mi mera─Ź kapacity akumul├ítorov od DANYKA (http://danyk.cz/avr_aku.html) len┼że m├ím displej so spolo─Źnou kat├│dou. Vedel by niekto upravi┼ą (respekt├şve vysvetli┼ą mi ─Źo upravi┼ą za ─Źo) k├│d v pr├şlohe? ─Äakujem pekne.
Pr├şlohy
avr_aku.asm
(20.95 KiB) Stiahnutá 9 krát
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0

Re: Úprava kódu v assembleri

Odosla┼ąod peterple » 03 Nov 2018, 10:10

Pod─ża sch├ęmy je displej zapojen├Ż na port B a D. To si trochu ne┼í┼ąastne pomenoval autor ako PORT a PORT3
K├│d: Vybra┼ą v┼íetko
.EQU SMER=DDRD
.EQU PORT=PORTD
.EQU SMER2=DDRC
.EQU PORT2=PORTC
.EQU VSTUPY=PINC
.EQU SMER3=DDRB
.EQU PORT3=PORTB


pre zmenu ovladania displeja sta─Ź├ş negova┼ą v┼íetky hodnoty ktor├ę sa posielaj├║ na tieto porty. Ked┼że to m├í rozh├ídzan├ę na ve─ża miestach tak to treba zmeni┼ą v┼íade
─żahk├ę je to napr na konci kde je tabu─żka znakov.
K├│d: Vybra┼ą v┼íetko
; tabulka znakove sady (1gfedcba)
TABULKA:
.DB 0b11000000,0b11111001   ;0, 1
.DB 0b10100100,0b10110000   ;2, 3
.DB 0b10011001,0b10010010   ;4, 5
.DB 0b10000010,0b11111000   ;6, 7
.DB 0b10000000,0b10010000   ;8, 9
.DB 0b11111110,0b11111111   ;Nad, Nic

sta─Ź├ş zmeni┼ą 1 za nuly a naopak.

Podobne v┼íade kde sa pracuje s portom pomenovan├Żm PORT
K├│d: Vybra┼ą v┼íetko
LDI REG,0b11111111
OUT PORT,REG


a tie┼ż PORT3. Na┼ítastie to tam p├şsal pekne binarne tak┼że je to ─żahk├ę, len je toho ve─ża. (tak na 5 min├║t s CTRL-F)
K├│d: Vybra┼ą v┼íetko
MULT:            ;multiplex
LDI REG,0b000001
OUT PORT3,REG
Uk├í┼ż m├║dremu chybu a on sa ti po─Ćakuje. Uk├í┼ż chybu hlup├íkovi a on sa uraz├ş.
peterple
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 1772
Vek: 51.96
Zalo┼żen├Ż: 25.06.2013
Bydlisko: Krajn├ę
Karma: 48

Re: Úprava kódu v assembleri

Odosla┼ąod Brian01 » 03 Nov 2018, 14:34

─Äakujem ve─żmi pekne za odpove─Ć, no ve─żmi to nefungovalo. Jedin├ę ─Źo malo na lcd displej ako tak├Ż vplyv bolo ┼że oproti p├┤vodn├ęmu k├│du
K├│d: Vybra┼ą v┼íetko
START:
;nastav├ş port D
LDI REG,0b11111111
OUT SMER,REG
LDI REG,0b11111111
OUT PORT,REG

som to zmenil na
K├│d: Vybra┼ą v┼íetko
START:
;nastav├ş port D
LDI REG,0b11111111
OUT SMER,REG
LDI REG,0b00000000
OUT PORT,REG

S p├┤vodn├Żm k├│dom na displeji svieti 6.6.6.6.
V Assembleri som v ┼żivote neprogramoval, ─Źi┼że ke─Ć som da─Źo zle pochopil, alebo da─Źo rob├şm zle, nech├ím sa r├íd pou─Źi┼ą.
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0

Re: Úprava kódu v assembleri

Odosla┼ąod peterple » 03 Nov 2018, 20:41

Zmenil si to všade alebo len na tom jednom mieste?
Uk├í┼ż m├║dremu chybu a on sa ti po─Ćakuje. Uk├í┼ż chybu hlup├íkovi a on sa uraz├ş.
peterple
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 1772
Vek: 51.96
Zalo┼żen├Ż: 25.06.2013
Bydlisko: Krajn├ę
Karma: 48

Re: Úprava kódu v assembleri

Odosla┼ąod Brian01 » 03 Nov 2018, 22:28

Tak ako si p├şsal, v┼íade, no na displeji nesvietilo ni─Ź.
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0

Re: Úprava kódu v assembleri

Odosla┼ąod peterple » 04 Nov 2018, 08:56

Pozrel som ten k├│d znova a ako spieva Richard Miler - "Nebude to tak├ę ─żahk├ę, drah├í"


Je tam napr├şklad
K├│d: Vybra┼ą v┼íetko
MULT_A3:
MOV REG,CIF2
RCALL ZOBRAZ
CPI ROZREG,1
BRNE TECKA_A3_NE
ANDI REG,0b01111111
TECKA_A3_NE:
OUT PORT,REG
SBI PORT3,4
RET

Toto u┼ż je hor┼íie a v tom k├│de je tak├Żch miest pomerne dos┼ą kde sa hodnota posielan├í na PORT vypo─Ź├ştava. Jednoducho iba znegova┼ą tabu─żku znakov nesta─Ź├ş. Lebo ─Źasto tam nah├íd┼że in├ę hodnoty mimo tej tabulky. A SBI PORT3,x som si na prv├Ż n├íh─żad nev┼íimol.

K├│d: Vybra┼ą v┼íetko
MULT_A3:
MOV REG,CIF2
RCALL ZOBRAZ
CPI ROZREG,1
BRNE TECKA_A3_NE
ANDI REG,0b01111111
TECKA_A3_NE:
COM REG  ;Negacia REG pred vyslatim na PORT
OUT PORT,REG
CBI PORT3,4
RET


Tak┼że zmena pr├şstupu zober zase ten origo s├║bor. Nikde neprehazduj 0 na 1.
Potom pred ka┼żd├Ż riadok OUT PORT,xxx daj riadok COM xxx (vela miest)
pred ka┼żd├Ż riadok OUT PORT3,xxx da┼ą tie┼ż riadok COM xxx (dve miesta)
A v┼íetky SBI PORT3,x treba zmeni┼ą na CBI PORT3,x (tie┼ż ve─ża miest)

Ale naj─żah┼íie je k├║pi┼ą si spr├ívny displej.
Uk├í┼ż m├║dremu chybu a on sa ti po─Ćakuje. Uk├í┼ż chybu hlup├íkovi a on sa uraz├ş.
peterple
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 1772
Vek: 51.96
Zalo┼żen├Ż: 25.06.2013
Bydlisko: Krajn├ę
Karma: 48

Re: Úprava kódu v assembleri

Odosla┼ąod dan21 » 04 Nov 2018, 10:51

Mozno bude jednoduchsie investovat do spravneho dispaly-a :-) :-)
Ale ak sa chces zdokonalit v assembleri, tak toto je dobry zaciatok :-)
dan21
Obr├ízok pou┼ż├şvate─ża
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 2366
Zalo┼żen├Ż: 11.04.2007
Bydlisko: ZA
Karma: 17

Re: Úprava kódu v assembleri

Odosla┼ąod alidedko » 04 Nov 2018, 11:16

Nie, toto je velmi zly zaciatok.

Dobry zaciatok je vediet blikat ledkou.
Motto: Nikto nie je tak velky, aby sa nevosiel do truhly.
alidedko
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 3918
Vek: 26.77
Zalo┼żen├Ż: 04.02.2013
Bydlisko: U alibabky v Poprade
Paragraf: 21
Karma: 26

Re: Úprava kódu v assembleri

Odosla┼ąod dan21 » 04 Nov 2018, 11:19

Som si teraz precital, ze je v zivote v assembleri nerobil, takze potom je ta ledka spravny zaciatok :-) :-)
Asi kupit spravny display bude jednoduchsie :-)
dan21
Obr├ízok pou┼ż├şvate─ża
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 2366
Zalo┼żen├Ż: 11.04.2007
Bydlisko: ZA
Karma: 17

Re: Úprava kódu v assembleri

Odosla┼ąod Brian01 » 04 Nov 2018, 14:18

─Äakujem ve─żmi pekne za pomoc ale zmenil som to tak, no zasa ni─Ź, asi bude jednoduch┼íie k├║pi┼ą vhodn├Ż displej.
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0

Re: Úprava kódu v assembleri

Odosla┼ąod peterple » 04 Nov 2018, 18:11

tak posledn├Ż pokus. E┼íte som si uvedomil jednu chybu ─Źo som tam zavliekol. Tentoraz som to pre istotu prerobil u seba. Komplet upraven├Ż asm n├íjde┼í v pr├şlohe.
Pr├şlohy
avr_aku.asm
(21.19 KiB) Stiahnutá 12 krát
Uk├í┼ż m├║dremu chybu a on sa ti po─Ćakuje. Uk├í┼ż chybu hlup├íkovi a on sa uraz├ş.
peterple
Ultimate ─Źlen
Ultimate ─Źlen
Pr├şspevky: 1772
Vek: 51.96
Zalo┼żen├Ż: 25.06.2013
Bydlisko: Krajn├ę
Karma: 48

Re: Úprava kódu v assembleri

Odosla┼ąod Brian01 » 04 Nov 2018, 21:35

Ahoj, ─Ćakujem ve─żmi pekne za tak ve─żk├║ snahu, no nefungovalo, zo┼żeniem si in├Ż displej, tak├Ż ak├Ż m├í by┼ą, d├ím vedie┼ą ─Źi to p├┤jde. Ka┼żdop├ídne K+, tak├Żch ─żud├ş ako si ti nie je ─Źasto vidie┼ą, cen├şm si to...
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0

Re: Úprava kódu v assembleri

Odosla┼ąod Brian01 » 05 Nov 2018, 21:47

:applause: :applause: FUNGUJE !! :D K├║pil som displej, tak├Ż ak├Ż m├í by┼ą, a zobral som e┼íte zop├ír kry┼ít├ílov, idem vymeni┼ą displej, no ,,len tak pre istotu" som vymenil aj kry┼ít├íl. A ─Źuduj sa svete, s k├│dom ktor├Ż mi pom├íhal upravi┼ą peterple (ni┼ż┼íie) a moj├şm displejom so spolo─Źnou kat├│dou to fungovalo na prv├Ż kr├ít! ─ÄAKUJEM peterple, ve─żmi si toho cen├şm :thumbup: :thumbup:

peterple nap├şsal:Pozrel som ten k├│d znova a ako spieva Richard Miler - "Nebude to tak├ę ─żahk├ę, drah├í"


Je tam napr├şklad
K├│d: Vybra┼ą v┼íetko
MULT_A3:
MOV REG,CIF2
RCALL ZOBRAZ
CPI ROZREG,1
BRNE TECKA_A3_NE
ANDI REG,0b01111111
TECKA_A3_NE:
OUT PORT,REG
SBI PORT3,4
RET

Toto u┼ż je hor┼íie a v tom k├│de je tak├Żch miest pomerne dos┼ą kde sa hodnota posielan├í na PORT vypo─Ź├ştava. Jednoducho iba znegova┼ą tabu─żku znakov nesta─Ź├ş. Lebo ─Źasto tam nah├íd┼że in├ę hodnoty mimo tej tabulky. A SBI PORT3,x som si na prv├Ż n├íh─żad nev┼íimol.

K├│d: Vybra┼ą v┼íetko
MULT_A3:
MOV REG,CIF2
RCALL ZOBRAZ
CPI ROZREG,1
BRNE TECKA_A3_NE
ANDI REG,0b01111111
TECKA_A3_NE:
COM REG  ;Negacia REG pred vyslatim na PORT
OUT PORT,REG
CBI PORT3,4
RET


Tak┼że zmena pr├şstupu zober zase ten origo s├║bor. Nikde neprehazduj 0 na 1.
Potom pred ka┼żd├Ż riadok OUT PORT,xxx daj riadok COM xxx (vela miest)
pred ka┼żd├Ż riadok OUT PORT3,xxx da┼ą tie┼ż riadok COM xxx (dve miesta)
A v┼íetky SBI PORT3,x treba zmeni┼ą na CBI PORT3,x (tie┼ż ve─ża miest)

Ale naj─żah┼íie je k├║pi┼ą si spr├ívny displej.
Brian01
Okoloid├║ci
Okoloid├║ci
Pr├şspevky: 6
Zalo┼żen├Ż: 03.11.2018
Karma: 0


Nasp├Ą┼ą na Assembler

Kto je pr├ştomn├Ż

U┼ż├şvatelia prezeraj├║ci si toto f├│rum: ┼Żiadny registrovan├Ż pou┼ż├şvate─ż a 0 host├ş.

Forums ©
Autor str├ínky je Ondrej Z├ívodsk├Ż(zawin), o graficky design sa star├í ─Żubo┼í Fabo(BUFU).

TOPlist

Powered by Copyright © UNITED-NUKE CMS. All Rights Reserved.
─îas potrebn├Ż k spracovaniu str├ínky 0.77 sek├║nd