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

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 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 ?
Reply
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
Reply
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.


Attached Files Thumbnail(s)
   
73 Adam
Reply
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
Reply
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
Reply
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
Reply
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 .


Attached Files
.zip   experyment173post.zip (Size: 50.23 KB / Downloads: 1,084)
Reply
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
Reply
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
Reply
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.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)