mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bascom - Pinbelegung in Testprogramm


Autor: Georg B. (schorschi)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
blutiger AVR Anfänger braucht Hilfe !!!!!!
Nach dem ich etwas mit Bascom beschäftigt habe, möchte ich gerne einen 
kleinen Controller (ATTiny45) in meiner Schaltung einsetzen. Zuvor 
möchte ich das Teil auf dem Testboard aufbauen und mit der 
Programmierung etwas austesten. Der ATTiny45 hat ja keine Hardware Uart 
kann aber trotzdem per RS232 (Software Uart) Daten senden. In dem 
angehängten Beispiel (aus den Bascom Sample) ist ""Open 
"COMB.0:19200,8,N,1" For Output As #1"" als Programmzeile eingefügt - 
ich denke das bestimmt die Randbedingung der Übertragung. Aber an 
welchem Pin des 8 poligen MC liegen Rxd und Txd ??????
Aus dem 231 Seiten des Datenblattes und der Bascom Hilfe werden ich 
nicht schlau und mein altes Schulenglisch ist mir auch keine Hilfe.

HILFE !!!!!!!

Danke für Eure Mühe einem Anfänger zu helfen.

Gruß
Georg

Autor: John Small (linux_80)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Aus der Bascom-hilfe zu Open:
COMB.0:... für PortB.0
COMD.1:... für PORTD.1


The format for the software UART is: COM pin :....
Where pin is the name of the PORT- pin.


Da es ja in Software geschieht, hilft das DB des AVR selber nicht 
weiter, man kann/muss sich einen Port aussuchen.

Autor: Georg B. (schorschi)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Tiny 80,
danke, das ist mir eine große Hilfe. Die Komunikation funzt dann sicher 
wie bei den open c-controllern über die im Anhang dagestellte 
Schnittstelle mit dem Max232.

Achja die GetADC(Channel) konnte ich auch identifizieren.
Nur mit den PWM-Kanälen - die vertausche ich immer. Da das Testprogramm 
ja auf dem Tiny45 laufen soll und einige pins bauartbedingt ausscheiden, 
bleiben nach dem COMB.0:... für PortB.0, dem GetADC(0) nicht mehr viele 
Pins über, die es sein könnten. Obwohl da habe ich Zweifel die PWM Pins 
OC0A und OC0B, OC0a liegt auch auf PB0 und kolidieren da nicht die Com 
und die PWM mit einander.

Danke für deine Zeit

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn mehrere Features auf denselben Pins liegen, dann musst Du Dich 
natürlich für eines davon entscheiden, Du kannst nicht mehrere Features 
eines Pins gleichzeitig benutzen.

...

Autor: Georg B. (schorschi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hannes,
genau das ist die Frage, ist das in dem Beispiel so, dass die Com und 
die PWM den gleichen Ausgang benutzen. ???????

Gruß
Georg

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Georg Bremus wrote:
> Hallo Hannes,
> genau das ist die Frage, ist das in dem Beispiel so, dass die Com und
> die PWM den gleichen Ausgang benutzen. ???????

Das kann ich Dir nicht sagen, für BASCOM bin ich zu blöd, ich werkele 
bei AVRs in ASM. Ich meine aber, oben gelesen zu haben, dass die 
Soft-UART-Ports CONFIGurierbar sind. Wenn Du den PWM-Pin für PWM 
brauchst, dann solltest Du Soft-UART auf andere Pins CONFIGurieren. Wie 
das geht, müsste in der Hilfe zu Soft-UART und/oder der Hilfe zum 
CONFIG-Befehl zu finden sein.

>
> Gruß
> Georg

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frag mal Paul, der kann Dir das erklären...

...

Autor: John Small (linux_80)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dieses Testprogramm macht ja nicht alles auf einmal, sondern zum testen 
alles hintereinander, deswegen werden die Ports mehrfach benutzt.

Evtl. war dieses Testprogramm ürsprünglich mal für einen anderen AVR 
geschrieben worden, der mehr Pins zur Auswahl hatte.

Autor: Paul Baumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist so, wie Tiny80 schrieb. Erst wird der ganze Port B 
getoggelt,
danach über die "künstliche" serielle Schnittstelle "Hello World" 
ausgegeben, dann der ADC-Kanal 1 eingelesen und zum Schluß noch die PWM 
in Gang gesetzt und da bleibt er dann bis zum Erbrechen. ;-)

Wenn Du nicht nur die Richtung MC--->PC für die Übertragung nutzen 
willst sondern auch anders herum, dann mußt Du noch einen 2. Pin dafür 
definieren:
Z.B.
Open "comb.1:19200,8,n,1" For Input As #2

Guck mal in die Hilfe zu dem Befehl "OPEN". Dort ist ein Beispiel dafür.

MfG Paul

Autor: Georg B. (schorschi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen
und danke an alle. In der Hilfe habe ich zwischenzeitlich etwas 
nachgesehen und auch die Option Serin und Serout bemerkt. Dann könnte 
man die pseudo RS232 sogar an einem Pin verfügbar machen - wie bei den 
Erfahrungen mit den Open-C-Controllern.

Super das hier die Fachkompetenz die auch absoluten Anfänger hilft 
vorhanden ist.

Ich sage an der Stelle noch mal Danke für die Hilfe.!!!!!!

Gruß
Georg

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.