gerneSchleifen kann man ja in zig varianten aufziehen, solange der inhalt nicht für irgendwas zum indizieren genutzt wird ist die zählrichtung ja egal
![]()
gerneSchleifen kann man ja in zig varianten aufziehen, solange der inhalt nicht für irgendwas zum indizieren genutzt wird ist die zählrichtung ja egal
![]()
Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
nicht.
Bestimmt, aber ich bin ja noch beim Lernen, möchte aber nicht ganz von C/Cpp auf ASSR umsteigen. Da aber mein PIC Lehrbuch: "PIC-Microcontroller" von Prof. Günter Schmitt , sehr viel mit "ASSR handelt", möchte ich doch einiges dort auch begreifen , vielleicht auch ausprobieren. Die ersten Fallen hatte ich mir schon beim Schreiben des Codes angelegt.. : Optocode in der ersten Spalte....u.a.m.
Da ich das Forum hier nicht mit blöden Listings vollmüllen möcht : HIER meine erste Creation mit MPLABX geschrieben.
Vielleicht muss ich noch lernen wie ich mit den zeitgenauen "Delays" hinkomme/berechne...vielleicht braucht man das ja mal, aber Rom wurde ja auch an mehreren Tagen erbaut.
Danke Gerhard
Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint
Hallo oderlachs,
is zwar schon rund 4 Wochen alt der Thread aber ich erlaube mir trotzdem noch etwas dazu zu schreiben:
Erstens: Ich finde das echt supi, dass jemand der C oder C++ programmiert dann doch mal in den Assembler reinschaut.
Dann hab ich mal deinen Link zu dem Programm aufgerufen.
Meiner Meinung nach ist da noch ein Fehler in deiner unteren Warteschleife, vermutlich durch das kopieren von der oberen Warteschleife:
Ein schönes Wochenende wünscht derCode:MAIN_PROG CODE ; let linker place main program 214 215 START 216 217 ; TODO Step #5 - Insert Your Program Here 218 call INIT_IO 219 ;LED einschalten 220 blink bsf LED_0 ; set LED_0 221 ;*********************************************************** 222 ;Warteschleife 1 223 clrf REG_1 224 clrf REG_2 225 loop1 decfsz REG_1 226 goto loop1 227 decfsz REG_2 228 goto loop1 229 clrf REG_1 230 clrf REG_2 231 ;LED ausschalten 232 bcf LED_0 ;clear LED_0 233 ;Warteschleife 2 234 clrf REG_1 235 clrf REG_2 236 loop2 decfsz REG_1 237 goto loop1 <===== muss hier nicht goto loop2 hin ? 238 decfsz REG_2 239 goto loop2 240 ;*********************** 241 goto blink ; loop forever
Siro
Hallo Siro !
Danke das Du Dich mit meinem Problem befasst hast. Ja ich habe mal mit ASSR beim C64 und 8085 angefangen. Den 8085 noch in der IT Ausbildung(anfang der 90er). Dann bin ich 2003 zu C/C++ übergewechselt(worden) und das habe ich nun als "Standart", aber wenn mir mal nach dem mir so ist, kram ich auch ASSR, Pascal, Delphi oder Java aus der Kiste und "spiel" damit umher.
Leider läuft mein Delphi5 nicht mehr unter den neuen OS besonders nicht bei 64Bit. und ein paar tausend Euronen ist mir meine Freizeitbeschäftigung doch nicht wert um die aktuellen EntwicklerStudios von ehemals Borland/Inprise zu kaufen.
Ich programmiere auch meist nur (In den anderen Sprachen),damit,das "Hirn" nicht verkalkt...sofern ich dieses besitze....
Gruss Gerhard
Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint
Hallo Gerhard,
[bischen Offtopic...]
dann habe ich eine ähnliche Karriere hinter mir.
VC20 Commodore war mein Erster und den habe ich auch in Assembler programmiert 6502
ebenso Assembler auf 8085 sowie 8086
und dann hab ich irgendwo mal für meinen ersten PC-XT ein Turbo Pascal bekommen. (DOS-Modus)
Später dann Delphi 3, Delphi 6, und dann war Ende.
ABER:
Irgendwann (ich glaub vor 2 Jahren) habe ich dann "Lazarus" entdeckt und ich dachte mir springt ein Ei aus der Hose,
denn das sieht genauso aus wie mein geliebtes Delphi und es funktioniert eigentlich auch genauso,
aber das Beste daran: es ist Open Source und kostet keinen Cent.
Läuft super und wird ständig gepflegt.
https://www.lazarus-ide.org
In der Firma "musste" ich auch auf "C" umsteigen.
Für die Microcontroller ist das anscheinend immer noch "die angesagte" Sprache.
Hier hatten wir eine abgespeckte, dennoch zig tausend Euro, Lizenz von IAR für ARM Controller.
Ich war echt am verzweifeln mit dem Zeug....... bin dann später umgestiegen, auf LPCXpresso und nun MCUXpresso von der Firma NXP
für die LPCxx Microcontroller. Kostet nix, funktioniert einwandfrei.
[ich hoffe,das war keine Schleichwerbung]
Zurück zum Assembler:
Die Microchip PIC's habe ich schon ewig verfolgt und benutze sie immer wieder.
Damals noch die JW Versionen, welche mit UV-Licht gelöscht werden mussten.
Bis heute programmiere ich die Dinger in Assembler, aber neuerdings auch gerne mal mit den C-Compilern.
Die freien Versionen der Compiler von Microchip sind wirklich brauchbar.
Für kleine Projekte braucht man da nix kaufen.
Man muss heutzutage für wirklich gute Entwicklungswerkzeuge kein Geld mehr ausgeben.
Zeitschleifen bei den PICs in Assembler sind nicht ganz einfach zu berechnen, hier braucht man schon die genauen Taktzyklen usw.
Ich hab das oft mit dem "Simulator" innerhalb der MPLAB-IDE gemacht. Da gibt es ein Fenster "Stopwatch" und hier kann man genau ermitteln wie lange der Code benötigt.
Dann kann man die Schleifenwerte verändern und erneut probieren.
Ich weis nicht, ob Du schon damit gearbeitet hast.
Siro
Geändert von Siro (17.03.2019 um 17:12 Uhr)
Lesezeichen