En AVR som inte gör som den blir tillsagd

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

En AVR som inte gör som den blir tillsagd

Inlägg av VelcroMan »

Hej, jag har en ATmega168 som jag skrev ett mycket enkelt "program" till. Den ska använda PC 5 pinnen för att blinka en LED. Men, den blinkar inte. (Pinnen ändrar inte spänning överhuvudtaget)

Jag använder Bascom AVR för koden och avrdude för programmeringen. Och en "DAPA" programmerare.

Vad kan vara fel? Det är inte koden (vad jag vet) utan min AVR som det är fel på. Den får 4.4V På VCC & AVCC och båda GND går till minus.

Kod: Markera allt

$regfile "m168def.dat"

Config PINC.5 = Output    'PINC.5 är satt som output

Do

Set PINC.5    'Sätt pinnen hög

Waitms 5000    'Vänta 5000ms

Reset PINC.5    'Sätt pinnen låg

Waitms 5000    'Vänta 5000ms

Loop    'Börja om från "Do"
Edit: Skrev us istället för ms
Edit: Kommenterade koden lite :P
Senast redigerad av VelcroMan 29 januari 2008, 19:26:06, redigerad totalt 2 gånger.
hh
Inlägg: 322
Blev medlem: 9 maj 2006, 12:37:32
Ort: Karis, Finland

Inlägg av hh »

Är Waitus i mikrosekunder? Vad är spänningen på pinnen?

Edit: Om spänningen ligger mellan 0 och Vcc kan det hända att den gör just som den skall, lite snabbt bara.
Senast redigerad av hh 29 januari 2008, 18:46:39, redigerad totalt 1 gång.
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

ms ska det stå, inte us. Min multimeter växlar mellan 0.00 och 0.01 volt. (Inte vart 5:e sekund) Utan oregelbundet.
hh
Inlägg: 322
Blev medlem: 9 maj 2006, 12:37:32
Ort: Karis, Finland

Inlägg av hh »

Justdetja, jag läste början lite slarvigt.

Språket känner jag inte till så jag vågar mig inte på någon vidare gissning. Du har väl Reset rätt kopplad?

Har du fått något annat program att köra?
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

Reset ska gå till VCC eller hur är det?
hh
Inlägg: 322
Blev medlem: 9 maj 2006, 12:37:32
Ort: Karis, Finland

Inlägg av hh »

Jo, via ett motstånd om du använder dapa.
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

Reset sitter till paralellportens pin 16.
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1651
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Har du ställt in klockan?
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

Klocka? Vilken klocka? :P

Menar du kristallen? Anger man inte så använder den standard
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Har du tetstat att *enbart* sätta pinnen hög? Funkar det isåfall?
Har du angett om pinnen är in eller utport? Var och hur i så fall?

EDIT: glöm det om utgång, det hade du ju med klart och tydligt.... Inte van vid språket...

EDIT2: Googlade på "bascom blinka led" och fick se :
Config Portb = Outputout 'set port B as output

Do ' eternal loop
Portb.0 = 1 ' make portB.0 high
Waitms 500 ' wait 500ms
Portb.0 = 0 ' make Portb.0 Low
Waitms 500 'wait 500ms
Loop
Ser inte riktigt likadant ut som ditt, jag har dock ingen aning om vilket som är rätt eller om båda är det.
Senast redigerad av björn 29 januari 2008, 19:59:04, redigerad totalt 1 gång.
Användarvisningsbild
Zyxel615
EF Sponsor
Inlägg: 1839
Blev medlem: 9 november 2005, 21:20:43
Ort: Kiruna

Inlägg av Zyxel615 »

Berätta först ordentligt hur du har kopplat. Finns det avkopplingskondensatorer? Vad är det för spänningskälla? Vad har du för motstånd mellan Reset och VCC?

Och *kolla* att alla fuse-bitar är korrekt inställda.
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

björn skrev:Har du tetstat att *enbart* sätta pinnen hög? Funkar det isåfall?
Har du angett om pinnen är in eller utport? Var och hur i så fall?

EDIT: glöm det om utgång, det hade du ju med klart och tydligt.... Inte van vid språket...

EDIT2: Googlade på "bascom blinka led" och fick se :
Config Portb = Outputout 'set port B as output

Do ' eternal loop
Portb.0 = 1 ' make portB.0 high
Waitms 500 ' wait 500ms
Portb.0 = 0 ' make Portb.0 Low
Waitms 500 'wait 500ms
Loop
Ser inte riktigt likadant ut som ditt, jag har dock ingen aning om vilket som är rätt eller om båda är det.
Ska testa. Men jag ser ingen skildnad förutom att PB.0 används istället för hela PC. Och att tiden är annorlunda.
Användarvisningsbild
VelcroMan
Inlägg: 52
Blev medlem: 16 november 2007, 07:13:30
Ort: Fågelmara

Inlägg av VelcroMan »

Zyxel615 skrev:Berätta först ordentligt hur du har kopplat. Finns det avkopplingskondensatorer? Vad är det för spänningskälla? Vad har du för motstånd mellan Reset och VCC?

Och *kolla* att alla fuse-bitar är korrekt inställda.
Faktiskt så har jag varken kondensatorer eller motstånd någonstans (förutom LEDen) Jag vet att jag borde... :P

Oj.. dubbelpost
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Du inte bara borde.... fixa det så kan vi se om vi kan hjälpa dig sen(om det behövs).
Användarvisningsbild
Zyxel615
EF Sponsor
Inlägg: 1839
Blev medlem: 9 november 2005, 21:20:43
Ort: Kiruna

Inlägg av Zyxel615 »

Börja med 10 kΩ resistans mellan VCC och Reset samt 10 nF kapacitans över matningsspänningen så skulle jag tro att det hela löser sig.
Skriv svar