Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Z8 Assembler Programmierung » Themenansicht

Autor Thread - Seiten: -1-
000
Heute, 19:14 Uhr
Bea

Avatar von Bea

Hallo Zusammen,

ich habe mich mal dit dem U884 beschäftigt und im ZDS eine wenig programmiert.
Im Debugger mußte ich feststellen, daß die Register P01M, P2M und P3M nicht verändert wurden. Es steht immer 0xFF drinnen. Nun habe ich sie deirekt und inderekt versucht zu ändern aber ohne Erfolg.
Meine Frage: liegt das nun am Debugger oder am Befehl.

z.B.
LD P01M,#004h oder LD 0F8h,#004h
LD P2M,#000h oder LD 0F6h,#000h
LD P3M,#000h oder LD 0F7h,#000h

Bei jedem anderen Register kann ich sehen, daß die Werte übernommen werden.

Gruß
Bea
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
Heute, 19:16 Uhr
wpwsaw
Default Group and Edit


moin,

mit welcher Version arbeitest du und welchen Prozessor hast du eingestellt? Z86C91 wäre der richtige

Gruß
wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 19:17 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
Heute, 19:17 Uhr
Bea

Avatar von Bea

Version 3.68 und Prozessor ist Z8602
Dieser Beitrag wurde am 20.03.2026 um 19:20 Uhr von Bea editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
Heute, 19:26 Uhr
wpwsaw
Default Group and Edit


...du meinst sicherlich 3.68 und für den 8840 ist der Z86C91 besser nur man darf nicht alle Register nutzen.

ich programmiere diese Register z.B. immer so:


Quellcode:
LD P01M, #11010011b    ; P0 AD08 bis 15; P1 AD/DB0 bis 7
                                                ; externer Stack auf 0FDFFh
                                                ; Zeitverhalten normal
            
    ;;LD P2M,#0                         ; Steuerregister Port2 als Ausgabe
    LD P2M,#%FF                      ; PORT2 Eingabe
    LD P3M,#01000001b            ; Steuerregister Port2 mit Pull Up,
    OR P3, #00010000b             ; setze Port 34 High
                                               ; SIO ohne Parität


wpw


EDIT: das mit dem Prozessor hat mir ein Profi so gesagt.....
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 19:31 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
Heute, 19:36 Uhr
Bea

Avatar von Bea

Danke,

funktioniert alles nicht. Was ich aber sehen kann, wenn ich Daten auf das Port Schreibe - die Ausgabe geht. Nur bei Port3 bin ich nicht sicher, da ich die untere Hälft für Eingaben benutze.
Die drei Register enthalten immer 0xFF.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
Heute, 19:38 Uhr
wpwsaw
Default Group and Edit


...programmierst du echte Hardware?

was zeigt denn das Listing beim assemblieren an?

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 19:39 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
Heute, 19:44 Uhr
Bea

Avatar von Bea

Ja auch.
Die Ausgabe geht nur die Eingabe macht Probleme.

Ist ein UB8840 mit 24 Ausgängen und acht Eingängen.
Ich habe drei LED´s drauf die machen was sie sollen und beim Auswerten der Eingänge kommt nix raus sprich rein.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
Heute, 19:45 Uhr
Bea

Avatar von Bea

0000002D E6 F8 04 A 56 init ld P01M,#004h ; port0 out, port1 out, internal stack
00000030 E6 F6 00 A 57 ld P2M,#000h ; port2 out
00000033 E6 F7 00 A 58 ld P3M,#000h ; port3l in port3h out
00000036 AF A 59 ret

Dieser Beitrag wurde am 20.03.2026 um 19:46 Uhr von Bea editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
Heute, 20:05 Uhr
wpwsaw
Default Group and Edit


..wo nimmst du die 8 Eingänge her, du hast nur 4 Eingänge (P30-P33) als Eingang programmiert?

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
Heute, 20:12 Uhr
wpwsaw
Default Group and Edit


... es existieren Hardware-Unterschiede im I/O Bereich wechsel doch bitte mal den Prozessor....
und prüfe noch einmal ob du die richtigen Pins als Eingänge nutzt

wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
Heute, 20:13 Uhr
Bea

Avatar von Bea

Die acht Eingänge werden mit einen 74LS157 und P3.4 gemultiplext.
Die Schaltung habe ich schon etliche male aufgebaut und funtioniert auch nur eben nicht am U884 kommt nur Mist an.
P3.5 .. P3.7 sind LED´s angeschlossen

input
or P3,#SEL ; select e4..e8
clr R7
ld R7,P3
and R7,#00Fh
swap R7
ld R0,#SEL
com R0
and P3,R0
ld R0,P3
and R0,#00Fh
add R7,R0
com R7
ret
;

Dieser Beitrag wurde am 20.03.2026 um 20:13 Uhr von Bea editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
Heute, 20:34 Uhr
wpwsaw
Default Group and Edit


hast du auch die richtige Registergruppe? Weil du keine festgelegt hast.


und ist in SEL nur Bit4 = 1 ?
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 20:39 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
Heute, 20:36 Uhr
Bea

Avatar von Bea

SRP hab if auf #%10 gesetzt, damit sich R0 und P0 nicht beißen
Dieser Beitrag wurde am 20.03.2026 um 20:37 Uhr von Bea editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
Heute, 20:41 Uhr
wpwsaw
Default Group and Edit


...ich setze immer im Unterprogramm die Registergruppe.
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
Heute, 20:45 Uhr
wpwsaw
Default Group and Edit


warum negierst du zum Schluss noch einmal R7, da sind doch alle 8 Eingangsbit drin? Oder zeigen deine LEDs negiert an?
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 20:46 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
Heute, 20:47 Uhr
Bea

Avatar von Bea

So komplex ist meine Programm nicht, daß ich den Überblick verliere. Im Moment ist es ja nur erst einmal ein Test um mich mit dem Z8 zu befassen. Aber warte erst mal ab, wenn ich mit der Interrupt-Struktur befasse. :-)
Ich habe dafür eine Identische Schaltung mit einem MCS48 drauf (Für Später), weil die neueren Mikrokontroller mir zu störanfällig sind und trotz WDT immer abstürzen. Ich gute Erfahrungen mit den langsameren Kontrollern gemacht.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
Heute, 20:47 Uhr
Bert




Zitat:
Bea schrieb
Im Debugger mußte ich feststellen, daß die Register P01M, P2M und P3M nicht verändert wurden. Es steht immer 0xFF drinnen. Nun habe ich sie deirekt und inderekt versucht zu ändern aber ohne Erfolg.
Meine Frage: liegt das nun am Debugger oder am Befehl.


Das liegt am Register!
Es gibt beim Z8 einige Register, die man nicht zurücklesen kann:

--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
Heute, 20:56 Uhr
Bea

Avatar von Bea

Danke. Da kann ich ja lange nach Fehlern suchen und hoffen, daß was ich reingeschrieben habe auch angekommen ist.
Nun muß ich halt nur noch heruasfinden, warum im Debugger mein UNterprogramm funktioniert und in der Relität nicht.

Gruß
Bea
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
Heute, 20:58 Uhr
wpwsaw
Default Group and Edit


....
@Bert, es klärt sich alles auf ;-) zumindestens die erste Frage....

@Bea

morgen habe ich dafür keine Zeit, muss 2 Bremsventile an meinem W50 reparieren...

Aber Sonntag hole ich mal das Testboard mit direktem Zugang auf die Ports und teste auch mal. Aber es müßte funktionieren.....

Gruß
wpw

wie war das mit meiner Frage in 014?
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP

Dieser Beitrag wurde am 20.03.2026 um 20:58 Uhr von wpwsaw editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
Heute, 21:03 Uhr
Bea

Avatar von Bea

Danke wpw.

Bremsventile reparieren, kannste mal meine rechte Frontachse an meine Landrover tauschen ;-). Krieg die Schrauben nicht lose.

Gruß
Bea
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
Heute, 21:09 Uhr
wpwsaw
Default Group and Edit


...mit einem kleinen Schlagschrauber probieren, das Ruckartige kann Schrauben losschlagen ohne sie abzureißen. Sonst nutze ich keine Schlagschrauber, per Hand ist besser.

hier mein Testboard


wpw
--
RECORD, CRN1; CRN2; PicoDat; LC80; Poly880; KC85/2,3,4,5 ; KC87; Z1013; BIC; PC1715; K8915; K8924; A7100; A7150; EC1834; und P8000 ab jetzt ohne Tatra813-8x8 aber mit W50LA/Z/A; P3; ES175/2 und Multicar M25 3SK; Barkas B1000 HP
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
Heute, 21:25 Uhr
Bea

Avatar von Bea

Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek