Hallo Ich bin total neu in der Welt der Mikrocontroller. Ich habe es geschafft ein Programm auf mein ATmega8a zu übertragen, welches nur eine LED blinken lässt. Jetzt wollte ich ein anderes Programm übertragen, doch Bascom avr erkennt mein Mikrocontroller nicht. Kann es daran liegen, dass schon ein Programm vorhanden ist und ich das erst löschen muss? Dazu habe ich noch eine Frage zu einem Befehl. Ich will in meinem nächsten Programm einen Taster mit einbeziehen. In den Programm was ich schon habe wird der Taster so verwenden, dass die LED blinkt wenn der Taster gedrückt ist. Gibt es auch eine Möglichkeit ein Programm erst abzuspielen, wenn der Taster einmal gedrückt wurde? Sodass er nicht die ganze Zeit gedrückt bleiben muss? Also dass er einmal gedrückt werden muss, um das Programm zu starten? Schonmal Danke für die Hilfe LG Laura Emig
Laura schrieb: > Kann es daran liegen, > dass schon ein Programm vorhanden ist und ich das erst löschen muss? Nein. Laura schrieb: > Gibt es auch eine Möglichkeit ein Programm erst abzuspielen, wenn der > Taster einmal gedrückt wurde? Sodass er nicht die ganze Zeit gedrückt > bleiben muss? Also dass er einmal gedrückt werden muss, um das Programm > zu starten? Ja. Taste abfragen, wenn gedrückt Merker (Flag) setzen. Wenn Flag gesetzt, dann Programm starten.
Hubert G. schrieb: > Ja. Taste abfragen, wenn gedrückt Merker (Flag) setzen. Wenn Flag > gesetzt, dann Programm starten. Könntest du mir ein Beispielprogramm schicken? LG Laura Emig
Laura schrieb: > Ich habe es geschafft > ein Programm auf mein ATmega8a zu übertragen, welches nur eine LED > blinken lässt. Laura schrieb: > Könntest du mir ein Beispielprogramm schicken? Schick doch mal das Programm, dass du schon mal uebertragen hast. Das koennte man dann modifizieren.
Laura schrieb: > Also dass er einmal gedrückt werden muss, um das Programm > zu starten? Da stimmt deine Vorstellung von den Abläufen im µC noch nicht. Sobald der ATmega mit Strom versorgt wird, fängt er kurze Zeit danach an, das Programm in seinem Speicher abzuarbeiten. Das tut er so lange, bis jemand ihm den Strom abdreht (Sleep, WDT u.ä. erstmal außen vor gelassen, das kommt später). Ob er im Programm auf das Drücken einer Taste wartet und dann irgend etwas bestimmtes tut, hängt einzig von deinem Programm ab.
das "led bild" ist auf dem controller und das zweite Bild ist das schon beschriebene. Danke schonmal LG
Laura schrieb: > das "led bild" ist auf dem controller und das zweite Bild ist das schon > beschriebene. Bitte als Textdatei anhängen oder in den Code Tags einschließen wie es unter "Formatierung" unter "Antwort schreiben" beschrieben ist bzw auch hier http://www.mikrocontroller.net/articles/Formatierung_im_Forum Aus einem Bild heraus wird kaum jemand etwas abschreiben, wenn er es per copy und paste bekommen könnte.
1 | Taste Alias Pinb.0 |
2 | Config Portb.0 = Input |
3 | Portb0 = 1 |
4 | Dim Progstart As Bit |
5 | |
6 | Do
|
7 | If Taste =0 Then |
8 | Progstart = 1 |
9 | End If |
10 | |
11 | If Progstart = 1 Then |
12 | Hier kommt dein Programm |
13 | |
14 | End If |
15 | Loop
|
16 | |
17 | End
|
Wenn du am Ende deines Programms Progstart wieder auf 0 setzt, dann läuft es nur einmal durch, ansonst endlos.
Danke. Ich glaube mit diesem Tutorial sollte ich es hingekommen. Danke nochmal LG Laura Emig
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.