PIC-Microcontroller

Elektronik u. Mikrocontroller => Compiler Software => Thema gestartet von: picass in 17.10.2024, 19:02:29 CEST

Titel: Seltsames Programmieren
Beitrag von: picass in 17.10.2024, 19:02:29 CEST
Versuche schon seit geraumer Zeit, so etwas Einfaches wie eine Übersetzung eines Progs, welches in der Alt-Form der Assemblersprache unter MPASM geschrieben wurde. Übrigens von dem Übervater "Sprut". Da gibts Dinge, rsp. Ausdrücke, an denen ich mich festbeiße, aber auch solche, über die ich nur den Kopf schütteln kann. Das erste Beispiel passt wohl für Beides. Da geht es in einem Prog - geschrieben für einen PIC16F84 - um die Initialisierung und letztlich die Ausgabe von Text auf ein LCD-Display. In der Ausgaberoutine "Hallo ausgeben" finden sich solche Zeilen wie:
- movlw 'H'
- movwf OutLcdDaten

Was habe ich übersehen? Bei diesem Befehl wird doch eine Zahl übergeben und kein Buchstabe?!
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 17.10.2024, 20:08:20 CEST
Nochmals, da ist was dumm gelaufen, daher eine Bitte an den ADMIN den vorhergehenden Beitrag zu löschen!

movlw "H"                  schreibt den Wert Ascii(72) ins WREG
movwf OutLcdDten überträgt den  Inhalt des WREG in die Variable OutLcdDaten

Danach wird eine Subroutine zur Ausgabe des Zeichens aufgerufen.
Bei mir etwa so:

movlw  "H"
CALL        OutLcd_Data:
;..........................
  OutLcd_Data:
      ;sends 1 data-byte through the LCD 4bit-interface (2 nibbles)
  movwf    LcdData          ;copy Instruction from WREG to variable
  CALL    LcdBusy          ;LCD ready to receive next instruction?
  movf    LcdData,w        ;contents LCD-Data (Charakter)
  ANDLW    b'11110000'      ;Bitmask to select HI-nibble
  BANKSEL  LCD_LAT          ;Wechsel zu Bank 2
  movwf    LCD_LAT          ;LCD_PORT write Nibble to 4bit-databus
  bsf      LCD_RS            ;1=LCD-Data-mode
  bsf      LCD_E            ;enable LCD 4bit-databus
  nop                        ;toggle
  bcf      LCD_E            ;disable databus
  BANKSEL  0
  swapf    LcdData, w        ;change the nibbles
  andlw    b'11110000'      ;Bitmask to select the LO-nibble
  BANKSEL  LCD_LAT
  movwf    LCD_LAT          ;LATx /LCD_PORT write Nibble to 4bit-bus
  bsf      LCD_RS            ;1=LCD-Data-mode
  bsf      LCD_E            ;enable LCD 4bit-databus
  nop                        ;toggle
  bcf      LCD_E            ;databus is now disabled 
  bcf      LCD_RS            ;=0 LCD-control-mode
  BANKSEL  0                ;bank 0
  RETURN


Funktion:
LcdData = b'01001000' = d'72" = 0x48
Mit LcdBusy wird gefragt, ob das LCD mit etwas anderem beschäftig ist, z.B. einer anderen Ausgabe. Das Byte wird nun in sein oberes, bzw. unteres Nibble zerlegt und jedes Nibble wird einzeln mit
bsf Lcd_E in das LCD übertragen.
bsf LCD_RS schaltet das LCD auf Datenempfang um.
Daten: ausgebbare zeichen
bcf LCD_RS wird verwendet wenn eine Instruktion, z.B. eine Ausgabeadress verwendet werden soll.

mfG Ottmar
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 18.10.2024, 09:22:36 CEST
Nachtrag: Natürlich wird so der Buchstabe "H" im LCD ausgegeben.
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 18.10.2024, 09:51:26 CEST
ich bin mir nicht sicher ob es nicht:
movlw  'H'
anstatt
movlw  "H"heißen muss
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 18.10.2024, 11:05:25 CEST
Sicher ist ein Apostroph richtig.
Anbei: das ist typisch für die vieeeelen Stolperstellen, mit denen man leben muss, wenn man nicht täglich und beruflich, sondern als Gelegenheitstäter sich auf Assembler einlässt.

Danke, Ottmar, für deine Erläuterung und dein Beispiel. Werde heute im Laufe des Tages das zu verarbeiten versuchen. Bitte bleibt in diesem Fred am Ball, es gibt noch Anderes, was mir die vermeindlich "einfache Übersetzung" vom alten MPASM zur mittleren Version des MPASM X [bis Version 5.35] schwer macht.
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 18.10.2024, 11:45:56 CEST
Zitat"einfache Übersetzung" vom alten MPASM zur mittleren Version des MPASM X

kannst Du den Assembler MPASM nicht integrieren? Ich mache es schon immer mit dem C-Compiler, benutze noch den alten C18 Compiler auf MPLABX
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 18.10.2024, 12:14:43 CEST
@picass
Temp RES 1
............
movlw  d'5'  -> dezimal 5
movlw  .5    -> dezimal 5
movlw  "H"   -> automatische Wandlung zu ASCii(72)
................
movlw  LOW  Temp   -> Adresse Low-Byte des Registers "Temp"
movlw  HIGH Temp   ->         HIG-Byte
.................
Out_LCD_Menue:
;--Ausgabe z.B. Text-Infos oder eine Ausgabemase: "Vdd: ...V" Der Meßwert wird dann
; imweiteren Programmlauf eingefügt
  movlw    HIGH table_start    ;H-Byte der Adresse einer LUT (LookUpTable)
                               ;mit Text zur LCD-Ausgabee
  movwf    pntr1               ;Adresse H-Byte in H-Zeiger
  movlw    LOW  table_start    ;dasselbe, allerdings L-Byte
  movwf    pntr0
  movlw    d'4'                ;Übergabe im WREG ->LCD 4zeilige Tabellenausgabe
  CALL     LcdOut_Table_1      ;Subroutine zur Ausgabe im LCD
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 18.10.2024, 15:33:53 CEST
Leider kann ich kein Bild-screen hochladen.
Unter " Produktion/ Set Projekt Configuration/Customize.." dann Conf: kannst Du den Compiler auswählen.
Bei mir steht in Compiler Toolchain:
mpasm (v5.54) [C:\Program Files (x86)\Microchip\mplabc18\v3.47\mpasm]
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 18.10.2024, 18:48:39 CEST
Ottmar....., du Schlingel! Du bist für mich viel zu schnell. Habe gerade erst dein voriges Programm angeschaut und zu einer praktischen Umsetzung - also dem Versuch einer Ausgabe - ist noch ein weiter Weg. Dieses vorige Prog ist - soweit ich das richtig sehe - der gleiche Bestandteil wie der im Sprut-Prog, nur dass andere Konstante/Variable gewählt wurden. Wie auch immer...., gemach.

pic18: einen Screenshot kannst du ohne Problem in das einfache Win-Prog im Zubehör namens "Paint" einfügen und dann in beliebigen Formaten - falls möglich natürlich J-Peg - in eine hier einstellbare Datei exportieren, rsp. speichern.

Gettz... Ottmar....kommt die angekündigte zweite Prob-Stelle. Ich hänge noch viel weiter vorne im Sprut'schen Prog fest. Da definiert er 7 Konstante. Die letzten fünf sind klar, aber mit den beiden ersten kann ich wenig anfangen. Ließe sich aber auch anders sagen: nach meiner Meinung ist er da tückisch fünfmal über Bande gegangen, um nichts anderes zu tun, als einen Port-Status auszulesen. Die beiden ersten Konstanten lauten:
PORTC  Equ PORTB
PORTD  Equ PORTB

Das verstehe ich so, dass der Status von PortB einmal der Constanten PORTC zugewiesen wird und ein ander mal derselbe B-Status der Constanten PORTD. Später in seinem Prog in den Teilprogs "BusyLoop", "OutLcdConrtrol" und "OutLcdDaten" werden diese K's benutzt, meist, um ein Bit zu setzen, einmal aber auch, um Port B zu lesen und das Ergebnis an eine Variable namens "LcdStatus" zu übergeben.

Jetzt frage ich mich recht bange, ob ich spinne oder der Sprut. Bei einem so niedlichen µC wie dem PIC16F84 mit der ungeheuren Portzahl von zwei (!) - in Worten: 2 (!) - führt er gänzlich unnötig zwei Konstante ein mit Namen von Ports, die es gar nicht gibt. Und einer der beiden Konstanten wird nur ein einziges Mal benutzt !!! Einfach gesagt: viel umständlicher geht es wirklich nicht. Statt einfach den Port auszulesen und das in die gewünschte Variable zu übergeben dann so'n Wirrwar! Konstante sollen das Leben erleichtern, aber nicht verdunkeln und zu minutenlangem Kontrollieren, Gegenlesen, Vergleichen, Grübeln und Sich-Wundern führen! Bin gerade stinkig. Und hoffe, dass so richtig gelesen zu haben. Watt'n Veitstanz um das einfache Auslesen eines Ports!!!
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 18.10.2024, 23:48:18 CEST
HI picass
Zitat
[Jetzt frage ich mich recht bange, ob ich spinne oder der Sprut. Bei einem so niedlichen µC wie dem PIC16F84 mit der ungeheuren Portzahl von zwei (!) - in Worten: 2 (!) - führt er gänzlich unnötig zwei Konstante ein...]

Sprut hat wohl früher mal für einen anderen PIC die LCD-Routine entworfen (ändert sich auch in Zukunft nicht mehr). Dabei wurde eben PORTC für die  Controlbits (E, RS, RW) und PORTD für die Datenübrtragung D7:4 verwendet. 

PORTC equ PORTB ; LCD-Control-Port
PORTD equ PORTB ; LCD-Daten-Port

damit erfolgt  die Anpassung der LCD-Routinen an den PORTB des 16F84 ohne die LCD-Routine umändern zu müssen.

Ich bevorzuge es da eindeutiger, wie nachstehend, obwohl es an der Auswirkung nichts ändert..
LCD_PORT  equ PORTB
LCD_LAT.....
LCD_TRIS....
LCD_E    equ  RB3 (ist ja tatsächlich nur die .3)
LCD_RW   equ  RB2
LCD_RS   equ  RB1

Control- und Datenport können auch getrennt sein. Die Datenbits 7:4 wird man wohl bei einem PORT belassen. Eine Trennung vom Controlport kann aber dann erforderlich sein wenn PORTB wie z.B. bei Deinem Lieblingspic, nur 4 Bits hat, dann kann wie folgt vorgegangen werden:
PORT C ist  nicht verfügbar, da hiervon die ANSEL/ANSELH-pins für den ADC gebraucht werden
LCD_PORT equ PORTB    ;RB7:4 -> LCD D7:4
LCD_CTRL equ PORTA    ;Controlbits
LCD_E equ    RA2      ;(ist ja tatsächlich nur die .2)
LCD_RW equ   RA1
LCD_RS equ   RA0

Die Controlbits werden dann mit 
bsf/bcf  LCD_CTRI, bsf/bcf LCD_E usw 1/0 gesetzt.

Bei der Initialisierung der Register (SFR's etc) kann man dann die Labels gleich mit  verwenden:
clrf   LCD_PORT
clrf   LCD_LAT       ; nicht beim 16F84
movlw  b......
movwf  LCD_TRIS      ; verwendet werden sollen
movlw  b'.....
movwf  ANSEL
movlw  b'.....
movwf  ANSELH

Im Hautprogramm verbessert es die Übersicht, werden verschiedene Labels für den gleichen PORT verwendet. Braucht man z.B einen
KEY_PORT für Pushbuttons oder/und einen ADC_PORT für ein paar Analog-pins, weiß man auf den ersten Blick, um was es gerade geht.

Optimal ist es weiterhin die ganzen LCD-spezifischen Deklarationen und Unterprogramme in einer INIT-Datei unterzubringen, benannt nach dem LCD-Prozessor, z. B "HD44780_4Bit_Init.INC", Dann kann diese in jedem anderen Programm, stets wieder verwendbar, eingefügt und hinsichtlich des/der PORTs einfach angepasst werden: 
#include <HD44780_4Bit_Init.INC>

Ich kann Dir auch nicht ersparen, darauf hinzuweisen, daß Deine von Dir bevorzugte Taktfrequenz von 31kHz (wenn ich mich nicht irre), wohl am besten auf wenigstens 4MHz erhöhen werden sollte, falls eine rasche, nicht stotternde LCD-Ausgabe erreicht werden soll. Na, ja funktioniert wird es auch langsamer, dann kann man eben zusehen wie es funktioniert :-) .. :-).
8)
mfG Ottmar
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 19.10.2024, 12:26:11 CEST
Zitat von: Ottmar in 18.10.2024, 23:48:18 CEST......Sprut hat wohl früher mal für einen anderen PIC die LCD-Routine entworfen......
Das hatte ich mir auch gedacht. Mache ich ja selbst so, dass in aller Regel für ein neues Projekt ein früher verwendetes Prog ausgesucht wird, welches in etwa sinnvoll aufzugreifen wäre und dann geht es ans Anpassen.

Au man......, Ottmar, das hat dich die Nachruhe gekostet, was mir gleich ein schlechtes Gewissen vermittelt. Und dann muss ich noch gestehen, dass ich nicht stante pede dran gehen kann, denn heute kommt zwecks Geburtstagsnachfeier Besuch von der puckeligen Verwandtschaft und bleibt auch bis in späte Stunden. Aber sei gewiss, dass ich den erstellten Ausdruck akribisch bearbeiten werde. Weil....., es muss endlich mal sein, dass auch ich als Spät-Nachzügler LCD-Ausgabe handeln kann. Danke für die Nachtschicht und ich hoffe, dass du ausreichend Zeit zum Ausschlafen gehabt haben wirst.
Danke und In diesem Sinne nun um 12:20 Uhr ein herzlicher Guten-Morgen-Gruß, Bernd

Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 19.10.2024, 13:52:26 CEST
picass,
mach' Dir keine Sorgen um meine Nachtruhe, bin ein "Spät-ins-Bett-Geher". So viel Aufwand war das auch wieder nicht.
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 19.10.2024, 14:51:06 CEST
Doch ! >:(  Mache mir doch Sorgen...! So spät in der Nacht und kurz vorm Schlummern sollte "der Tag" nicht nur ruhig ausklingen, sondern zudem nur dem eigenen Wohlbefinden gewidmet sein.

Der Besuch ist beschäftigt und ich habe die Pause natürlich doch genutzt, um in dein Blatt zu schauen. Und schon stoße ich wieder auf Unerwartetes, hier die Nutzung der Ports. Sprut hatte den einen ganzen Port B genutzt (eine LED an PA) und das würde ich aus Gründen der Einfachheit bei der Programm-Übernahme auch verwenden, aber dann halt den kompletten Port C. Nun schreibst du, dass der nicht zur Verfügung stünde, weil "...die ANSEL/ANSELH-Pins für den ADC" gebraucht würden. Hm....., welcher ADC? Im Sprut'schen Prog wird mal der Zustand des PortsB abgefragt, aber von ADC ist nichts zu sehen. Vermute, da ist dir von einem anderen Prog was in dein nächtliches Papier rein gerutscht.
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 19.10.2024, 17:31:52 CEST
NEIN!
Das war doch nur BEISPIELHAFT gemeint!!! - falls man in die Situation kommen sollte UNBEDINGT diese Analogpins verwenden zu müssen!
Natürlich nimmst Du den PORTC der von seinen 8 Pins her gesehen am Besten geeignet ist, die Rolle des LCD_PORT zu übernehmen!

Du schaltest bei Verwendung des PORTC einfach ANSEL und ANSELH mit clrf auf digital, fertig! Falls Du mal Analogpins brauchst, hast Du ja auch noch PORTB und PORTA zur Verfügung.
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 21.10.2024, 13:25:06 CEST
Eine gute Woche ist rum und das Projekt: "einfaches Umschreiben eines fertigen Programmteils für LCD-Anzeige" zeitigt die berüchtigte "Leere Menge". Anfangs blinkte das erste Zeichenfeld noch, nun ist's völlig ruhig.
Aber was soll man sich beklagen? Offenkundig bin ich der Erste, welcher versucht, via Assembler und der "mittleren" MPLAB X-Version v5.20 so'ne Ansteuerung vorzunehmen. Neuland, wohin man tritt: auf dem Display sitzt der hinlänglich bekannte HD44780A00 . Das müsste ein einzeiliges Disp mit 8 Zeichen sein. Voll grottig.
Von eventuellen freundlich zugedachten Hilfsangeboten bitte freundlichst Abstand nehmen. Is klar, da sitzen wohl noch diverse Böcke drin. Ein oder zwei Runden gönne ich mir noch....und danach schmeiße ich diese Weltraumtechnik in den Müll und kehre zu 7-seg-Anzeigen zurück.
Bestgelaunte Grüße, picass

Passend dazu: Bilder hochladen ist heute nicht! >:(
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 21.10.2024, 14:31:49 CEST
Hier der Nachtrag vom 18.10.24, ich habe jetzt den Screnshot als JPEG gespeichert, diese Datei hierher gezogen. Folgende Fehlermeldung kommt.
Der Beitrag verursachte die folgenden Fehler, die behoben werden müssen:
Der Beitrag überschreitet die maximal erlaubte Länge (25000 Zeichen).

Hast Du ein einzeiliges oder 4-zeiliges Display? Kannst du mir mal dein Programmlisting schicken? Mit der Anzeige habe ich schon sehr viel experimentiert.
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 21.10.2024, 16:15:52 CEST
@picass Du hast Post
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 21.10.2024, 17:41:32 CEST
Hallo picass
wirf mal nicht so schnell die Flinte ins Korn!
Ich hab' mal für den 18F14K22 rasch ein Programm zur Minimalausgabe im LCD geschrieben.  Dabei mußte ich feststellen, daß die Ausgabe von Text aus eine  Tabelle beim 18F etwas anders läuft als bei den 16F. Nun, da beiß ich mich kurz durch, (vgl. Datenblatt "4.0 FLASH PROGRAM MEMORY). Habe aber keine  Zeit mehr da in den nächsten Tagen was zu tun.
Damit Du nicht die Lust verlierst anbei das Progrämmchen, welches wenigsten sowas ähnliches wie "Hallo" sagen kann.

mfG Ottmar
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 21.10.2024, 17:46:27 CEST
Die bildchensind nicht mitgegangen ???
1. zu erwartende Ausgabe
2. empfehlenswertes Interface (so ähnlich jedenfalls)
3. Die Steckbrettschaltung
Titel: Aw: Seltsames Programmieren
Beitrag von: ADMIN in 21.10.2024, 18:54:51 CEST
Hallo
Momentan gibt es Probleme mit Dateianhängen. Am Problem wird gearbeitet.

Euer ADMIN.
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 21.10.2024, 19:08:27 CEST
@pic18
Es ist ein einzeiliges Display mit 8 Zeichen. Hinten sitzt nur der alte Klassiker, das genannte HD44.. - IC drauf, also kein weiteres IC für z.B. Zeilen-Treiber.

Heute ist voll der Seuchentag! Kann man so'n Ding durch Software ruinieren? Vor dem Anschluss an den PIC waren mal 8 Zeichen-Stellen zu sehen, dann die erste schwarz, der Rest grau. Nach dem Anschluss blinkte das Erste, vom Rest war nichts mehr zu sehen und nach weiteren Prog-Versuchen ist nun überhaupt nichts mehr zu sehen. Über den Pin 3, an welchem die Kontrastspannung - die müsste ca. 0,4 Volt sein - anliegen soll, kann ich jetzt auch mit externen Spannungszuführung nichts mehr erreichen.

Nun habe ich noch ein ähnliches Display, wohl eines für 2 Zeilen, weil da hinten noch ein Treiber-IC drauf sitzt. Leider hat dies alte D irgendwann früher mal einen Bruch an der Anschluss-Seite erlitten, die Steckfassung dort ist abgeknickt. Etwa die Hälfte de Leiterbahnen ist abgerissen. Sitze gerade dran und versuche, das zu flicken. Zudem habe ich soeben 3 neue D's bestellt, aber das dauert natürlich wieder.

@Ottmar Vermutlich kann ich dein Prog erst sinnvoll einsetzen, wenn das Flicken gelungen sein sollte oder wenn die drei Neuen da sind.
Danke an euch beide, ist ganz lieb von euch.
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 21.10.2024, 19:40:54 CEST
Hi
Im ASM-file kannst du 2x8 bis 4x20 displays auswählen - nicht verwendete bleiben auskommentiert. Im Moment ist 2x8 -> 2x16 aktiviert, einzeilige sind meist 2x8.
Änderungen in den Einstellungen schaden dem LCD nichts, nur zeigt es dann vielleicht nichts an.
Das LCD hat einen Kontrasteingang. Da kommt ein Poti ran so ca. 2-5kOhm, kannst es auch versuchen, den Anschluß auf GND zu legen, kann sein daß dann alle Digits schwarz erscheinen, dann funktionierts jedenfalls.
;--LCD-PROPERTIES (Eigenschaften an aktuelles LCD anpassen)
   LCD_TYPE       EQU 1       ;=1 LCD 2x8 und 2x16
;   LCD_TYPE       EQU 2       ;=2=LCD 4x16
;   LCD_TYPE       EQU 3       ;=3=LCD 4x20
   ;
   IF LCD_TYPE == 1           ;Uncomment LCD_DIGITS 2x8 OR 2x16 !!!
      LCD_LINES   EQU .2      ;LCD 2x8 * 2x16
;      LCD_DIGITS  EQU .8      ;LCD 2x8     
      LCD_DIGITS  EQU .16     ;LCD 2x16
   ENDIF
Titel: Aw: Seltsames Programmieren
Beitrag von: pic18 in 21.10.2024, 20:47:58 CEST
ZitatKann man so'n Ding durch Software ruinieren?
kann ich mir nicht so recht vorstellen, selbst wenn du den Pic und die Anzeige auf Datenausgabe geschaltet hast. Wenn es an den Anzeigen liegt, ich habe noch etliche verschiedene ausgebaute herumliegen, die kann ich dir zukommen lassen. Ganz alte LCD-Anzeigen hatten früher eine Kontrastspannung von -10V bzw -5V diese Spannung hatte ich mit einem ICL7660 hergestellt.  Ich denke du hast aber neuere. An meiner Anzeige habe ich eine Kontrastspannung von 1,26V gemessen
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 24.10.2024, 10:12:26 CEST
Nur mal nachgeholte Fotos von Zwischenständen beim Kampf gegen unwillige LDC-Anzeigen:
lcd1.jpglcd2.jpglcd3.jpgPlatinen-Riss.jpg
Auf dem letzten Foto sieht man die abgeknickte Anschussleiste am letzter, vorhandener Anzeige mit dem HD44. Das Flicken der Leitungen ist inzwischen ausgeführt, der Test steht aber noch aus. Gestern kamen dann auch die drei bestellten Neuen. Entsprechend geht es heute mit den Hardware-Test weiter.
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 24.10.2024, 17:17:04 CEST
Hi picass
Ich möchte Dir ja nicht meinen Stil aufdrängen, empfehle Dir aber doch wärmstens beim experimentieren mit LCD, wie folgt vorzugehen:
 
a) vgl meinen Beitrag https://www.pic-microcontroller.de/mikrocontroller/icsp-schnittstelle-auf-breadboard/
vielleicht kannst Du Dich doch für solch einen Versuchsaufbau entscheiden.

b) setze an der Lötleiste von einem LCD eine abgewinkelte Stiftleiste ein, so dass die Verbindungen steckbar sind (z.B. einzelne Verbinder -Buchse oder eine Buchsenleiste). Öfteres Löten an dem LCD ist evtl. problembehaftet. Würde ich erst machen wenn die Schaltung fertig eingebaut wird.

P.S. Ist der Titel des Chat noch angebracht ?

mfG Ottmar
Titel: Aw: Seltsames Programmieren
Beitrag von: picass in 24.10.2024, 17:48:09 CEST
lcd4.jpg
lcd5.jpg
Grüße, picass
Titel: Aw: Seltsames Programmieren
Beitrag von: Ottmar in 24.10.2024, 19:08:00 CEST
Na dann ist ja alles Bestens! :) 👍