Kódový zámek s atmel2051
Napsal: 23 úno 2009, 22:44
Dobry den, zostavil som si
ked chcem dany program skompilovat pre 2051 objavi sa tam mnozstvo cchyb.
Pripajam log:
neviem ako ďalej. Prosim o pomoc. Vďaka
Kód: Vybrat vše
http://elektronika.kvalitne.cz/ATMEL/kodzamek1/KodZamek2.htmlked chcem dany program skompilovat pre 2051 objavi sa tam mnozstvo cchyb.
Pripajam log:
Kód: Vybrat vše
PAGE 1
1 #0000
****--------------------------------^
****ERROR #8: Illegal assembly line
2 ;pro prekladac ASM51
3 ;nastaveno pro krystal 12MHz
0020 4 bseg at 20h
0020 5 Stav: dbit 1
0021 6 Pipat: dbit 1
0022 7 PrvniStisk: dbit 1
0023 8 KodzEEPROM: dbit 1
0024 9 NovyKod: dbit 1
10
0030 11 dseg at 30h
0030 12 Zasobnik: ds 40
0058 13 PipT: ds 1
0059 14 PipN: ds 1
005A 15 PipD: ds 1
005B 16 PipL: ds 1
17 ;definice vstupu/vystupu
0000 18 SCL equ P3.0 ;hodiny EEPROM
****-------------------------------------------^
****ERROR #17: Illegal bit designator
0000 19 SDA equ P3.1 ;data EEPROM
****-------------------------------------------^
****ERROR #17: Illegal bit designator
20 ;adresovaci vyvody A0 - A2 musi byt uzemneny
0000 21 Pipak equ P3.5 ;vystup pro piezo a LED
****-------------------------------------------^
****ERROR #17: Illegal bit designator
0000 22 SaveKod equ P3.4 ;vkladani noveho kodu (pri log.0)
****-------------------------------------------^
****ERROR #17: Illegal bit designator
0000 23 Vystup equ P3.7 ;vystup (aktivni - log.0)
****-------------------------------------------^
****ERROR #17: Illegal bit designator
0000 24 ModeSelect equ P3.3 ;volba modu
****---------------------------------------------------^
****ERROR #17: Illegal bit designator
25 ;0 - kodem zapni, kodem vypni
26 ;1 - Kodem zapni, vypne samo po nastavene dobe
000A 27 ZpozdeneOff equ 10 ;zpozdene vypnuti (od 4!!! do 255 vterin)
0037 28 Vterina equ 55 ;timto se nastavuje delka 1 vteriny
0050 29 AutoResetTime equ 80 ;doba za kterou se od posledniho stisku
30 ;resetuje kod, 25=asi 1 vterina
31 ;zacatek kodu
---- 32 cseg
33 ;pocatecni nastaveni nekterych neuzitecnych promennych
0000 7500FF 34 Init: mov P1,#255
****----------------------------------------^
****ERROR #2: Undefined symbol
0003 7500FF 35 mov P3,#255
****----------------------------------------^
****ERROR #2: Undefined symbol
0006 7D00 36 mov R5,#0
0008 7E00 37 mov R6,#0
000A 750030 38 mov sp,#Zasobnik
****----------------------------------------^
****ERROR #2: Undefined symbol
ZAMEK PAGE 2
000D D220 39 setb Stav
000F D221 40 setb Pipat
0011 C223 41 clr KodzEEPROM
0013 D222 42 setb PrvniStisk
0015 C224 43 clr NovyKod
0017 C200 44 clr rs0
****----------------------------------------^
****ERROR #2: Undefined symbol
0019 C200 45 clr rs1
****----------------------------------------^
****ERROR #2: Undefined symbol
001B 7400 46 mov a,#0
001D 750001 47 mov b,#1
****----------------------------------------^
****ERROR #2: Undefined symbol
0020 3126 48 acall Delay
49 ;zacatek programu
50 ;je pripojena EEPROM ?
0022 31FE 51 acall I2CStart
0024 74A0 52 mov a,#10100000b
0026 513A 53 acall I2CPosilej
0028 401D 54 jc EEPROMNeni
55 ;zjisti jesi v ni neco je
002A 7400 56 mov a,#00000000b
002C 513A 57 acall I2CPosilej
002E 31FE 58 acall I2CStart
0030 74A1 59 mov a,#10100001b
0032 513A 60 acall I2CPosilej
0034 5116 61 acall I2CCti
0036 510D 62 acall I2CStop
63 ;vkladani noveho kodu?
0038 200007 64 jb SaveKod,EEPROMJe
65 ;do EEPROM se bude vkladat kod
003B 51BC 66 PodelalTo: acall SmazUvodniZ
003D D224 67 setb NovyKod
003F 02025C 68 jmp ZapisZnakuu
69 ;z EEPROM se bude cist kod
0042 B46402 70 EEPROMJe: cjne a,#100,EEPROMNeni
0045 D223 71 EEPROMJeTest: setb KodzEEPROM
72 ;pamet neni pripojena
0047 740A 73 EEPROMNeni: mov a,#10
0049 750014 74 mov b,#20
****----------------------------------------^
****ERROR #2: Undefined symbol
004C 3126 75 acall Delay
004E 7E00 76 mov R6,#0
77
78 ;porovnavani cisla kodu se zadanym cislem
79 ;reset
80 ;nejdriv zjisti jesi se zapisuje novy kod
0050 302412 81 Reset: jnb NovyKod,Neres1
82 ;jo zapisuje
0053 EE 83 mov a,R6
84 ;jesi R6=0, tak to neres a skoc na Neres1
0054 600F 85 jz Neres1
86 ;R6 vetsi nez 0, takze to nekdo podelal - 3x dlouze pipni
0056 7419 87 mov a,#25
0058 750032 88 mov b,#50
****----------------------------------------^
ZAMEK PAGE 3
****ERROR #2: Undefined symbol
005B 3126 89 acall Delay
005D 31B8 90 acall Pip3xLong
91 ;a vrat se na zacatek zadavani noveho kodu
005F D222 92 setb PrvniStisk
0061 7E00 93 mov R6,#0
0063 80D6 94 jmp PodelalTo
95 ;normalni reset
0065 7E00 96 Neres1: mov R6,#0 ;pozice znaku v kodu
0067 7B00 97 mov R3,#0
98 ;smycka, kde se ctou tlacitka
0069 3139 99 Smycka: acall CtiButony
006B 0B 100 inc R3
006C BB5002 101 cjne R3,#AutoResetTime,DalRad1
006F 80DF 102 jmp Reset
0071 60F6 103 DalRad1: jz Smycka
0073 7B00 104 mov R3,#0
0075 318B 105 acall Pip1xShort
106 ;prekodovani klavesnice
0077 9002D4 107 mov dptr,#Dekoder
007A 93 108 movc a,@a+dptr
007B FF 109 mov R7,a ;v R7 stisknute cislo
110 ;nacteni R6-teho cisla
111 ;vyber jestli z PROM nebo EEPROM
007C 202308 112 jb KodzEEPROM,Pamet1
113 ;z PROM
007F 9002CD 114 mov dptr,#Kod
0082 EE 115 mov a,R6
0083 93 116 movc a,@a+dptr
0084 02009B 117 jmp DeASCII
118 ;z EEPROM
0087 31FE 119 Pamet1: acall I2CStart
0089 74A0 120 mov a,#10100000b
008B 513A 121 acall I2CPosilej
008D EE 122 mov a,R6
008E 04 123 inc a
008F 513A 124 acall I2CPosilej
0091 31FE 125 acall I2CStart
0093 74A1 126 mov a,#10100001b
0095 513A 127 acall I2CPosilej
0097 5116 128 acall I2CCti
0099 510D 129 acall I2CStop
130 ;prevod z ASCII na norm. cislo
009B C3 131 DeASCII: clr c
009C 9430 132 subb a,#48
133 ;srovnani
009E 6F 134 xrl a,R7
009F 0E 135 inc R6 ;dalsi cislo v kodu
00A0 70AE 136 jnz Reset ;kdyz nesedi, tak reset
137 ;uz konec?
138 ;vyber jestli z PROM nebo EEPROM
139 ;z PROM
00A2 202305 140 jb KodzEEPROM,Pamet2
00A5 EE 141 mov a,R6
00A6 93 142 movc a,@a+dptr
00A7 0200BE 143 jmp UzKonecKodu
144 ;z EEPROM
ZAMEK PAGE 4
00AA 31FE 145 Pamet2: acall I2CStart
00AC 74A0 146 mov a,#10100000b
00AE 513A 147 acall I2CPosilej
00B0 EE 148 mov a,R6
00B1 04 149 inc a
00B2 513A 150 acall I2CPosilej
00B4 31FE 151 acall I2CStart
00B6 74A1 152 mov a,#10100001b
00B8 513A 153 acall I2CPosilej
00BA 5116 154 acall I2CCti
00BC 510D 155 acall I2CStop
156 ;ted to zkus
00BE B4FF63 157 UzKonecKodu: cjne a,#255,DalsiProsim
158 ;uz to byl konec
159 ;prubni jestli slo o zapis noveho kodu do pameti
00C1 30240D 160 jnb NovyKod,Pamet3
161 ;zapis noveho kodu - zapis uvodniho znaku
00C4 51AB 162 acall ZapisUvodniZ
163 ;zpozdeni a 3x pip
00C6 741E 164 mov a,#30
00C8 750019 165 mov b,#25
****----------------------------------------^
****ERROR #2: Undefined symbol
00CB 3126 166 acall Delay
00CD 319A 167 acall Pip3xShort
00CF 80FE 168 jmp $ ;zacykleni
169 ;sepni / vypni vystup
00D1 741E 170 Pamet3: mov a,#30
00D3 750019 171 mov b,#25
****----------------------------------------^
****ERROR #2: Undefined symbol
00D6 3126 172 acall Delay
173 ;konec zpozdeni
174 ;mod 1 nebo 2 ?
00D8 200037 175 jb ModeSelect,Mode1
176 ;mod 2
177 ;zapnuti
00DB 319A 178 acall Pip3xShort
00DD C200 179 clr Vystup
00DF C220 180 clr Stav
181 ;vypnuti
00E1 740A 182 mov a,#ZpozdeneOff
00E3 C3 183 clr c
00E4 9404 184 subb a,#4
00E6 F8 185 mov R0,a
186 ;tu cekej ZpozdeneOff - 4 vterin a blikej LEDkou
00E7 7437 187 Mode2Loop1: mov a,#Vterina
00E9 750023 188 mov b,#35
****----------------------------------------^
****ERROR #2: Undefined symbol
00EC 3126 189 acall Delay
00EE C221 190 clr Pipat
00F0 318B 191 acall Pip1xShort
00F2 D221 192 setb Pipat
00F4 D8F1 193 djnz R0,Mode2Loop1
194 ;tu cekej 3 vteriny a jeste pipej
00F6 7803 195 mov R0,#3
00F8 7437 196 Mode2Loop2: mov a,#Vterina
ZAMEK PAGE 5
00FA 750023 197 mov b,#35
****----------------------------------------^
****ERROR #2: Undefined symbol
00FD 3126 198 acall Delay
00FF 318B 199 acall Pip1xShort ;1x pipni
0101 D8F5 200 djnz R0,Mode2Loop2
201 ;tu uz pipni dlouze a deaktivuj vystup
0103 7437 202 mov a,#Vterina
0105 75001E 203 mov b,#30
****----------------------------------------^
****ERROR #2: Undefined symbol
0108 3126 204 acall Delay
010A 31A9 205 acall Pip1xLong ;1x dlouze pipni
010C D200 206 setb Vystup
010E D220 207 setb Stav
0110 0150 208 jmp Reset
209 ;mod 1
0112 302005 210 Mode1: jnb Stav,LongPip
0115 319A 211 acall Pip3xShort
0117 02011C 212 jmp ShortPip
011A 31A9 213 LongPip: acall Pip1xLong
011C B220 214 ShortPip: cpl Stav
011E A220 215 mov c,Stav
0120 9200 216 mov Vystup,c
0122 0150 217 jmp Reset
218 ;bec!
0124 0169 219 DalsiProsim: jmp Smycka
220 ;zpozdovaci smycka
0126 D200 221 Delay: setb rs1
****----------------------------------------^
****ERROR #2: Undefined symbol
0128 A800 222 mov R0,b
****-------------------------------------------^
****ERROR #2: Undefined symbol
012A F9 223 Delay2: mov R1,a
012B 7AFF 224 Delay1: mov R2,#255
012D DAFE 225 djnz R2,$
012F D9FA 226 djnz R1,Delay1
0131 D8F7 227 djnz R0,Delay2
0133 750001 228 mov b,#1
****----------------------------------------^
****ERROR #2: Undefined symbol
0136 C200 229 clr rs1
****----------------------------------------^
****ERROR #2: Undefined symbol
0138 22 230 ret
231 ;cteni maticovych tlacitek do a
232 ;(detekuji se pouze zmeny oproti minulemu cteni, jinak a = 0)
0139 7A00 233 CtiButony: mov R2,#0
013B 7900 234 mov R1,#0
013D 7FFE 235 mov R7,#11111110b
013F 8F00 236 mov P1,R7
****----------------------------------------^
****ERROR #2: Undefined symbol
237 ;2x osetreni zakmitu
0141 A800 238 PrubniJestli: mov R0,P1
****---------------------------------------------------^
****ERROR #2: Undefined symbol
ZAMEK PAGE 6
0143 7405 239 mov a,#5
0145 3126 240 acall Delay
0147 E500 241 mov a,P1
****------------------------------------------^
****ERROR #2: Undefined symbol
0149 FC 242 mov R4,a
014A 68 243 xrl a,R0
014B 70F4 244 jnz PrubniJestli
014D 7405 245 mov a,#5
014F 3126 246 acall Delay
0151 A800 247 mov R0,P1
****-------------------------------------------^
****ERROR #2: Undefined symbol
0153 EC 248 mov a,R4
0154 68 249 xrl a,R0
0155 70EA 250 jnz PrubniJestli
0157 EC 251 mov a,R4
252 ;testik, jestli je v tomhle radku neco stiskly
0158 F4 253 cpl a
0159 5470 254 anl a,#01110000b
015B 600A 255 jz DalsiRadek
015D B90024 256 cjne R1,#0,Chyba ;nekdo zmackl 2 tlacitka zaroven
0160 23 257 rl a
258 ;vyhodnoceni v kterym sloupci je to stiskly
0161 09 259 KerejSloupec: inc R1
0162 33 260 rlc a
0163 50FC 261 jnc KerejSloupec
0165 701D 262 jnz Chyba ;nejakej vul zmackl 2 tlacitka zaroven
263 ;cti dalsi radek
0167 E9 264 DalsiRadek: mov a,R1
0168 7004 265 jnz UzNasel
016A EA 266 mov a,R2
016B 2403 267 add a,#3
016D FA 268 mov R2,a
016E EF 269 UzNasel: mov a,R7
016F 23 270 rl a
0170 300005 271 jnb acc.4,Hotovo
****----------------------------------------^---^
****ERROR #2: Undefined symbol
****ERROR #17: Illegal bit designator
0173 FF 272 mov R7,a
0174 F500 273 mov P1,a
****----------------------------------------^
****ERROR #2: Undefined symbol
0176 80C9 274 jmp PrubniJestli
275 ;talcitko zjisteny a stiskly jen jedno
0178 E9 276 Hotovo: mov a,R1
0179 6009 277 jz Chyba
017B C3 278 clr c
017C 2A 279 add a,R2
017D FC 280 mov R4,a
017E 6D 281 xrl a,R5
017F 6007 282 jz Stejne
0181 EC 283 mov a,R4
0182 FD 284 mov R5,a
0183 22 285 ret
286 ;nekdo stiskl 2 a vic zaroven nebo nic
0184 7400 287 Chyba: mov a,#0
ZAMEK PAGE 7
0186 FD 288 mov R5,a
0187 22 289 ret
290 ;predchozi cteni stejny jako ted
0188 7400 291 Stejne: mov a,#0
018A 22 292 ret
293
294 ;1x kratky pipnuti
018B 755901 295 Pip1xShort: mov PipN,#1 ;pocet pipnuti
018E 755B0F 296 mov PipL,#15 ;delka pipnuti
0191 755A0A 297 mov PipD,#10 ;mezera mezi pipnutimi
0194 75584B 298 mov PipT,#75 ;1/frekvence tonu
0197 31C7 299 acall Pipani
0199 22 300 ret
301 ;3x kratky pipnuti
019A 755903 302 Pip3xShort: mov PipN,#3 ;pocet pipnuti
019D 755B0F 303 mov PipL,#15 ;delka pipnuti
01A0 755A0A 304 mov PipD,#10 ;mezera mezi pipnutimi
01A3 75584B 305 mov PipT,#75 ;1/frekvence tonu
01A6 31C7 306 acall Pipani
01A8 22 307 ret
308 ;1x dlouhy pipnuti
01A9 755901 309 Pip1xLong: mov PipN,#1 ;pocet pipnuti
01AC 755B96 310 mov PipL,#150 ;delka pipnuti
01AF 755A01 311 mov PipD,#1 ;mezera mezi pipnutimi
01B2 75584B 312 mov PipT,#75 ;1/frekvence tonu
01B5 31C7 313 acall Pipani
01B7 22 314 ret
315 ;3x dlouhy pipnuti
01B8 755903 316 Pip3xLong: mov PipN,#3 ;pocet pipnuti
01BB 755B96 317 mov PipL,#150 ;delka pipnuti
01BE 755A14 318 mov PipD,#20 ;mezera mezi pipnutimi
01C1 75584B 319 mov PipT,#75 ;1/frekvence tonu
01C4 31C7 320 acall Pipani
01C6 22 321 ret
322 ;valstni generator pipani
323 ;PipT - 1/frekvence
324 ;PipN - pocet pipnuti
325 ;PipD - prodleva mezi pipanim
326 ;PipL - delka pipnuti
01C7 D200 327 Pipani: setb rs0
****----------------------------------------^
****ERROR #2: Undefined symbol
328 ;pocet pipnuti
01C9 AB59 329 mov R3,PipN
01CB 330 PipNRun1: ;ton + delka pipnuti
01CB A95B 331 mov R1,PipL
01CD 7F0A 332 PipLRun1: mov R7,#10
01CF A858 333 PipLRun2: mov R0,PipT
01D1 D8FE 334 djnz R0,$
01D3 C200 335 clr Pipak
01D5 A858 336 mov R0,PipT
01D7 D8FE 337 djnz R0,$
01D9 302102 338 jnb Pipat,Nepipej
01DC D200 339 setb Pipak
01DE DFEF 340 Nepipej: djnz R7,PipLRun2
01E0 D9EB 341 djnz R1,PipLRun1
342 ;delka mezery
01E2 D200 343 setb Pipak
ZAMEK PAGE 8
01E4 BB0103 344 cjne R3,#1,PipDRun
01E7 0201F6 345 jmp PipKonec
01EA AA5A 346 PipDRun: mov R2,PipD
01EC 7E0F 347 PipDRun1: mov R6,#15
01EE 7F00 348 PipDRun2: mov R7,#0
01F0 DFFE 349 djnz R7,$
01F2 DEFA 350 djnz R6,PipDRun2
01F4 DAF6 351 djnz R2,PipDRun1
352 ;patri k poctu pipnuti
01F6 DBD3 353 PipKonec: djnz R3,PipNRun1
354 ;konec
01F8 C200 355 clr rs0
****----------------------------------------^
****ERROR #2: Undefined symbol
01FA 22 356 ret
357 ;tu je skoro vse se sbernici I2C
358 ;zpozdeni pro I2C
01FB 00 359 DelS: nop
01FC 00 360 nop
01FD 22 361 ret
362 ;I2C start
01FE D200 363 I2CStart: setb SDA
0200 D200 364 setb SCL
0202 31FB 365 acall DelS
0204 C200 366 clr SDA
0206 31FB 367 acall DelS
0208 C200 368 clr SCL
020A 31FB 369 acall DelS
020C 22 370 ret
371 ;I2C stop
020D D200 372 I2CStop: setb SCL
020F 31FB 373 acall DelS
0211 D200 374 setb SDA
0213 31FB 375 acall DelS
0215 22 376 ret
377 ;cteni bytu z I2C do a
0216 7808 378 I2CCti: mov R0,#8
0218 D200 379 setb SDA
021A 31FB 380 acall DelS
021C D200 381 Cti1: setb SCL
021E 31FB 382 acall DelS
0220 A200 383 mov c,SDA
0222 C200 384 clr SCL
0224 31FB 385 acall DelS
0226 33 386 rlc a
0227 D8F3 387 djnz R0,Cti1
388 ;ACK
0229 D200 389 setb SDA
022B 31FB 390 acall DelS
022D D200 391 setb SCL
022F 31FB 392 acall DelS
0231 C200 393 clr SCL
0233 31FB 394 acall DelS
0235 C200 395 clr SDA
0237 31FB 396 acall DelS
0239 22 397 ret
398 ;posilani bytu z a na sbernici I2C
023A 7808 399 I2CPosilej: mov R0,#8
ZAMEK PAGE 9
023C 33 400 Posilej1: rlc a
023D 9200 401 mov SDA,c
023F 31FB 402 acall DelS
0241 D200 403 setb SCL
0243 31FB 404 acall DelS
0245 C200 405 clr SCL
0247 31FB 406 acall DelS
0249 D8F1 407 djnz R0,Posilej1
408 ;do c nacti ACK
024B D200 409 setb SDA
024D 31FB 410 acall DelS
024F D200 411 setb SCL
0251 31FB 412 acall DelS
0253 A200 413 mov c,SDA
0255 C200 414 clr SCL
0257 31FB 415 acall DelS
0259 C200 416 clr SDA
025B 22 417 ret
418 ;ukladani cisel do pameti
419 ;cteni klavesnice
025C 3139 420 ZapisZnakuu: acall CtiButony
025E 202207 421 jb PrvniStisk,JesteNeSave
0261 0B 422 inc R3
0262 BB5003 423 cjne R3,#AutoResetTime,JesteNeSave
0265 020290 424 jmp SaveNovyKod
0268 60F2 425 JesteNeSave: jz ZapisZnakuu
426 ;plna pamet?
026A BEFE03 427 cjne R6,#254,NePlnaEEP
026D 020290 428 jmp SaveNovyKod
429 ;prekodovat a prevest na ASCII
0270 9002D4 430 NePlnaEEP: mov dptr,#Dekoder
0273 93 431 movc a,@a+dptr
0274 2430 432 add a,#48
0276 C000 433 push acc
****----------------------------------------^
****ERROR #2: Undefined symbol
0278 7B00 434 mov R3,#0
027A 318B 435 acall Pip1xShort
027C C222 436 clr PrvniStisk
027E 0E 437 inc R6
438 ;ulozit stiskle tlacitko do pameti
027F 31FE 439 acall I2CStart
0281 74A0 440 mov a,#10100000b
0283 513A 441 acall I2CPosilej
0285 EE 442 mov a,R6
0286 513A 443 acall I2CPosilej
0288 D000 444 pop acc
****----------------------------------------^
****ERROR #2: Undefined symbol
028A 513A 445 acall I2CPosilej
028C 510D 446 acall I2CStop
028E 80CC 447 jmp ZapisZnakuu
448 ;zapis zaverecneho znaku (#255) do pameti
0290 0E 449 SaveNovyKod: inc R6
0291 31FE 450 acall I2CStart
0293 74A0 451 mov a,#10100000b
0295 513A 452 acall I2CPosilej
0297 EE 453 mov a,R6
ZAMEK PAGE 10
0298 513A 454 acall I2CPosilej
029A 74FF 455 mov a,#255
029C 513A 456 acall I2CPosilej
029E 510D 457 acall I2CStop
02A0 740A 458 mov a,#10
02A2 750014 459 mov b,#20
****----------------------------------------^
****ERROR #2: Undefined symbol
02A5 3126 460 acall Delay
02A7 319A 461 acall Pip3xShort
02A9 0145 462 jmp EEPROMJeTest
463 ;zapis uvodniho znaku (#100)
02AB 31FE 464 ZapisUvodniZ: acall I2CStart
02AD 74A0 465 mov a,#10100000b
02AF 513A 466 acall I2CPosilej
02B1 7400 467 mov a,#00000000b
02B3 513A 468 acall I2CPosilej
02B5 7464 469 mov a,#100
02B7 513A 470 acall I2CPosilej
02B9 510D 471 acall I2CStop
02BB 22 472 ret
473 ;"smaz" (zapis #255) uvodni znak
02BC 31FE 474 SmazUvodniZ: acall I2CStart
02BE 74A0 475 mov a,#10100000b
02C0 513A 476 acall I2CPosilej
02C2 7400 477 mov a,#00000000b
02C4 513A 478 acall I2CPosilej
02C6 74FF 479 mov a,#255
02C8 513A 480 acall I2CPosilej
02CA 510D 481 acall I2CStop
02CC 22 482 ret
483
484 ;tu se pise vlastni kod (max. 255 cifer :-), pouzitelne jsou cisla 0-9, # a *
02CD 35353538 485 Kod: db '555823'
02D1 3233
486 ; 255 zakoncuje kod - nemenit !!
02D3 FF 487 db 255
488 ;sloupce se ctou v poradi P1.6, P1.5 a P1.4
489 ;radky se ctou v poradi P1.0, P1.1, P1.2 a P1.3
490 ;tady uvadim priklad jak to nastavit a zapojit
491 ;
492 ; P1.4 P1.5 P1.6
493 ; | | |
494 ; P1.3 -- 7 --- 8 --- 9
495 ; | | |
496 ; P1.2 -- 4 --- 5 --- 6
497 ; | | |
498 ; P1.1 -- 1 --- 2 --- 3
499 ; | | |
500 ; P1.0 -- * --- 0 --- #
501 ;
02D4 FA 502 Dekoder: db 250 ;tohle nemenit
503 ;takze jsem si zvolil nejake pripojeni P1.0 az P1.6 ke klavesnici (nakres nahore)
504 ;tak jak jsem to zapojil to tedy znamena,
505 ;ze se cte po radcich zprava doleva a od spodu nahoru
506 ;takze uz jen pisu cisla tak je ctu porade, cili:
02D5 F300FA03 507 db 243,0,250,3,2,1,6,5,4,9,8,7
02D9 02010605
ZAMEK PAGE 11
02DD 04090807
508 ;# = 243, * = 250 a tyto 2 znaky lze v kodu pouzivat take
509 ;ps.: takhle jsem to zapojil jen proto, aby se mi dobre kreslilo schema :-)
510 ;ale muze to byt libovolne prehazene
511
512 end
VERSION 1.2h ASSEMBLY COMPLETE, 36 ERRORS FOUND
ERROR SUMMARY:
Line #1, ERROR #8: Illegal assembly line
Line #18, ERROR #17: Illegal bit designator
Line #19, ERROR #17: Illegal bit designator
Line #21, ERROR #17: Illegal bit designator
Line #22, ERROR #17: Illegal bit designator
Line #23, ERROR #17: Illegal bit designator
Line #24, ERROR #17: Illegal bit designator
Line #34, ERROR #2: Undefined symbol
Line #35, ERROR #2: Undefined symbol
Line #38, ERROR #2: Undefined symbol
Line #44, ERROR #2: Undefined symbol
Line #45, ERROR #2: Undefined symbol
Line #47, ERROR #2: Undefined symbol
Line #74, ERROR #2: Undefined symbol
Line #88, ERROR #2: Undefined symbol
Line #165, ERROR #2: Undefined symbol
Line #171, ERROR #2: Undefined symbol
Line #188, ERROR #2: Undefined symbol
Line #197, ERROR #2: Undefined symbol
Line #203, ERROR #2: Undefined symbol
Line #221, ERROR #2: Undefined symbol
Line #222, ERROR #2: Undefined symbol
Line #228, ERROR #2: Undefined symbol
Line #229, ERROR #2: Undefined symbol
Line #236, ERROR #2: Undefined symbol
Line #238, ERROR #2: Undefined symbol
Line #241, ERROR #2: Undefined symbol
Line #247, ERROR #2: Undefined symbol
Line #271, ERROR #2: Undefined symbol
Line #271, ERROR #17: Illegal bit designator
Line #273, ERROR #2: Undefined symbol
Line #327, ERROR #2: Undefined symbol
Line #355, ERROR #2: Undefined symbol
Line #433, ERROR #2: Undefined symbol
Line #444, ERROR #2: Undefined symbol
Line #459, ERROR #2: Undefined symbol
neviem ako ďalej. Prosim o pomoc. Vďaka