mikrocontroller.net

Forum: Projekte & Code pAVRasm ein AVR Compiler für PalmOS


Autor: Th. B. (thbaum)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hallo zusammen,

als Hommage auf ein längst vergessenes BS stelle ich hier mal ein 
kleines Tool zur AVR Programmierung für PalmOS vor. pAVRasm ist ein AVR 
Assembler für den PDA. In der aktuellen Version werden die Controller 
ATtiny13 und 13a unterstützt. Hier die Projektseite mit Download und 
Anleitung für einen kompatiblen (avr910) Programmer.

http://tiny.systems/article/pAVRasm.html

In der Zip findet Ihr einen Texteditor und den Assembler. Ein Editor für 
die Fuses ist auch integriert.

Kleine Demo zur Spielerei:
Youtube-Video "AVR Assembler for PalmOS"

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Finde ich prima, das da für PalmOS sowas noch gemacht wird!
Die PalmOS Geräte sind für 1-2€ zu bekommen und als kleine 68000 Rechner 
mit
Display und Eingabemöglichkeit völlig verkannt.

Peter

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@thbaum: Mir ist da si einiges noch nicht klar..

MMR-70 enthält einen Atmega32L der über ISP mit dem von dir 
modifizierten Program zum AVR910 Programmer wird - korrekt? Welche Fuses 
sind zu setzen?

Da hast ihn als ein Beispiel über einen USB-TTL Wandler am PC dran 
gehabt - korrekt?

Den Anschluß an den Palm habe ich so noch nicht verstanden.. Orig. 
Anschluss ablöten und dann passenden Palm Anschluss anlöten.. RX MMR-70 
an RX-Palm und TX MMR-70 an TX-Palm oder über Kreuz?

Woher erfolgt die Stromversorgung des MMR-70 (und der Tiny Targets) wenn 
er am Palm steckt?

Peter

Autor: Th. B. (thbaum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An den Fuses wurde nichts geändert. Sie bleiben LOW: 0xEF HIGH: 0xDF
Für den Anschluss an den Palm (serielle Schnittstelle) werden die 
Leitungen TxD und RxD gekreuzt. Als Spannungsversorgung kann Pin 9 (+3.2 
V, 100 mA max.) verwendet werden. Er versorgt auch das Target. Aber 
Vorsicht die Angabe 100mA sollte man ernst nehmen.

Ich hab das nochmal hier zusammengefasst:
http://tiny.systems/article/palmISPProgrammer.html

Für den Programmer hab ich eine Ladestation geopfert um an eine 
Connector-Buchse zu kommen. Einbau in die Cradle wäre aber auch denkbar.

Gruß Thomas

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok. Danke. Flashen ging ohne Probleme. Diode ist auch umgelötet.
Bekomme aber über USB CP2102 Dongle keine serielle Verbindung über 
TeraTerm mit com4 und 9600 8N1?

Ich wollte erst einmal 'v' 'V' eingeben, um zu sehen, ob er sich 
irgendwie meldet..?

Peter

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm..

Selbst so ein simpler Bascom Test liefert nichts zurück an der seriellen 
Schnittstelle:
$regfile = "m32def.dat" 'Define your own
$crystal = 3686400
$baud = 9600

Do
 Print "Hello World"
Waitms 200

Loop
End

??

Weiß du an welchem Pin die LED des MMR70 hängt?
Dann kann ich ja mal blinken lassen..
--
Loop-Test Rx+Tx gebrückt am USB TTL Dongle echoed mir die Eingabe 
seriell zurück - der scheint als ok zu sein.

Peter

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
LED hängt an D7.
$regfile = "m32def.dat"                                     'Define your own
$crystal = 3686000

Config Pind.7 = Output
Do
  Portd.7 = 1
  Waitms 500
  Portd.7 = 0
  Waitms 500
Loop
End

Läßt die LED schön blinken..

Hmm..?? Warum geht seriell nicht..?

Evtl. mal ein 2tes Modul versuchen..

Peter

Autor: Th. B. (thbaum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir ist da ein Fehler aufgefallen. In dem Bild wo die Diode umgeklappt 
ist gibt es einen MS Paint Fail. Die Diode wird nur nach unten gedreht. 
Polung für den verbleibenden Anschluss bleib die selbe. Vll hilft das 
weiter.

Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,

erstmal finde ich sehr gut die Palms noch zu nutzen und daß Du eine 
Spitzen- Software dafür schreibst !

Das es die Geräte so ja leider  nicht mehr gibt ist schade.

Ich habe Probleme:

1. mein  M105 hängt sich regelrecht auf, d.h. nach Start des Editors 
kommt eine Fehlermeldung, die nur durch ein Reset das Gerät "zurückholt"

2. M515 / Zire 21 funktionieren ohne Probleme

3. Den Flasher MMR- 70 habe ich nachgebaut--klappt !!!

4. Ist es möglich einen anderen Chip (evtl. ATTINY2313 statt des 
ATMega32
   mit der Flasher-SW zu programmieren? Der Brenner wäre dann kompakter.

5. Gibt es eine Chance den Zire 21 (USB- Buchse) mit einem Brenner zu 
verbinden?

Danke und Grüße

Fred

Autor: Peter S. (petersieg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Th. Baum schrieb:
> gibt es einen MS Paint Fail

Nö..?? Habe es ausprobiert. Tx finde ich weiter oben siehe Bild.
Nu klappt es.

Wer die Test.bas + Hex möchte.. im Anhang.

Danke, Peter

: Bearbeitet durch User
Autor: Peter S. (petersieg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Entweder gibt es 2 Varianten.. oder..??

Rx ging bei mir an Punkt 14 so auch nicht!

Neues Bild - dort ging es. Schottky Diode hatte ich ganz rausgenommen.

Im ZIP ist nun auch ein TinyBasic dafür drin. 9600 8N1.

Peter

Autor: Th. B. (thbaum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Fred,

vielen Dank. Ich muss mir mal einen m100/105 zulegen um das 
nachzustellen.

> 1. mein  M105 hängt sich regelrecht auf, d.h. nach Start des Editors
> kommt eine Fehlermeldung, die nur durch ein Reset das Gerät "zurückholt"
>
Den Editor "SrcEdit" habe ich nicht selbst geschrieben. Er kommt aus dem 
OnboardC Projekt. Versuche es mal mit einer älteren Version.
Alternativ kannst Du auch jeden anderen Texteditor nehmen der ungepackte 
Doc Dateien erstellen kann.

> 4. Ist es möglich einen anderen Chip (evtl. ATTINY2313 statt des
> ATMega32
>    mit der Flasher-SW zu programmieren? Der Brenner wäre dann kompakter.
>
Ja das ist sogar ohne Änderung des Codes möglich. Der Autor des AVR-Prog 
stellt auf seiner Seite eine 2313 Version bereit.
http://www.klaus-leidinger.de/mp/Mikrocontroller/A...
Allerdings ist es nötig die Pegel am tiny2313 anzupassen bzw. TxD und 
RxD zu invertieren damit eine Verbindung zum Palm möglich ist. Damit 
wird die Schaltung nochmal größer.

> 5. Gibt es eine Chance den Zire 21 (USB- Buchse) mit einem Brenner zu
> verbinden?
Möglichkeiten gibt es immer. Allerdings besitzt der Zire21 keinen 
USB-Host Mode. Es wäre also nötig den Programmer als USB-Host zu 
betreiben. Sehr aufwendig und die Software ist dafür nicht ausgelegt.
Du könntest jedoch einen IR-Programmer aufbauen, ich würde dann in die 
nächste Version die Option IrDA, RS232 einbauen. Sollte da wirklich 
Interesse bestehen bitte eine Mail an mich ich hätte hier noch einen 
IRDA Stack für AVR (Pico-IrDA).

Gruß Thomas

Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

@Peter

Wofür ist TinyBasic, läuft das unter PalmOS?

@Thomas

Danke für die Antwort. Ich nahm an, daß man den Programmer kleiner bauen
kann. Mein Kollege hat einen MMR- Progger gebaut und sein Cradle 
umgebaut,
klappt gut, aber ist halt recht klobig.
In der Originalschaltung von Leidinger sind doch schon 2 Trans. als 
Wandler
da. Was muß noch geändert werden damit es am Palm klappt?
Geht nicht auch ein MAX23... dafür und dann der ATTINY2313 ?

Danke bis dann.
Fred

Autor: Th. B. (thbaum)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fred schrieb:

> @Thomas
>
> Danke für die Antwort. Ich nahm an, daß man den Programmer kleiner bauen
> kann. Mein Kollege hat einen MMR- Progger gebaut und sein Cradle
> umgebaut,
> klappt gut, aber ist halt recht klobig.
> In der Originalschaltung von Leidinger sind doch schon 2 Trans. als
> Wandler
> da. Was muß noch geändert werden damit es am Palm klappt?
> Geht nicht auch ein MAX23... dafür und dann der ATTINY2313 ?
>
> Danke bis dann.
> Fred

Sonst muss nichts geändert werden. Ja mit dem MAX232 läuft das. Aber 
bist Du sicher, dass die Schaltung dann kleiner wird als mit dem MMR. 
Planst Du die Schaltung in SMD? Dann würde das ja sogar in ein Kabel 
passen.

Autor: Peter S. (petersieg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fred schrieb:
> Wofür ist TinyBasic, läuft das unter PalmOS?

Das läuft auf dem AVR ;-)

Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.