Koleżankom i Kolegom Radioamatorom, Krótkofalowcom,
Konstruktorom i Waszym Rodzinom – w tych trudnych czasach –
po dotkliwej awarii naszego forum
Pogodnego czasu po Bożym Narodzeniu,
Dosiego Nowego Roku
oraz Radosnych Trzech Króli

Życzy Zespół Home Made

Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Programowanie w języku C w środowisku AVR Studio4
Szanowny Panie Kolego.
Obsługa przycisku jest bardzo prosta i jest już w lekcji 3.
Potem jest też w lekcji 4 i 5.
Jeśli po przerobieniu tych lekcji czegoś nie zrozumiesz to napisz czego dokładnie nie rozumiesz. Wydaje mi się, że wszystko jest "łopatologicznie" wyjaśnione od razu na przykładach.
Napisz mi bo bardzo ciekawy jestem ... jesteś studentem czy uczniem szkoły średniej ?
Odpowiedz
Witam.
Postanowiłem przerobić ten kurs.Dojechałem do postu 152. Wszystko dało się skompilować.Niestety przy próbie skompilowania nowy_sp5fcs otrzymałem taki efektTongueroces Exit Code: 2
nowy.c:27: undefined reference to `init_lcd`i jeszcze kilka takich uwag.
Używam Programmer`s Notepad (VinAVR 201001110).
Czy do kompilacji " nowy_sp5fcs" trzeba zainstalować AVR Studio4 i avr-toolchain.
Wszystkie lekcje do tej pory poszły gładko (kompilacja i programowanie przez usbasp).

Proszę o pomoc.
Andrzej
Odpowiedz
Witaj Andrzej,
ten przykład był kompilowany w środowisku AVRstudio ver. 4.18. Sprawdzałem przed chwilą poprawność kompilacji i u mnie wszystko jest OK, ekran po kompilacji w załączniku. W zasadzie nie używam kompilatora GCC, to było jedynie na potrzeby tego kursu, projekty piszę w komercyjnym CodeVision.


Załączone pliki Miniatury
   
73 Adam
Odpowiedz
Witam Adamie.
Jak podmienię plik alfa_lcd.h na "lcd_alfanum.h" (czyli wrócę na starą obsługę lcd) program kompiluje się .
Jak wrzucę Twoje pliki alfa_lcd.h i alfa_lcd.c program nie kompiluje się.To jest dla mnie zagadka i problem.
OK.
Zmiana w programie
#include <avr/io.h>
#include <util/delay.h>
#include "alfa_lcd.c" //zmiana * .h na *.c
#include "AD9951.c"
Teraz jest code:0
Jutro zobaczę efekty na lcd

Andrzej
Odpowiedz
Andrzej plik "lcd_alfanum.h" tylko udaje plik nagłówkowy a tak naprawdę jest to zwykły plik zawierającym fragment kodu w języku C włączany dyrektywą #include. Tak naprawdę powinien nazywać się "lcd_alfanum.c". Program działa ponieważ plik "lcd_alfanum.h" jest kompilowany podczas każdej kompilacji i nie jest potrzebny do niego plik żródłowy.

W mojej wersji plik "alfa_lcd.h" jest klasycznym plikiem nagłówkowym, który należy dołączyć do programu głównego:
#include "alfa_lcd.h"

To jednak nie wystarczy, ponieważ kompilator musi skompilować również plik źródłowy biblioteki "alfa_lcd.c" powiązany z plikiem nagłówkowym "alfa_lcd.h". Ten plik musi być dodany do listy kompilowanych plików razem z plikiem main.c. Na moim ekranie po lewej stronie widać na liście plików źródłowych nazwy dwóch plików: main.c i alfa_lcd.c. Tak przynajmniej jest w AVRstudio.
73 Adam
Odpowiedz
Witam ponownie. Dojechałem do nowy. zip Post 173. Sprawdziłem kompilację.Żadnych błędów,programowanie OK, a na lcd na pierwszej pozycji kreseczka pozioma (kursor) i nic więcej.Pusto.
Jak wyłączę enkoder
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "lcd_alfanum.h"
#include "AD9951.h"
#include "I2C.h"
//#include "enkoder.h"
to pojawia się napis 3.710.000 i kursor.
Moja wiedza się skończyła. Proszę o pomoc.
W pozycji bez enkodera działają 2 przyciski do zmiany "F", 2 przyciski do zmiany "kroku" ,1 do zmiany "memory/VFO"
I tu przy zmianie VFO na M następuje przeskok kursora i blokada.Brakuje mi do szczęścia ADC,które sprawdzałem i działało na Post 167.Nic nie mogę napisać czy działa prawidłowo dds bo jeszcze go nie zrobiłem.
Proszę może Ktoś może pomóc.
Andrzej
Odpowiedz
Cześć Andrzej.
Ja wypadłem z obiegu i nie pamiętam wszystkiego co tu napłodziłem, ale postaram się Tobie pomóc.
Zobacz czy enkoder zmienia częstotliwość wskazywaną przez wyświetlacz wgrywając ten program, który załączyłem.
No i koniecznie sprawdź raz jeszcze czy enkoder podłączyłeś poprawnie .


Załączone pliki
.zip   experyment173post.zip (Rozmiar: 50.23 KB / Pobrań: 1,084)
Odpowiedz
Witaj Marcin.Plik experyment173post.zip kompiluje się z błędem ../nowy.c:36:56: warning: unused variable 'FTW'.
Efektem jest pusty ekran.Tylko na pierwszym polu jest kreska pozioma (chyba kursor) .
Andrzej
Odpowiedz
Z bledem by sie nie skompilowal. Warning to ostrzezenie.
Unused variable - autor zadeklarowal zmienna, ktorej pozniej w ogole nie uzyl. To nie powinno akurat miec zadnego znaczenia.

pz
Odpowiedz
Już trochę się sprawa wyjaśniła na PW, bo nie chciałem zaśmiecać wątku.
Andrzej zapomniał dodać, że nie ma jeszcze enkodera, ani pamięci eprom stąd te "niedziałanie" programu.
Program bez pamięci eprom staje w miejscu gdy chce z niej skorzystać. Andrzeja teraz nie będzie jakiś czas więc przełożyliśmy to do jego powrotu.
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 2 gości