Skocz do zawartości

Pomocna odpowiedź

Robię krok po kroku i już któryś raz mam komunikat:

> "make.exe" all

make.exe: *** No rule to make target `all'. Stop.

> Process Exit Code: 2

> Time Taken: 00:01

i nie mogę tego przeskoczyć 🙁 Co robię źle ?

Jestem dopiero w pierwszej części tego kursu i już problem.

Kiedyś (tz jak jeszcze nie miałem wszystkich elementów) to zainstalowałem WinAVR i wtedy ta kompilacja poszała, dziś zainstalowałem go na nowo i ten problem jak wyżej a postępuję tak jak kiedyś :/

Link to post
Share on other sites

zrobiłeś plik make do programu ?? w nazwie TARGET powinieneś napisać nazwę programu bez ".c" np. masz napisany program o nazwie led.c to w pliku make wpisujesz led, zapisujesz plik makefile do folderu zawierajacego twoj program i nie zmieniasz jego nazwy, plik make musi miec nazwe "Makefile"

  • Pomogłeś! 1
Link to post
Share on other sites

Dzięki , właśnie robiłem ten błąd że plik make podpisywałem jako "led.c" a powinno być "Makefile"

Program się skompilował , wgrałem go do Atmegi8 ale jeszcze takie pytanko bo sprzedawca nie dostarczył mi instrukcji do moje programatora, z tego co mnie poinformował to jest to stk500 a do tego wyczytałem że to avrisp2 dlatego w konfiguracji make daje programator STK500v2 ( dobrze? ) oraz port com2 (bo taki ustawiłem w menedżer urządzeń) czy może powinien zaznaczyć USB ?

I ostatnie pytanie , taki mam listing po wgraniu programu do atmegi8 (układ oczywiście działa tak jak powinien i uC się zaprogramował)

> "make.exe" program

avrdude -p atmega8 -P com2 -c stk500v2 -U flash:w:led.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0x1e9307

avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed

To disable this feature, specify the -D option.

avrdude: erasing chip

avrdude: reading input file "led.hex"

avrdude: input file led.hex auto detected as Intel Hex

avrdude: writing flash (810 bytes):

Writing | ################################################## | 100% 0.44s

avrdude: 810 bytes of flash written

avrdude: verifying flash memory against led.hex:

avrdude: load data flash data from input file led.hex:

avrdude: input file led.hex auto detected as Intel Hex

avrdude: input file led.hex contains 810 bytes

avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.24s

avrdude: verifying ...

avrdude: verification error, first mismatch at byte 0x0027

0x24 != 0x64

avrdude: verification error; content mismatch

avrdude done. Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2

> Time Taken: 00:05

Czemu nie udało mu się zweryfikować tego co wgrał do uC bo chyba o to się rzuca ?

Link to post
Share on other sites

Być może źle podpięta linia powrotna (MISO), nie wiem czy ona jest wykorzystywana w czasie programowania do weryfikacji na żywo, czy potem całość sprawdza.

Link to post
Share on other sites

Witam

Mam podobny problem, program nie chce się skompilować, pojawiaja się następujący komunikat:

> "make.exe" all
/usr/bin/sh: /dev/null: No such file or directory
/usr/bin/sh: /dev/null: No such file or directory

-------- begin --------
avr-gcc (WinAVR 20090313) 4.3.2
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Compiling C: led.c
avr-gcc -c -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./led.lst  -std=gnu99 -MMD -MP -MF .dep/led.o.d led.c -o led.o 
led.c:20: fatal error: opening dependency file .dep/led.o.d: No such file or directory
compilation terminated.
make.exe: *** [led.o] Error 1

> Process Exit Code: 2
> Time Taken: 00:00
Link to post
Share on other sites
* "led.c" - programik do testowania środowiska WinAVR */
/* układ ATmega 1MHz */
/* PB0,PB1 - diody LED; PD0 - przycisk */

#define F_CPU 8000000L
#include <avr/io.h>
#include <util/delay.h>                

int main(void)
{
   DDRB  |= _BV(0)|_BV(1);
   PORTB |= _BV(0);
   PORTB &= ~_BV(1);
   DDRD  &= ~_BV(0);
   PORTD |=  _BV(0);

   while (1) 
   {
       PORTB ^=_BV(0);
       PORTB ^=_BV(1);

       _delay_ms((PIND & _BV(0))? 1000: 200);
   }
}

__________

Komentarz dodany przez: Nawyk

Do zamieszczania treści kodów i komunikatów, używaj znaczników "code".

Link to post
Share on other sites

Już drugi raz składam ten układ i ciągle ten sam błąd 🙁

> "make.exe" program
avrdude -p atmega32 -P com2 -c stk500v2    -U flash:w:sygnalizacja.hex 

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_recv(): checksum error
avrdude: stk500v2_program_enable(): bad STK600 connection status: Unknown (0x64)
avrdude: initialization failed, rc=-1
        Double check connections and try again, or use -F to override
        this check.


avrdude done.  Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2
> Time Taken: 00:06

uC to Atmega32 (16PU,0803B) w makefile wybieram Atmega32 i port com2 (bo taki mam ustawiony pod menedżerem urządzeń) programator ustawiam na STK500v2 bo mam A V R I S P - MK2

http://www.grifo.com/PROG/HBI/uk_AVRISP.htm

i podpinam pod te porty uC jak kursie (wprawdzie tam jest na Atmega16 a ja mam Atmege32 ale z tego co patrzyłem to są identyczne połączenia).

Tam chyba piszę że coś nie styka ale łącza programatora do uC wielokrotnie sprawdzałem

Nie mam pojęcia co jest nie tak 🙁

Link to post
Share on other sites

Tak, mam podpięte 4 przewody GND od programatora i jeden Vcc do uC

[ Dodano: 25 Gru 09 08:21 ]

Odłączyłem zbędne elementy z układu i teraz mam komunikat:

> "make.exe" program
avrdude -p atmega8 -P com2 -c stk500v2    -U flash:w:krokowy.hex 

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0xffffff
avrdude: Yikes!  Invalid device signature.
        Double check connections and try again, or use -F to override
        this check.


avrdude done.  Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2
> Time Taken: 00:03

Co to może oznaczać ?

Link to post
Share on other sites

Połączenia wykonuje na płytce stykowej dlatego zimnych lutów nie ma.

Odłączyłem wszystkie zbędę do programowania uC elementy z układu i kilka krotnie sprawdzałem połączenia.

Sprawdzałem też na innym kompie i dalej ten sam komunikat jak w moim poprzednim poście.

Czy to możliwe że uszkodziłem uC lub programator ? Próbowałem różnych softów w tym AVR Studio a wyczytałem że tam można pozmieniać jakieś fusebity i zmienić firmware w programatorze .. mogę jakoś sprawdzić poprawność Programatora i uC ?

Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.