Habe nun das Lauf licht gesteckt. Programmcode siehe hier: $regfile = "m8def.dat" $crystal = 1000000 Config Portc.0 = Output Config Portc.1 = Output Config Portc.2 = Output Do Portc.0 = 1 Portc.0 = 0 Waitms 100 Portc.1 = 1 Portc.1 = 0 Waitms 100 Portc.2 = 1 Portc.2 = 0 Waitms 100 Loop End Aber es leuchten die Led's immer dauerhaft...und nur ganz schwach! Das sind eigentlich ultrahelle LED's warum leuchten die denn so schwach? selbst wenn dich die Widerstände kleiner wähle bleiden sie so schwach. Oder muss ich noch unter Fuses iwas einstellen?
Kein Wunder du schaltest sie auch gleich wieder aus. Das hier: Portc.x = 0 gehört hinter waitms eigentlich sollten sie gar nicht leuchten.
$regfile = "m8def.dat" $crystal = 1000000 Config Portc.0 = Output Config Portc.1 = Output Config Portc.2 = Output Do Portc.0 = 1 Waitms 500 Portc.1 = 1 Waitms 500 Portc.2 = 1 Waitms 1000 Portc.0 = 0 Portc.1 = 0 Portc.2 = 0 Waitms 200 Loop End Jetzt hab ich versuch das sie nacheinander an gehen und dann alle aus...aber die leuchten trotzdem nur so schwach und dauerhaft... Der USBsmart light Programmer liefert ja die 5V....aber das die so dunkel sind versteh ich net.
Atmega8 ist der Controller... Auf dem Brett ist jetzt der myusbsmart stick mit dem controller verbunden. (auslesen und flashen geht) Dann hab ich am Pin 22-23 die led's hängen mit Vorwiderstand.
Wenn ich jetzt im AVR Studio 4 auf "Read Signature" klicke dann blinken die drei Led's ganz schnell aber alle gleichzeitig und richtig hell....
Nimm mal ein paar andere Pins als die für SPI. Da gibts wenn ich mich richtig erinnere bestimmte "Regeln".
Lass die Fuses mal, die sind meist ganz gut. Sry, ich hab grad geschlafen, PORTC ist ja gar kein SPI. Eigentlich müsste es funktionieren. Überprüfe vielleicht deinen Aufbau nochmal: Es sollte so aussehen: PORTC -> Vorwiderstand + LED -> GND
Matthias H. schrieb: > aber die leuchten trotzdem nur so schwach und dauerhaft... sicher dass dein uC mit 1 MHz läuft? Wenn er mit 8 MHz laufen würde, könnte das das Fehlerbild erklären.
Floh schrieb: > sicher dass dein uC mit 1 MHz läuft? > Wenn er mit 8 MHz laufen würde, könnte das das Fehlerbild erklären. Hab ich auch schon gedacht, aber die längeren Wartezeiten (500ms) schließen das aus.
Also der Aufbau ist so...PortC Vorwiderstand LED... Ich weiß echt net an was es liegt. Wo kann ich schauen ob er wirklich mit 1 MHZ läuft... Aber das flashen läuft ohne Probleme!
Also hier hab ich nen unterschied gefunden....bei mir fehlt dieses Bauteil an Pin 9... Kann das der Fehler sein? Doch der Atmega8 kann doch selbst intern den Takt erzeugen... Soll ich doch mal Port D verwenden, denn Port C hat bei dem Atmega8 ne Sonderrolle wie ich grad gelesen hab!
In Bascom kenne ich mich recht wenig aus. In c würde das so aussehen:
1 | #include <avr/io.h> |
2 | #define F_CPU 1000000UL
|
3 | #include <util/delay.h> |
4 | |
5 | int main() |
6 | {
|
7 | DDRC = 0x07; |
8 | uint8_t i = 1; |
9 | for(;;) |
10 | {
|
11 | PORTC = i; |
12 | i << 1; |
13 | if(i == 8) |
14 | i = 1; |
15 | _delay_ms(1000); |
16 | }
|
17 | }
|
Im Anhang ist auch ein HexFile. Das kannst du mal Testen. PS: Ich hoffe ich hab jetzt kein Fehler zusammengehackt. Matthias H. schrieb: > Also hier hab ich nen unterschied gefunden....bei mir fehlt dieses > Bauteil an Pin 9... > Kann das der Fehler sein? > Doch der Atmega8 kann doch selbst intern den Takt erzeugen... Das stimmt, das Bauteil kannst du weglassen. Ist ein Quarzoszillator. > Soll ich doch mal Port D verwenden, denn Port C hat bei dem Atmega8 ne > Sonderrolle wie ich grad gelesen hab Nein, das war mein Fehler. Am SPI/ISP gibt es manche Regelungen, genauso wie am JTAG.
Selbes Problem... Ich warte jetzt mal bis mein neues Klembrett kommt und teste es dann nochmal! Danke, für die Hilfe. Meld mich dann wieder
Matthias H. schrieb: > Also hier hab ich nen unterschied gefunden....bei mir fehlt dieses > Bauteil an Pin 9... > Kann das der Fehler sein? Nein. Den kannst du weglassen. Das heißt aber auch, das hier ist NICHT deine Schaltung. Richtig? Hast du AVcc beschaltet?
Ja ich habe eine andere Schaltung, da war die Rede davon das man ihn nicht braucht weil der Atmega8 den Takt intern erzeugt!
Schaue kurz mal bei halvar nach.. http://halvar.at/elektronik/kleiner_bascom_avr_kurs/hallo_welt_beispiel/ habe auch so begonnen..erstmal mit einem LED..Step by Step...
Hmm... bekommt die Schaltung genügend Strom? Probier das mal an einem Labornetzteil. Ich hab schon komische Effekte erlebt, wenn die Schaltung zu wenig Strom bekam. Seitdem hängt alles was ein paar LEDs hat an einen Netzteil/Batterie.
Hallo Matthias, ist der Controller vielleicht ständig im reset? Miss doch mal die Spannung am Reset-Pin. Oder zieh mal den ISP Stecker ab und versorge deine Schaltung über en Netzteil/Batterie. Gruß
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.