AVR NooB vill ha hjälp.

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
SA4AQS
Inlägg: 505
Blev medlem: 14 september 2007, 19:56:30
Ort: Falun
Kontakt:

AVR NooB vill ha hjälp.

Inlägg av SA4AQS »

Någon som har tid och lust att hjälpa mig?

Jag har ensån här och vet ej vad den heter.

Sen så har jag en AT92C010 som jag vill lära mig att programera.
Har också AT90S2313, AT49F040A, At49BV512, AT49F512, AT24C16

Har laddat hem AVR Studio 4.13 och SP1 och WinAVR c-kompilator.

OK jag vill att en lysdiod ska toggla när jag tryker på en knapp.
Senast redigerad av SA4AQS 9 juli 2008, 16:13:19, redigerad totalt 3 gånger.
Användarvisningsbild
feedback
Inlägg: 123
Blev medlem: 5 juni 2008, 16:18:37
Ort: Stockholm
Kontakt:

Inlägg av feedback »

Underbart! Testa Amforth. Bra att kunna Forth när IntellaSys tar över världen. ;)

"Twenty-four C18 core processors capable of up to 18 billion operations per second."
http://www.intellasys.net/index.php?opt ... &Itemid=63

Iof C fungerar ju också.


Det går inte bara att lära sig så där.. du måste ha ett mål i sikte. Tänk ut vad du vill bygga. Sen löser du problemet bakifrån. Typ. "- Okej, en blinkande lampa. Hur får jag den att lysa.. hum.. C, C-kompilator, Hilfe!, måste nog fråga på elektronikforumet.com"
Senast redigerad av feedback 9 juli 2008, 15:47:33, redigerad totalt 1 gång.
eqlazer
Inlägg: 923
Blev medlem: 22 september 2007, 13:53:45
Ort: Göteborg

Inlägg av eqlazer »

Prylen på bilden är en AVRISP mkI (gamla versionen med serieportsinterface).
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Jag rekommenderar att du kollar på AVRfreaks.com och i databladet för olika ideer om hur du skall göra. Det är inget svårt att göra det du vill (toggla LED med en knapp) men jag tror att du lär dig mer med att söka själv än att jag/någon ger dig färdig kod, sedan när du kommer till ett problem kan vi säkert hjäpa dig :)

mvh Björn
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

Du hittar information om den i AVR Studio --> Help/AVR Tools User Guide.
Atmel - datablad för AVRISP

Det verkar inte som att AVRISP stödjer AT92C010 och en sökning efter den på Atmels hemsida ger noll resultat.

AVR Studio 4.14.589 är den senaste version.

Börja först med assembler så kommer du att få nytta av det i C-programmeringen.
Användarvisningsbild
SA4AQS
Inlägg: 505
Blev medlem: 14 september 2007, 19:56:30
Ort: Falun
Kontakt:

Inlägg av SA4AQS »

Jag börjar väll med AT90S2313 då.
Användarvisningsbild
sebgus
Inlägg: 408
Blev medlem: 11 december 2007, 09:51:17
Ort: Göteborg

Inlägg av sebgus »

Kan låna tråden o slänga in en fråga.

Har precis fått hem några atmega8-16PU processorer som jag tänkte börja leka med. Har även införskaffat en AVRISP mkII.

Har tittat i datablad föratmegan och för AVRISP:en. Har kopplat MISO,MOSI,SCK och RESET mellan processorn och ISP:en samt anlslutit 5V till både ISP:en och VCC-pinnen på atmegan. Även anslutit GND på ISP:en och atmegan.

Startar AVR studio 4, ansluter till ISP:en; funkar. Men sen kommer det upp ett felmeddelande "Can't find target. Make sure that target has power." ISP:en hittar alltså inte processorn. Jag fattar inte vad som är fel?

Några tips eller idéer?
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

Vad visar lysdioden?

Edit2:
Tänk på att bilden på sidan 26 visar "Target cable".
Senast redigerad av BEEP 9 juli 2008, 19:50:10, redigerad totalt 3 gånger.
Användarvisningsbild
strombom
Inlägg: 3305
Blev medlem: 27 maj 2003, 10:50:20
Ort: Västra Götaland
Kontakt:

Inlägg av strombom »

project_x: Har du kopplat som på sidan 237 i databladet ? Det är alltid bra att dubbelkolla en gång extra :)
http://www.atmel.com/dyn/resources/prod ... oc2486.pdf
Användarvisningsbild
sebgus
Inlägg: 408
Blev medlem: 11 december 2007, 09:51:17
Ort: Göteborg

Inlägg av sebgus »

STORT TACK BEEP!

Timmar och timmar har gått åt för att felsöka, men så är det ett sånt enkelt fel...

Tack strombom också, hade glömt AVcc!

Nu ska här lekas o läras :)
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

Det var ju bra :)

Var nu lite försiktig med fuse bitarna så att vi inte behöver läsa samma fråga igen.
Användarvisningsbild
sebgus
Inlägg: 408
Blev medlem: 11 december 2007, 09:51:17
Ort: Göteborg

Inlägg av sebgus »

Nu kommer jag här igen.

Om jag programmerar in följande kod in i processorn:

Kod: Markera allt

#include <avr/io.h>
 
int main (void) {
 
	uint32_t i = 0;					//(2)
	DDRD  = 0xff;
 
	while(1) {
		PORTD = 0b11110000;
		for(i=0; i < 10000; i++);	//(6)
		PORTD = 0b00001111;
		for(i=0; i < 10000; i++);
	}

	return 0;
}
Vad händer då? Förklara gärna tydligt, vilka pinnar som används osv. Det ska vara en till blinkande lysdiod men får det inte riktigt att funka...

Edit: Beep du menar "reset disabled"?
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Först tänds PD4-PD5 och förblir tänd i 10000 klockcykler och då släcks den och PD0-PD3 tänds i 10000 cykler sedan börjar det om.

ps.Hur länge 10000 cykler är vet vi inte då din frekvens är okänd för oss. Men tiden räknas ut som : (1/MCLK)*10000 (där MCLK är klockfrekvensen till processorn och 10000 antalet cykler) (tiden är ungefärlig).

EDIT:

Kod: Markera allt

#include <avr/io.h>
 
int main (void) {
 
	uint32_t i = 0;					//initierar en uint32 som heter i (32 bitars variabel som kan hålla värde upp till 4294967295)
	DDRD  = 0xff;                                 //Sätter hela PORTD till utgångar
  
	while(1) {                                        //loopar förevigt
		PORTD = 0b11110000;        //Sätter PD4-PD7 höga och PD0-PD3 låga
		for(i=0; i < 10000; i++);	//  Väntar i 10000 klockcykler
		PORTD = 0b00001111;  //Sätter PD0-PD3 höga och PD4-PD7 låga
		for(i=0; i < 10000; i++);   //Väntar i 10000 klockcykler
	}//och börjar om igen

	return 0;
}
Senast redigerad av björn 9 juli 2008, 22:21:03, redigerad totalt 2 gånger.
Användarvisningsbild
feedback
Inlägg: 123
Blev medlem: 5 juni 2008, 16:18:37
Ort: Stockholm
Kontakt:

Inlägg av feedback »

använd:

Kod: Markera allt

#include <util/delay.h>
delay_ms(100);

Om jag var kompilatorn skulle jag plocka bort:

for(i=0; i < 10000; i++);
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

Då vore du en elak kompilator :)
Skriv svar