-
@murus:
Zur LPT-Adresse hab ich dir doch vorhin schon Link gegeben wo du Einstellungen siehst:
https://www.roboternetz.de/wiki/pmwi...Main.Avrbascom
Und bei Registern werden die Bits von 0 bis 7 gezählt. Also 0 mitzählen, dann sind es 8
Belegung des ISP Stecker siehst du auch hier
https://www.roboternetz.de/wiki/pmwi...n.RNIspstecker
Pin2 sind die 5V zur Versorgung des ISP Dongels
-
Hallo Murus,
ich würde Dir Vorschlagen, Dir das Buch "AVR Mikrocontroller Lehrbuch" von Roland Walther zuzulegen. Dort werden alle Deine bisherigen Fragen angesprochen.
Die Ausgänge kannst Du nur mit 20mA, sprich 0,02A belasten.
Die Ports B, C und D haben eine unterschiedliche Anzahl von Pins (6, 7 oder 8). Der optischen Übersichtlichkeit halber werden die Register im Bascom oft mit 8bit gesetzt, dabei werden unbenutzte Pins aber ignoriert.
Das steht aber auch alles in dem genannten Buch. Ich kann es Dir aus eigener Erfahrung empfehlen.
Gruß Dirk
-
Ok, Buch ist bestellt.....
mal sehen, wie das herauskommt..
Stimmt der obige Code? Möchte nämlich mal schnell testen, ob die Gurke funktioniert, bis das Buch kommt... Sonst bleib ich wieder irgendwo hängen...
Oder hat sonst wer einen Code, um ne LED anzuschalten ohne Taster?
Greets
Mario
-
Bis das BUch kommt kannst du dir einmal die Beispiellektionen auf www.rowalt.de anschauen. Dort sind Ports UART und Timer schonmal erklärt !
greetz
-
Hallo Murus,
das mit der Bestellung ist eine gute Idee von Dir. Du wirst es nicht bereuen.
Der Code ist schon i.o.
Du kommst nur Ducheinander, weil dort unbenutze Pins mitgesetzt werden, welche Du garnicht brauchst. Eventuell ist ja dies hier für Dich übersichtlicher:
$regfile = m8def.dat ; Ok für ATmega8
$crystal = 1000000 ; richtig für den internen Oszi
$baud = 9600 ; falls Du etwas an die serielle Schn. anschließen willst
DDRD.3 = 1 ; Pin PD3 als Ausgang konfigurieren
PORTD.3 = 1 ; PD3 auf High (+5V) setzen.
do ; wo "herum" macht er den loop??
' mache nichts weiter
loop
end
Weil Du zum Einschalten der LED den Ausgang auf Hi legst, muß die LED natürlich mit der Kathode nach Masse (Minus) gelegt sein. Den Vorwiderstand nicht vergessen.
-
Ok, vielen Dank! Das Buch wird sicher helfen...
Na dann! Auf ins Abenteuer! Ich werd heut abend mal den obigen Code draufbügeln und testen, ob es geht! Das Bascom-Basic ist ja recht einfach...
Herzliche Grüsse
Mario
-
Jaaaaa!!!!! Es hat geklappt!!!!! Geil, die LED leuchtet... Haha, juhuuuuu, Erfolgserlebnis! *Freu!*
-
Hallo,
und jetzt noch einen Taster ran und die LED damit schalten ;-)
Dirk
-
Hmm, moment mal: Kann ich einen Taster direkt an den Pin anschliessen (den anderen Pin des Tasters an GND)... eher net, sonst killts den AVR...
Wo kommt der externe Pullup hin, wie sieht das aus?
Kann ich dann machen:
DDRD.5=0 (Pin 5(Taster) = Eingang)
do
If PIND.5=1 Then
PORTd.3=1
Else
Portd.3=0
Endif ; brauchts ein Endif?
loop
-
Hallo,
hier mal ein paar Codefragmente für Dich, einfach in Deinem Programm mit einbauen:
'Konfiguration eines Einganges für die Taster
Portd.4 = 1 'PullUp von Pin PD5 aktivieren
Ddrd.4 = 0 'als Eingang'
Declare Sub Keypressed 'Subs müssen deklariert werden'
do
Debounce Pind.4 , 0 , Keypressed , Sub 'Entprellt
loop
end
Sub Keypressed
Toggle PORTd.3 'oder was Du willst
End Sub
den Schalter einfach mit einem Anschluß an Masse, den anderen Anschluß an den Controller-Port
Gruß Dirk