PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : BASCOM einfacher als ASM für Spielzeugbotsteuerung? (klar)



PICture
10.01.2011, 18:14
Hallo!

Ich, als PIC ASMan, denke immer ernster ans Anwenden von AVR's mit BASCOM, weil ich BASIC schon kenne und keine zeitkritiche Steuerung meinen Spielzeugen (künstlichen Tieren) brauche. Ich glaube auch, dass meine hardware Kentnisse dafür ausreichend sind und ein paar ASM Befehlen aus Datenblatt, falls nötig, könnte ich erfolgreich als Funktionen in BASIC einbinden.

Für mich ist sicher, dass ein gleichfunktionierendes, aber langsameres Steuerprogramm, sich viel schneller in einer Hochsprache, als in ASM erstellen lässt. Da ich aber bisher keine Erfahrung mit AVR's und BASCOM habe, möchte ich zuerst Euch fragen, was ich als "Anfänger" eventuell unbedingt beachten muss um damit verbundene Probleme zu minimieren.

Weil ich kein software Freak bin, brauche ich nur einfachste (am liebsten kostenlose) Programme: Compiler der mir mit Texteditor in BASCOM erstalltes Programm in ASM übersetzt und in AVR über LPT übertragen lässt.

Ich freue mich sehr auf Eure für mich hilfreiche Beiträge. :)

MfG

Vitis
10.01.2011, 18:21
Bascom gibts nicht umme, die Demoversion bis 4K schon, dann kost's
Geld ... ist aber verschmerzbar.

Wenns der Parallelportprogrammer sein soll bringt Bascom das Tool zum flashen auch schon mit, alles dabei.
ASM kann man einfach durch $ASM in den Bascomcode einbinden ...

Ich arbeite gerne und viel mit Bascom, das Wissen um die internen
Register ist aber auf alle Fälle wichtig, mitunter bringt einen das echt
weiter.

PicNick
10.01.2011, 18:41
Solltest die DEMO-Version nehmen und erstmal ausprobieren. Bis das Limit von 4K erreicht ist, geht schon einiges.
Es ist softwaremässig bis zum Brennen alles dabei.

Weiss nicht, welche Hardware du bauen/kaufen willst, aber zum brennen brauchst du eventuell noch sowas dazu
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=73&products_id=41

PICture
10.01.2011, 19:01
Hallo!

@ Vitis!

Danke sehr für deine ausführliche Antwort ! :)

Ich denke, das mir schon alles klar ist, und werde, wie auch immer, ohne Angst mit AVR's "spielen". Ich habe nicht vor grössere als 4 k Programme in meinen Spielzeugen fast ohne Sensoren zu verwenden.

@ PicNick

Vielen Dank für ergänzende Informationen. Sollte ich zukünftig doch unerwartete Probleme haben, die ich nicht selber lösen könnte, dann erlaube ich mir das Unterforum noch zu beanspruchen. O:)

Übrigens, als "Anfänger" werde ich sicher mit einem "Tiny" anfangen.

MfG

hardware.bas
11.01.2011, 05:48
Das Schöne an BASCOM ist die Anwenderfreundlichkeit, welche man
vom BASIC her kennt in Verbindung mit der Tatsache, dass es kein
Interpreter ist, sondern ein Tool, welches die Anwendung in Maschinen-
code in den AVR bringt. Auch mit BASCOM kann man durch direktes
Speicherbeschreiben ziemlich maschinennah programmieren.
Mit einem Tiny kann man zwar anfangen, jedoch empfehle ich persönlich,
gerade für Hardwarefreaks und Löter den Aufbau eines Experimentier-
boards mit einem 40-poligen Atmega (z.B. Atmega16) direkt eingelötet,
da man die entwickelten Programme "runterinterpretieren" kann und in
der Zielschaltung eh meistens mit ISP flasht. Auf dem Experementier-
board sollte neben der 5V-DC-Versorgung dann noch ein MAX232 fürs
Debuggen etc. und ein 74HC125-Treiber für die ISP-Programmierung
über die LPT drauf sein. An weiterer Softwäre - und das ist das Tolle
daran - braucht man nichts, da bereits in der BASCOM-Demo die
Flashsoftware - einschliesslich Fusebitmanipulation - schon integriert
sind. Ich will mein Board noch mit 2 Hexadezimaldrehcodierschaltern,
ein paar LED-Treibern für LEDs und Optokoppler, 2 Siebensegment-
anzeigen und einem LCD-Display nachrüsten. Die Teile müssten heute
kommen. Ach so, ein Atmega16 kosst auch nur wenig mehr, als ein
Tiny und treibt die wirklich extrem geringen Kosten für das Board nicht
hoch. VG Micha

PICture
11.01.2011, 07:46
Hallo hardware.bas!

Besten Dank für deine sehr ausführliche Erklärung. :)

Vielleicht könntest du auch meine Pläne mit AVR's bewerten. ;)

Hauptsächlich möchte ich die kleine AVR's (Tiny) mit internem Taktgeneratornur in meinen "Spielzeugen" verwenden, die sich fast ohne Sensoren sehr langsam bewegen und alles "live" debuggen. Deswegen wäre für mich Experimentierboard überflüssig.

Ich möchte eben weiterhin für schnelle und genaue Sachen (z.B. Messgeräte) PIC's mit ASM und für langsame AVR's mit BASCOM benutzen. Wegen unterschiedlichen Programmiersprachen (wenn ich kein ASM für AVR's kenne) halte ich es als problemlos möglich.

Da die AVR's nach meinem bisherigen Wissen nur 5 Leitungen für ISP brauchen (MOSI, MISO, SCK, VCC und GND) möchte ich zum Anschliessen an "Spielzeug" und Brennen nur 5-adriges Kabel mit einem flachen Stecker aus Stiftleiste nutzen.

Fürs Anfang möchte ich, wegen Versorgung mit zwei Ni-MH Akkus, ein paar ATTINY 12V-1 PU bzw. 13V-10 PU beim Reichelt kaufen.

MfG

Besserwessi
11.01.2011, 08:22
den Tiny12 würde ich besser nicht nehmen. Das ist ein alter Typ und so weit ich weiss einer der wenigen, die nicht so einfach per ISP programmiert werden. Da schon lieber ein Tiny25 / 45 - das sind neuere Typen und man hat die Möglichkeit auch Versionen mit mehr Speicher zu nutzen.

Bei der Länge des Programms sollte man sich nicht verschätzen. BASCOM Programme werden etwas länger als ASM Programme, auch wenn es beim AVR oft eher kürzer als beim PIC wird.

BASCOM hat immerhin die Möglichkeit relativ einfach Teile in ASM einzubinden.

Vitis
11.01.2011, 08:28
Bascom ist zwar nicht das Schnellste vom Compilat her, aber man bekommt
schon recht schnelle Mess- und Regelprozesse damit hin.

In einer Anwendug von mir macht der AVR 15000 AD-Samples / Sek., betreibt
eine 5-stellige LED 16-Segmentanzeige in multiplex, verwaltet nen RS485
Bus mit Busprotokoll (Modbus), erzeugt eine 15-Bit Teil Soft- Teil Hardware
PWM, speichert Daten in externes EEPROM, Liest externe RTC alle 10ms,
liest alle 30ms ne Tastenmatrix aus und hat noch Zeit übrig zum Daumen drehen.
(ATMega128)

Da geht schon was.

PICture
11.01.2011, 08:49
Hallo!

@ Besserwessi!

Schönen Dank für die Warnung, vor allem wegen SPI, sonst könnte ich die Lieferung gleich in eine Mülltonne werfen.

Haben die alle Tiny's einen internen Taktgenerator ? Ausserdem muss ich angeblich für geplannte 2 V Versorgung immer eine V-Version kaufen, oder ?

Um nicht durcheinander mit ASM zu kommen, möchte ich momentan kein ASM bei AVR's benutzen. Erst wenn ich eventuell ganz auf AVR´s umsteige, werde ich ASM Befehle für PIC's vergessen und fur AVR's lernen. ;)

@ Vitis

Das glaube ich ! :)

Mich hat schon vor zig Jahren, wenn ich erfolgslos "C" lernen versuchte, ein Arbeitskollege (Programmierer) überzeugt, dass optimierter BASIC sehr schnell ist. Ich weiss momentan noch nicht, wie weit ich überhaupt noch komme, habe aber keine Ansprüche komplexe Programme zu schreiben. ;)

MfG

Richard
11.01.2011, 09:26
Übrigens, als "Anfänger" werde ich sicher mit einem "Tiny" anfangen.

MfG

Die Tinys haben SEHR wenig Speicher, ein paar call/Return und der Stack läuft über. Ich würde mit einen Maga 8 anfangen, alleine um mehr ausprobieren zu können. Obwohl der für Deine Tierchen schon etwas groß ist. :-)

Basic ist nicht wirklich einfacher als ASM vor allem wenn man ASM Gewöhnt ist. Der Nachteil von ASM, es ist nicht so (wenn überhaupt) auf andere Chips portierbar. Andere Registeradressen u.s.w. 6502, 6510,8051,PIC habe ich früher nur in ASM "Bearbeitet". Heute bin ich zu faul den ganzen Registerkram wieder auswendig zu lernen, außerdem setzt langsam "Altersschwäche" ein. :-(

Gruß Richard

PICture
11.01.2011, 10:12
Wenn ich aber diszipliniert, wie beim ASM, programme schreibe, dass immer nur eine SUB laufen wird und erst nach ihrer Beendigung nächste aufgerufen wird, müsste es bei Tiny auch gehen, oder ? ;)

MfG

PicNick
11.01.2011, 11:16
..müsste es bei Tiny auch gehen..
:-) Logo, es gibt ja Leute, die das kaufen.

Aber re-entrante / rekursive Subs bist du ja eh' nicht gewöhnt, soweit ich mich and die PICerei erinnere.

PICture
11.01.2011, 12:11
Hallo PickNick!

Ich musste mich bisher nur beim PC ASM in *.exe Programmen für Stapel interessieren. Der BASIC Compiler hat beim ersten Durchlesen des Programms dafür nötige Anzahl von Speicherstellen reserviert und nur beim nicht ausreichendem RAM mich darüber informiert.

Bisher kann ich wirklich das mit der RAM-Grösse und Stapel-Deklarationen bei Tiny AVR's mit 64 Speicherstellen nicht verstehen. Mir würde eine Information ausreichen, wieviel Speicherstellen ich für mein BASCOM Programm zur Verfügung habe. Kann ich davon ausgehen, dass bei Programm ohne Interrupts ich 32 von 64 Bytes frei habe ?

Na ja ich probiere es mit "grösseren" Tinys aus, aber wenn ich länger im mit BASCOM erstellten Programm unverständliche Fehler z.B. wegen Stapelüberlauf suchen müsste, dann bleibe ich lieber bei ASM in der PICerei. :lol:

Es ist eben für mich sinnlos zu versuchen sich selbst an unbeherrsbare Programmiersprache anzupassen.

MfG

PicNick
11.01.2011, 14:21
Dann mal Tacheles: welchenen TINY hast du nun im Auge ?

Besserwessi
11.01.2011, 14:52
Als 8 Pin Chip kommt für BASCOM vor allem der Tiny25 oder Tiny45 in Frage. Da hat man auch kein wirkliches Problem mehr mit dem RAM. 128 Bytes sind nicht viel, aber es reicht auch für Interrupts.

Vor allem Interrupts brauchen in BASCOM sehr viel RAM (32 Bytes ?), wenn man da nicht mit ASM nachhilft.

Die Tiny12, Tiny13 programmiert man doch eher in ASM.

Edit: Auch bei den PICs gibt es Errata. Die meisten Fehler bei den AVRs sind nicht so schlimm - es sind vor allem auch fast die gleichen für alle Typen. Schlimm wird es mit den Erratas erst bei dem XMega oder dsPic.

radbruch
11.01.2011, 15:19
Hallo

Mit dem Tiny13 kann man schon recht nette Sachen machen, z.b. eine RC5-Fernbedienung in Bascom:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=339977#339977(Code)
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=339889#339889(Bilder)

Mein Kippler lief auch mit einem Tiny13, allerdings in C:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=326492#326492

Geschwindigkeitsnachteile von Bascom kann ich nicht bestätigen, hier die Bascom-Variante meines Kameraprojekts:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=434314#434314

Viel Erfolg.

Gruß

mic

Besserwessi
11.01.2011, 16:05
BASCOM muss nicht langsamer sein, kann es aber. Eine Ursache für die Teils geringere Geschwindigkeit in BASCOM liegt darin dass man immer nur eine Rechenoperation in eins machen kann. Die Daten gehen entsprechend immer zwischendurch in RAM, etwa so als würde man in C alle Variablen Volatile machen - nur noch etwas schlimmer. Wenn BASCOM spezielle Funktionen nutzen kann - geht es damit ggf. auch schneller und kürzer.

Eine weitere Bremse hat (oder hatte man zumindest) man bei Interrupts. Da werden immer fast alle Regeister gerettet. Das kann schon auch von der Geschwindigkeit stören, nicht nur durch den extra RAM-bedarf.

Die meisten Programme sind aber auch gar nicht Zeitkreitisch.

peterfido
11.01.2011, 16:14
Wenn ich das hier so lese, bekomme ich den Eindruck, dass die Meinung besteht, dass Bascom generell laaaangsaaaamen Code erzeugt. Bis auf ganz wenige Ausnahmen (z.B. GetRC5) kann ich dem so nicht zustimmen. Lediglich ist der erzeugte Code oft (aber nicht unbedingt) größer als bei C.

Zeitkritisches "Multitasking" wie IR-Empfang, Auswertung, 3-Kanal SoftPWM, RDS-Radio und Netzwerk gleichzeitig löse ich allerdings "zu Fuss". Aber auch dann im Bascom Dialekt. Inline Assembler nutze ich entweder um den Watchdog innerhalb der ersten 4 Takte zu deaktivieren oder um die Interrupts schneller zu durchlaufen, wenn ich mir die gewünschten Register manuell auf den Stapel schiebe und zurückhole.

Auch die Frontendprogrammierung auf T-Hack habe ich mit Bascom in Basic erstellt.

C nutze ich nur, wenn ich das Rad nicht neu erfinden möchte und fertigen Code dritter an meine Bedürfnisse anpasse.

PICture
11.01.2011, 18:11
Hallo!

Um nicht überglucklich wegen BASCOM zu werden, hatte ich heute ein Besuch beim Zahnarzt. Zum Glück kann ich noch schreiben. ;)

@ PickNick

So wie der Besserwessi vorgeschlagen hat, bloss wegen 2 V Versorgung eine V Version.

@ radbruch

Als Anfänger kann ich leider die tolle Programme noch nicht bewundern. :(

@ Besserwessi und peterfido

Ich weiss nur sicher, dass ASM ein bisschen schneller als durch jede Hochsprache erzeugter Code ist. Aber wegen zu schnellem BASCOM Code dürfte der AVR in meinem Spielzeug nicht abfackeln, oder ? [-o<

MfG

hardware.bas
11.01.2011, 19:58
Hallo PICture!
Wenn Du gern die neueren Tinys nehmen willst und auf ein Experimentier-
boad verzichtest, dann bau das Dongle mit dem 74HC125 in den
LPT-Stecker. So hab ich das gemacht, da ich die Programme woanders
(auf meinem Experimentierboard) entwickelt habe. Wenn die Pins,
welche für MISO, MOSI und SCL benutzt werden, möglichst an hochohmiger Peripherie hängen - meistens sind sie dann Ausgänge -
kannst Du problemlos in der Schaltung per ISP flashen.
Obwohl ich ASM nicht beherrsche - trotz Versuch nicht geschnallt und
mit BASCOM erschlage ich eh alles - habe ich grossen Respekt vor den
Leuten, die ASM beherrschen. Bei Dir PICture, bin ich überzeugt, dass
Du in kurzer Zeit kein AVR-Anfänger mehr bist, das beweisen Deine
Beiträge, die sich immer auf hohen und kameradschaftlichen Niveau
befinden. VG Micha

Besserwessi
11.01.2011, 20:10
Die AVRs werden auch bei maximalen Takt nicht wirklich warm. Bei 2 V schon gar nicht - da ist auch der maximale Takt nicht so hoch. Im Vergleich zum PIC sind die AVRs bei gleichem Takt auch deutlich (ca. 5 mal) schneller.

Beim Tiny13 reicht auch die Version Tiny13A für 2 V. Für BASCOM passt aber der Tiny25 besser und ist auch nicht so viel teurer.

Wenn man will, hat man beim AVR noch GCC als freien C Compiler zu Verfügung.

stefan_Z
11.01.2011, 21:47
Dass Bascom nur eine Operation pro Zeile kann ist in der Tat nervig, aber in ASM ist ja noch schlimmer. Und C muss die Operationen ja intern auch irgendwie verwursten...

Das mit den Interrupts stimmt auch nur bedingt, denn man kann in Bascom NOSAVE mit angeben - muss sich dann aber natürlich selber ums Retten der Register kümmern.

Die fertigen Funktionen in Bascom sind einfach total praktisch - man hat alles in einer Datei und die Befehle sind easy. Klar, C ist viel cooler für große Projekte, aber mit 10 Zeilen UART, Display RAM und I2C konfigurieren und einmal ansprechen kommt auch gut finde ich.

Und wenn ich wie du echtes ASM-Wissen hätte, würde ich mir gar keine Sorgen machen!
Ein PIC -> AVR Umsteiger-Tutorial gelesen und das Thema ist abgefrühstückt.

PICture
12.01.2011, 04:41
Hallo!

@ hardware.bas

Danke für die Blumen, ich vesuche immernoch das Beste. :)

Genauso, wie du es beschrieben hast, möchte ich das Programmierkabel machen. Um das flaschen zu vereinfachen, will ich auf die dafür notige 5-Pins des AVR's abwechselnd enweder das Programmierkabel bzw. die Hardware einsteckbar machen. Es ist ein bischen umständlicher aber für mich annehmbar, weil ich dann bei Hartwareentwicklung auf nix achten muss. Das hat sich beim PIC Programmierung schon praktisch bewiesen (vor allem beim Unterschied in Versorgungspannungen von benutzter Schaltung und Brenner) und sooo faul bin ich auch noch nicht.

Am liebsten entwickle ich Schaltungen mit selbsgebauten Bord an den biliebige Hardware per Textool-Sockel ohne Löten angeschlossen wird. Wahrscheinlich für AVR's nach der "Spielzeugphase" werde ich mir später sowas auch basteln müssen.

@ Besserwessi

Schönen Dank für deinen praktischen Vorschlag mit TINY 25V-10 PU von dennen ich mir ein paar als "Versuchskaninchen" kaufe. Wenn ich immer nur das billigste, und nicht etwas gesundes (was mir auch schmeckt), gegessen hätte, wäre ich angeblich schon längst tot. :lol:

Ich wollte schon vor zig Jahren "Cäh" erlernen, für mich war es aber leider zu "künstlich" und somit nicht verständlich. Es gibt zum Glück viele andere Hochsprachen zum Auswahl, wenn man mit dem Alter immer "fauler" wird.

@ stefan_Z

Nur als Info für Dich: ich steige wie auf einem Bahnhof um und habe zum Glück bisher mein "Wissenskoffer" nirgendwo liegen lassen. Ich habe früher schon verschiedene µC's Programmiert und kenne nur einen ASM bzw. BASIC. Für anderen Prozessor sind nur die ASM Mnemonics bzw. BASIC-Dialekt anders. Deswegen habe ich keine Angst von AVR's, vor allem wegen sehr netten und hilfsbereiten Spezialisten, die mir schon alles nötige erklärt haben. :)

MfG

Vitis
12.01.2011, 08:21
Nunja, so besonders überschwänglich muss man über Bascom nicht
unbedingt sein, es hat seine Nachteile, vor allem beim Rechnen,
Die Stack-Frame-Geschichte ist nervig, ist schon ätzend wenn man
x Stunden fehler im Code sucht und wegen dem Käse ging's die ganze
Zeit nicht und Bascom hält es nicht für nötig ne entsprechende
Warnung zu generieren.
Andererseits ist der Code halt einfach schön lesbar, bei C tu ich
mir manchmal etwas schwer die Konstrukte mit >|>&> <%<< $ zu lesen
:)

Wer sauber mit ASM proggt hat schon deutliche Geschwindigkeitsvorteile,
sprich Doku, Kommentare etc.
dauert dafür etwas länger die Proggerei.

Ich empfehle das zu nehmen wo man am Besten mit kann ;)

Aber n paar Bytes mehr an RAM hat noch nie geschadet ;)

PICture
12.01.2011, 08:31
Hallo Vitis!

Ich kenne die meiste Probleme und mir ist gerade eingefallen, dass ich noch auf einem sehr altem DOS-Lapi (486-er) QBASIC-Compiler installiert habe und mein BASIC Programm (mit nur Q-BASIC Befehlen) dort testweise kompilieren könnte um sicher zu sein, dass es fehlerfrei ist. Ich denke, dass man danach, nur für BASCOM speziefische Fehler suchen müsste.

@ alle

Was meint Ihr darüber ? Oder ist der Unterschied zwischen BASCOM und QBASIC dafür schon zu gross ? ;)

Vielleicht gibt es auch noch BASCOM Compiler, der unter DOS Betriebsystem läuft, dann hätte ich beide Compiler auf einem Lapi, sonst müsste ich (wahrscheinlich erfolgslos) QBASIC-Compiler suchen, der unter WINDOWS XP läuft bzw. versuchen den alten im DOS-Modus zum Laufen bringen. :(

MfG

Richard
12.01.2011, 09:51
Was meint Ihr darüber ? Oder ist der Unterschied zwischen BASCOM und QBASIC dafür schon zu gross ? ;)


Mache Dich doch nicht selber verrückt! In der Zeit wo Du hier über Bascom "Sinnierst" hättest Du schon etliche BASCOM Beispiele compilieren und Simulieren können. :-)

Get ganz einfach, Bascom Herunterladen, Installieren,starten und los geht es, Nach 20 Min. hast Du dein ersten Print "Hallo" am laufen. :-)

Gruß Richard

PicNick
12.01.2011, 10:00
Mache Dich doch nicht selber verrückt!


Möcht ich unterstreichen. Für Bascom KANN man nicht zu blöd sein, schau mich an, ich hab's ja auch kapiert.

"Zu Tode gefürchtet, ist auch gestorben"

hardware.bas
12.01.2011, 10:07
Soweit ich weiss, ist BASCOM ein Compiler und kein Interpreter. Für
BASIC-Freaks und Elektronikpraktiker, wie z.B. für mich. Die gute
Bedienbarkeit kombiniert mit der Möglichkeit, das reine Compilat für
den Chip zu erzeugen. Ob QBASIC ein Compiler, Compreter (ATARI-Basic) oder Interpreter ist, weiss ich nicht, da bereits die PCs mit
DOS-basierten Windoms schon viel schneller waren, als Heimcomputer,
war das auch egal. Das Fehlen von BASIC bzw. einer anderen
"Praxissprache" war für mich der Grund, dass ich erst Mitte der 90er mir
einen PC zugelegt habe. Erfreut war ich, als ich dann QBASIC darauf
fand und vorhandene Kenntnisse wieder anwenden konnte.
Das auf neuen Rechnern eine derartige Sprache fehlt, ist zwar etwas
bedauerlich, da ich diese Tools jedoch für Hardwareprojekte nutze und
es BASCOM gibt, halb so schlimm. ASM-Programmierer (ich kanns nicht)
könnten somit ebenfalls ihre fundierten Kenntnisse auch beim Einstieg
in eine weitere Chipfamilie nutzen. PICture, Du meinst bestimmt einen
QBASIC-Compiler, welchen Du zusätzlich zum DOS-QBASIC installiert
hast? Gabs da auch eine "Schnittstelle nach Aussen"? LPTs u.Co. konnte
man, glaube ich auch mit QBASIC bearbeiten. VG Micha

PICture
12.01.2011, 11:02
Hallo!

@ Richard

Ich war nur schnell beim Schlagzeugspielen, wo ich leider nicht simulieren könnte. :lol:

Danach habe ich alles geplannte zuerst langsam am einfachsten gestalten um mit Spass zu arbeiten. Ich habe Bascom schon lange installiert, kaufe aber Tiny erst, wenn ich alles vorbereitet habe, so wie ich will bzw. wie es für mich am besten möglich ist. Ich möchte eben nicht mit BASCOM, sondern mit meinen Tierchen spielen.

@ PicNick

Ich kann dich leider nicht sehen, weil ich immer noch meine Glaskugel suche ... :cheesy:

@ hardware.bas

Den QBASIC habe ich aus einer Diskette unabhängig von DOS-QBASIC installiert, kann aber leider auf die schnelle nicht nachschauen, ob es sich um Interpreter bzw. Compiler handelt. Aber zum prüfen eines BASIC Programms auf Fehler ist es egal, weil es nur die Geschwindigkeit des Ablaufs ändert. Ich kann mir nur erinnern, dass ich damit u.a. Maustreiber für PC (mit ASM Funktionen) "gebastelt" habe, um eine Maus in QBasic Programmen benutzen zu können, weil es damals nicht gab. ;)

MfG

hardware.bas
12.01.2011, 11:11
Die BASCOM Demoversion hat übrigens auch einen Simulator.
Allerdings ist dieser ziemlich langsam. VG Micha

PICture
12.01.2011, 11:21
Ich möchte mit BASCOM nix simulieren, bloss schnell einfache lauffägige Programe für meine Tierchen schreiben können, egal ob ich schon verrückt oder noch normal bin. Hoffentlich, laut PickNick, geht es ohne QBASIC. Das war nur meine leider nicht letzte "verrücke" Idee. :)

MfG

PicNick
12.01.2011, 11:31
"ich möchte nur..." ist ein guter einstieg in ein abendfüllendes und sozial isolierendes Hobby :mrgreen:

PICture
12.01.2011, 11:40
Das ich vom Geburt sozial isolliert bin, wusste ich schon bei der Berufswahl. Unser Forum, das mir riesigen Spass macht, habe ich aber wirklich ohne zu Suchen, ganz zufällig gefunden ! :lol:

MfG

radbruch
12.01.2011, 12:32
Ich hoffe sehr, dass ihr keine Simulation seid ;)

PICture
12.01.2011, 12:48
Wegen mir, bitte, keine Angst, weil ich nur ein Simulant bin. ;)

MfG

hardware.bas
12.01.2011, 14:10
Darum..... nutz ich ungern Simulatoren.
Prüfe lieber mit angehängter Peripherie.
Wie unisoliert....... VGM

Richard
12.01.2011, 15:09
Hallo!

@ Richard

Ich war nur schnell beim Schlagzeugspielen, wo ich leider nicht simulieren könnte. :lol:



Viellicht wäre das für die Nachbarn besser gewesen.....:-)

Das wir beide total anders gestrickt sind habe ich schon oft bemerkt. :-) Ich bin da eher etwas spontan, fällt mir etwas ein fange ich einfach an zu bauen. Pläne, Zeichnungen oder Pflichtenheft werden danach oder auch simultan aus dem Fertigen Projekt erstellt.

Wenn (ich) so lange zögern würde, verliere ich die Lust und das Projekt wird nie begonnen...oder ich verliere mich in der Planung "erfinde" immer neue bessere? Ideen und komme aus der "Planung" nicht mehr heraus. :-(

Gruß Richard

peterfido
12.01.2011, 16:29
QBasic und Bascom sind 2 verschiedene Paar Schuhe. Mit QBasic lassen sich keine Bascom Codes auf Fehler testen. Im Grunde sind beide Basic, aber jeder für eine andere Zielplattform. Dazu müssten alle Ein- Ausgänge, Register, unbekannte Befehle erst als Subs programmiert werden. Spätestens beim ersten Config-Befehl würde mir die Motivation flöten gehen. (Wenn ich denn dazu überhaupt eine Hätte). Zum Testen ist der eingebaute Simulator aber eine gute Hilfe.

QBasic läuft unter XP im DOS-Fenster. Ich meine mich zu erinnern, dass QBasic wie der C64 aut Interpreter Basis arbeitet. Beim fertigen Programm wird der Interpreter mit eingebunden.

Zum Thema Geschwindigkeit: Es kommt immer auf den Programmierer an. Jemand, der sich mit C oder gar ASM nicht (besonders gut) auskennt, kann auch unter diesen ressourcenfressenden Spaghetticode erzeugen.

An die Zerlegung komplexer Rechenvorgänge in mehrere kleine Schritte habe ich mich längst gewöhnt.

Richard
12.01.2011, 19:08
An die Zerlegung komplexer Rechenvorgänge in mehrere kleine Schritte habe ich mich längst gewöhnt.

Du wolltest sicher sagen musste ich mich längst gewöhnen.:-(

Ich hatte vor/zu meiner Ausbildung einen Scharp Mini Rechner (Programmierbaren Taschenrechner) mit Basic. Bei den kleinen Wunderding konnten alle Formeln SO wie man sie zum Rechnen schreibt (sogar mit Dimensionen) eingeben und das Teil hat die Antwort ausgespuckt. Echt genial, DAS wäre etwas für Bascom!!!

Gruß Richard

stefan_Z
12.01.2011, 19:08
Zum Thema Atari fällt mir dann noch ein, dass ich damals in irgend ner Zeitschrift ein Interview mit irgend ner Demogroup gelesen habe...

"Wir kommen ja ursprünglich vom C64 - dann probierten wir mal den ST aus... Das war schon krass, obwohl wir nur GFA Basic nutzten, war der Bildschirm SOFORT gefüllt, er baute sich nicht erst auf, wie beim C64!"

Ein Tiny2313 läuft mit bis zu 20 Mhz. Auf dem Atari ST hatte ich bei 8 Mhz Grafikapps, nen Soundtracker und einiger der besten Games ever - ich verstehe nicht, warum du dir Sorgen machst :-)

hardware.bas
12.01.2011, 19:30
Die Performance der AVRs kann einen schon umhauen, positiv betrachtet.
Natürlich kann das dazu verleiten das man sich bei der Programmopti-
mierung nicht mehr so viel Mühe geben braucht. Das ist ideal für solch
eine Programmierschlampe, die ich selber bin. Das Erfolgserlebnis und
die Lust, wieder zum Lötkolben zu greifen, ist eben grösser. VG Micha

PICture
12.01.2011, 21:34
Hallo!

@ Richard

Dann ist meine Vorgehenweise eine Negation deiner. Ich kann es zwar nicht Berechnen, aber dank meinem Vorgehen habe ich mir bisher seeehr viel Zeit für unnötige Tätigkeiten gesparrt. Leider habe ich es irgendwann bei mir ausprobiert und festgestellt, dass was ich langsam mache, wird als beste Lösung doch schneller fertig. ;)

@ peterfido

BASCOM ist sicher ein Dialekt vom BASIC und alle Register werden nur für den Interpreter/Compiler bekannt. Ich kann mir noch erinnern, dass ich früher auf einem PC sogar ASM Programme, wenn es um Idee und Funktionalität geht, mit QBASIC getestet habe, bevor ich mit ASM angefangen habe. Ich bin fast sicher, dass es auch beim BASCOM funktionieren wird. ;)

@ stefan_Z

Ich habe mir bisher noch nie Sorgen über Morgen gemacht. ;)

Ich versuche mich nur, wie gewöhnt, am besten informieren über das, was ich vor habe.

@ hardware.bas

Wie Du, bin ich auch, geborener Hardwar-ler und für mich bleibt die Software nur als unvermeindbares "Bauteil" um meine Hardware ins "Leben" zu bringen. Wahrscheinlich als Software-ler hätte ich mich nie im Leben wirklich wahnsinnig freuen können, weil angeblich nix reales sich bewegen würde. ;)

MfG

Gento
13.01.2011, 06:03
Q-Basic war Interpretersprache.
Turbo Basic auf Q-Basic aufbauend wurde kompiliert .

Gento

hardware.bas
13.01.2011, 06:08
Ja, jeder hat so seinen eigenen Stil. Während man Testschaltungen oftmals
schnell zusammenstrickt, um Diese zu testen, werden sie dann natürlich
final richtig zusammengebaut. Mit der Software "sollte" es ähnlich sein und
Puristen halten sich daran. Bei mir ist es so, dass ich zum Schluss lediglich
einige Variablen selbsterklärend benenne, da ich keinen Bock auf
Kommentare habe. Bin eben ein "unordendlicher Gotobenutzer".
Ansonsten kann ich Richards Ausführungen gegenüber PICtur nur
beipflichten; BASCOM ist so einfach, dass man sich nicht in die
Hintergründe reindenken muss. Einfach runterladen, installieren,
druffwecke ... und läuft!!! Die Qualitäten als ASM-Profi können trotzdem
weiter gepflegt werden ... das eine schliesst doch das andere nicht aus.
VG Micha

Richard
13.01.2011, 10:57
J
Ansonsten kann ich Richards Ausführungen gegenüber PICtur nur
beipflichten;

Na ja, diese "geniale pfuscher Qualität" lag auch am Job. Im Notdienst mit nen Kombi hast Du nicht die Möglichkeit 30 Tonnen Material mit zu schleppen. Da muss man dann Nachts um 04:00 500 km von zu Hause auch schon einmal Improvisieren können und aus Sch...Rosinen basteln. :-) Dazu gibt es Unmengen an Alarmsysteme, für alle komplette Unterlagen
mit schleppen würden noch einen 30 Tonner erfordern.:-( Mann sollte also die Grundlagen beherrschen um sich helfen zu können.

Gruß Richard

PICture
13.01.2011, 14:26
Hallo!

@ Gento

Vielen Dank für prezise Erinnerung ! Mich hat es, ehrlich gesagt, nie interessiert. :)

@ hardware.bas

Irgendwann werde ich es sicher probieren. Ich muss mich nur an die 338 mögliche Fehlermeldungen vom BASCOM gewöhnen, die ich für mich als ausreichend finde. ;)

Weil ich schon immer Programablaufdiagram (PAD) angewendet habe, ist für mich unterschiedliche Geschwindigkeit der Ausführung normal. Eigentlich seit ich ZX-80 habe (mein erster im Bedienungsanleitung als PC genanter Computer mit 1 kB RAM und 4kB ROM), habe ich parallel mit BASIC, ASM, bzw. gemischt programmiert, je nach dem was gefragt war: schnell erstellt oder schnell laufen. Beim PIC's und AVR's werde ich es, wegen unterschiedlichen ASM Mnemonics, aber nicht mischen, lieber wechsle ich den µC. :)

@ alle

Ich möchte mir für Entwicklung der Programme auch ein Tiny 84V-10 PU mit 12 I/O's kaufen um 2*16 LCD "Monitor" zu haben, weil ich so gewöhnt bin. Danach sollte das fehlerfreie Program ohne Display und dazugehörigen Befehlen auf kleinstem Tiny mit 6 I/O's laufen, oder ? ;)

MfG

funkheld
14.01.2011, 15:50
....Die meisten Programme sind aber auch gar nicht Zeitkreitisch.......

ha...ha...und ob sin die meisten zeitkritisch....

Besserwessi
14.01.2011, 16:42
Die Unterschiede zwischen einem Tiny44/84 und einem Tiny45 sind für das Programm sonst relativ gering. Bei den IO Ports sollte man meist einen abziehen - den Reset Pin wird man für die Programmierung per ISP reservieren müssen.
Etwas aufpassen muss man welche IO Ports die haben. Der Tiny45 hat z.B. PB0...PB4 als nutzbare IO Ports. Der Tiny84 aber PB0..PB2 und PA0...PA7. Auch können die HW funktionen wie Timer auf anderen PINS liegen. Ganz ohne Änderungen geht also nicht immer.

PICture
14.01.2011, 17:10
Hallo Besserwessi!

Besten Dank für deine ausführliche und für mich verstädliche Antwort. :)

Die evtl. nötige neue Zuweisung der I/O's ist mir vom Anfang klar. Ich möchte das Display immer an PA0 ... PA5 anschliessen und die PA6 als PB4 und PA7 als PB5 für meine einfache Steuerung nutzen. Dafür werde ich doch einfachen Bord basteln müssen, weil ich nicht im Dunklen arbeiten mag.

Ich habe schon Datenblätter von ATTiny's durchgeflogen und verstehe noch nicht ganz, wie man zwischen Comparator und ADC bei angeblich gleichen MUX im BASCOM umschalten kann. ;)

MfG

Besserwessi
14.01.2011, 17:17
Wie das mit MUX für den Komparator unter BASCOM geht weiss ich nicht. In ASM bzw. C setzt man den MUX beim ADC für den passenden Kanal, schaltet den ADC dann aber nicht an und stellt beim Komperator ein, das da der MUX benutzt werden soll. Wenn es ganz schlimm kommt macht man das in BSCOM halt auch mal von Hand mit direktem Zugriff auf die Register. Konstante Werte in Register Schreiben geht in BASCOM gut, das schafft der Compiler noch fast optimal.

PICture
14.01.2011, 17:28
Danke. Dann muss ich einfach beim BASCOM nur den gewünschten Register beschreiben. Es geht auch nur mit Namen (z.B. DDRC = &B00000111), da die Adressen nach der Direktive "$regfile" dem Compiler schon bekannt sind.

Somit scheinen schon alle meine "Anfängerprobleme" gelöst zu werden, da ich für einfache Steuerung nur richtige Initialisierung und Kontrolle über I/O Ports brauche. Den BASIC selbst kenne ich hoffentlich ausreichend schon seit zig Jahren.

MfG

PICture
15.01.2011, 20:22
Hallo!

Ich habe bereits laut dem Artikel für Einsteger in Wiki BASCOM installiert, kann aber gar nicht an die Fuseeintellungen kommen. Geht es dann erst bei eingeschlossenem Brenner mit AVR drin ?

Ich versuche zuerst alles theoretisch erlernen (simulieren), weil sonst, wenn ich nicht alles genau weiss, brauche ich kein Brenner basteln und kein AVR kaufen. :(

MfG

Besserwessi
15.01.2011, 21:01
Ohne wirklichen Chip sind die Fuseeinstellungen nicht wirklich wichtig. Die Simulation geht auch fast immer ohne. Bei alten Versionen ging es noch ohne Chip und tatsächlichen Programmer - bei der neuen Version will es bei mir aber auch nicht mehr so einfach. Ob es irgendwie geht ist für mich aber auch nicht so sehr von Interesse. Die Einstellungen der Fuses sind jedenfalls relativ übersichtlich - ich habe Teils BASCOM einfach nur zum einstellen der Fuses benutzt.

PICture
15.01.2011, 21:10
Ich simuliere nur das, was ich später, wenn ich die AVR's schon habe, schnell fehlerfrei machen kann. Das habe ich noch nie erlebt, dass ich einen µC hätte, und nicht wusste was ich damit machen kann/soll.

Vielleicht lässt sich das durch direktes Beschreiben laut Datenblatt (DB) (im BASCOM Programm) "CKSEL" und "SUT" Registern erledigen. Sorry, aber ich bin ASMan der bei AVR's ausschliesslich BASCOM problemlos verwenden möchte. O:)

Wenn ich das DB anschaue ist mir alles klar, wachrscheinlich habe ich keine Chancen auf AVR's mit BASCOM. :(

MfG

stefan_Z
15.01.2011, 21:27
Zum Thema Fuses immer wieder nützlich:
http://www.engbedded.com/fusecalc/

PICture
15.01.2011, 22:01
Ich glaube, dass ich mein Problem nicht richtig beschrieben habe. :(

Ich versuche also noch mal. Ich habe BASCOM AVR Version 1.11.9.1 vom Link aus Wiki installiert, konnte aber bischer nicht in das in Wiki gezeigten Fenster mit Fuseeinstellungen trotz ausgewählten STK500 Programmer nicht sehen. Ich weiss einfach nicht, was ich machen muss um den screenshoot aus Wiki zu sehen. ;)

MfG

Netzman
15.01.2011, 23:03
Einen Controller mit Programmer kaufen und anschließen :)
Zuerst wird von der Software die ID, also der Controllertyp (von der Hardware) ausgelesen, mit dem eingestellten Typ verglichen und dann die für diesen Typ verfügbaren Einstellungen angezeigt.
(Falls du das Programmer-Fenster überhaupt nicht siehst hilft F4 - ist aber wie beschrieben ohne Hardware irgendwie sinnfrei :) )

mfg

PICture
15.01.2011, 23:18
Hallo Netzman!

Besten Dank für deine, wie immer, konkrete Antwort, die mich berühigt hat. :D

Warum konnte mir bisher keiner sagen, dass ohne Programmer und AVR drin das ganz normal ist ? ;)

Dein Vorschlag mit dem Kauf nehme ich sicher dann an, wenn von mir gebastellter Programmer nicht funktioniert. Dank dir weiss ich auch schon, wie ich ihn am einfachsten testen kann. Also zwei Fliegen hast du mit einer Klappe geschlagen. :D

MfG

hardware.bas
16.01.2011, 14:38
Hallo, Netzman,
warum soll PICture einen Programmer kaufen?
Schau mal in den Thread mit den Kunsttier.
VG Micha

Besserwessi
16.01.2011, 14:54
Soweit ich mich erinnern kann, ging es bei älteren Versionen von BASCOM auch ohne Programmer und CHIP sich den Fusebit Teil anzuschauen. Bei der neueren Version geht es offensichtlich nicht mehr. Da muss wohl erst ein µC erkannt werden.

So schlimm ist die Einschränkung aber nicht. Für die Simulation ist es weitgehend nebensachlich wie die Fusebits eingestellt sind. Das geht auch ohne - außer vielleicht mit kleinen Abweichungen beim Watchdog. Das die Simulation da so genau ist, müßte man aber auch erst sehen.

Mit Programmer und µC kann man dann die Fuses auch einstellen.

Richard
16.01.2011, 15:10
Soweit ich mich erinnern kann, ging es bei älteren Versionen von BASCOM auch ohne Programmer und CHIP sich den Fusebit Teil anzuschauen. Bei der neueren Version geht es offensichtlich nicht mehr. Da muss wohl erst ein µC erkannt werden.



Was auch durchaus Sinn macht, die Fusebits haben ja letztendlich mehr mit der Chip internen Hartware als mit der Software zu tun. Ich habe bisher nur selten an den Fuses "herum gespielt", in den meisten Fällen reicht ein Werksprogrammtrier Chip für kleinere Anwendungen aus. OK. von Quarz Betrieb einmal abgesehen, die internen "Zeitgeber" lassen zu Wünschen übrig......Anfänger, Neulinge und über kluge welche Datenblätter nicht brauchen...Sollten von den Fuses einfach die Finger lassen. :-)

Gruß Richard

hardware.bas
16.01.2011, 15:14
Ich sehe jedenfalls keinen Sinn, in der BASCOM-Simulation Fuse-Bits zu
setzen. Habe übrigens nie danach gesucht, warum auch.
"Echtzeitsimulation" geht eh nur mit angeschlossener Hardware
inkl. Response der Peripherie. VG Micha

peterfido
16.01.2011, 15:31
Die Fuses sind erst interessant, wenn man diese am AVR ändern / anschauen möchte. Je nach angeschlossenem AVR sieht das Fenster, bzw. die darin gebotenen Optionen anders aus. Man kann aber auch ohne angeschlossenen Programmer da rein sehen: Das würde dann so wie im Anhang aussehen.

PICture
16.01.2011, 17:01
Hallo!

Danke an Euch alle für die Beiträge, die mir neues Wissen über BASCOM bringen. :D

Ich habe das Fenster mit Füseeinstellungen im Wiki gesehen und hoffe, dass nachdem mein Brenner fertig ist und die AVR'S ankommen, würde ich es sogar direkt auf meinem Lapi sehen. ;)

Auf ersten Blick, nach kurzem Stöbern, finde ich den BASCOM sehr gut. Er ist für mich zwar momentan überdimmensioniert, ermöglichst mir aber mit ein paar Befehlen schnelle hardwarenahe Programmierung meinen langsamen Tierchen, was mich wirklich sehr freut. Ich werde eben versuchen den BASCOM als "Hochassembler" (HASM) zu nutzen.

MfG

hardware.bas
16.01.2011, 17:22
Was ist HASM? Meinst Du damit "maschinennah" programmieren?
Ich hatte zu ATARI800XE-Zeiten auch öfters den Ehrgeiz PEEKs und
POKEs zu verwenden und nutze auch in BASCOM meistens direkten
Registerzugriff. Ist es das, was Du meinst, oder bin ich hier auf dem
Holzwege? VG Micha

PICture
16.01.2011, 17:42
Genau ! :)

Ich habe den Begriff "HASM" scherzweise gerade erfunden, es gibt aber wirklich nicht. Weil mich das nicht interessiert, wo der BASCOM die Variablen im RAM plaziert, gibt es für mich "PEEK" und "POKE" aus C64-Zeiten nicht mehr. Ich möchte bloss alle Pins/Ports direkt einlesen/beschreiben. ;)

MfG

hardware.bas
16.01.2011, 17:49
Na, dann lag ich ja richtig. Beim 8-Bit-ATARI und sicher nicht nur bei
dem, konnte man mit PEEK und POKE manche Sachen individueller
lösen, als mit den teilweise proprietären Befehlen. Jedoch... Geschichte
und gehört ja auch nicht zum Thema. Aber der kreierte Begriff ist
nicht schlecht! VG Micha

PICture
16.01.2011, 18:15
Weil ich übersichtlige Programme mag, möchte ich alle meine hoffentlich kleine BASCOM Programme änlich ASM gestalten (Beispiel ohne Direktiven):

call sub init
haupt
do
call sub 1
call sub 2
.............
call sub n
loop

alle sub's mit return

sub init
return
end

Ich glaube, dass solche ASM-änliche Gestaltung meiner Programme für BASCOM klar seien sollte, oder ? ;)

MfG

PicNick
17.01.2011, 08:01
Als abgebrühtem Assembleur helfen Dir auf deinem eingeschlagenem Weg vielleicht ein paar Infos, was Bascom in seiner Wut so mit dem µC anstellt.

http://www.rn-wissen.de/index.php/Bascom_Inside
http://www.rn-wissen.de/index.php/Bascom_Inside-Code
http://www.rn-wissen.de/index.php/Assembler_Einf%C3%BChrung_f%C3%BCr_Bascom-User

PICture
17.01.2011, 15:46
Hallo PicNick!

Vielen Dank für deine Links, die ich früher bereits gelesen habe. :)

Bei mir hat der µC bisher immer nur das gemacht was ich wollte, weil ich nur mit PAD's arbeite, die alle Möglichkeiten enthalten. Deswegen kann ich mir das nicht vorstellen, was du meinst. Jeder Assembler, Interpreter bzw. Compiler ist, so wie er ist und ich weiss, dass wenn man ihn ausreichend kennt, darf seine potenzielle "böse" Überraschung nie auftretten.

Ich kenne den Unterschied zwischen einfachem Steuerprogramm und z.B. komplizierter grapfischer Bearbeitung von Kamerabilder. Deswegen glaube ich nicht, dass es bei mir unerwartete Problemme geben sollte. ;)

Falls doch, möchte ich keine Fragen über Problemen mit BASCOM stellen, weil sie nur die Folge meines Unwissens seien können und lernen will ich am liebsten aus eigenen Fehler ohne fremder Hilfe. Ich bin eben schon sicher, dass Fehler im Programm, kann am schnellsten der Ersteller finden, der den PAD dafür hat. ;)

MfG

PicNick
17.01.2011, 15:54
Richtig: Wenn's Probleme gibt, dann sitzen sie meistens VOR dem Bildschirm

PICture
17.01.2011, 16:21
Bitte das nur als Spass nehmen: PIC = Programmierer In Chaos und AVR = Allein Vor Realproblem. :cheesy:

MfG

Searcher
17.01.2011, 16:44
Auch Versuche was zu Regeln

Seit heute ist meine Bestellung mit ATtiny45-20PU und 74HC125 unterwegs. BASCOM Demo gerade runtergeladen. Dachte, daß ein bißchen mehr Speicher beim Tiny nicht schaden kann. Wegen GAU hab ich mal zwei genommen :)

Übrigends sind auch ein paar 74HC73 für eine paralleles Bauvorhaben dabei :wink:

Gruß
Searcher

PICture
17.01.2011, 17:21
Hallo Searcher!

Das freud mich wirklich, dass du dich schon entschlossen hast den ersten für alle junge Menchen unvermeindbaren Schritt in Richzung µC zu machen, da ein s.g. TTL-Grab schon zur Vergangenheit gehört. :)

So wie ich dich bisher kenne, reichen deine Hardwarekentnisse dafür schon, um ein optimales Programm aufgrund vom PAD zu schreiben. Man braucht eben sowohl Hardware als auch Software, damit sich etwas reales bewegt. Und beides bedarf die Optimierung und am Ende ist es immer ausgewogener Kompromis. Wenn ich etwas softwaremässig zu umständlich bzw. unmöglich finde, löse ich es in der Hardware und umgekehrt, da ich es schon (fast) ewig gewöhnt bin. ;)

Mir bleibt also nix mehr übrig, als dir nur Spass und Erfolg wünschen. :D

MfG

PICture
19.01.2011, 22:43
Hallo!

Ich habe mir schon das Entwickeln von BASCOM Programmen für meine Tierchen vorgestellt und im Code skizziert. Auf einem z.B. 4*16 Display möchte ich während der Programmentwicklung mich interesierte aktuelle Werte der Variablen sehen (bis zum 32). Somit möchte ich sehr hilfreiches für Erstellung des Programms Variablenmonitoring und kein Display im fertigen Spielzeug haben.

Weil ich mit AVR's Anfänger bin, bitte ich Euch um Anschauen und eventuelle Fehler melden. :)

MfG


ATTINY 45V-10 PU ATTINY 84V-10 PU

/ \ / \
| VCC - VCC | | VCC - VCC |
| | | |
| GND - GND | | GND - GND |
| | | |
| MOSI - PB0 | | MOSI - PA6 |
Brenner < | Brenner < |
| MISO - PB1 | | MISO - PA5 |
| > Hardware | > Display
| SCL - PB2 | | SCL - PA4 |
| _____ | | |
| RESET - PB5 | | RESET - PA2 |
\ | \ |
- PB4 | PA3 |
| |
- PB3 | PA7 |
/ /
\
PB0 |
|
PB1 |
|
PB2 |
> Hardware
PB3 |
/ |
| PB4 -> PA0 |
für ATTINY 45 < |
| PB5 -> PA1 |
\ /


(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)

Dani-Bruchflieger
24.01.2011, 18:06
Da die AVR's nach meinem bisherigen Wissen nur 5 Leitungen für ISP brauchen (MOSI, MISO, SCK, VCC und GND) möchte ich zum Anschliessen an "Spielzeug" und Brennen nur 5-adriges Kabel mit einem flachen Stecker aus Stiftleiste nutzen.

Hi,

sorry, aber du wirst noch eine 6. Leitung benötigen: Reset

PICture
24.01.2011, 18:20
Hallo Dani-Bruchflieger!

Danke für deine Information. :)

Inzwischen weiss ich das schon und werde 6-adriges ISP Kabel verwenden.

Die gemessene Kapazitäten im geplannten 9-adrigen Kabel zwischen biliebigen zwei Adern um 200 pF und biliebiger Ader gegen Schirm über 500 pf betragen, würde ich den Schirm nur einseitig mit GND verbinden und auf beiden Enden des Kabels ein Treiber 74125 verwenden, weil es sicher funktionieren sollte.

Da meine Spielzeuge meistens nur mit zwei NiMH Akkus (min. 2V) versorgt werden und ich keine Simulationen mag, wird auf dem Board ein ICL7660 für Spannungsverdopplung fürs Display integriert (Siehe dazu Skizze von 11.02.2009, 19:13 in: https://www.roboternetz.de/phpBB2/viewtopic.php?t=29062 ).

Nach detailierter Analise scheint mir jedoch für geplannte Spelzeugbots BASCOM (für mich Neuland) komplizierter als ASM für PIC's und ich werde es vielleicht später für kompliziertere Steuerungen lernen und anwenden. :)

MfG