Odpowiedz 
 
Ocena wątku:
  • 3 Głosów - 3.33 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Programowanie w języku C w środowisku AVR Studio4
SP4EJT Offline
Marcin
****

Liczba postów: 340
Dołączył: 06-05-2011
Post: #131
RE: Programowanie w języku C w środowisku AVR Studio4
Własnie nie wiedziałem o co chodzi w tych plikach nagłówkowych. Dzięki że wyjaśniłeś Adamie. Musze jeszcze zrozumieć jaka tam jest składnia, ale to z czasem.
(02-03-2012 23:44)SP5IWI napisał(a):  Programuję Twoim "gotowcem" jak i skompilowanym przezemnie kompilacja OK programowanie OK a na wyświetlaczu nic.Cwiczyłem kilkanaście razy i to samo.Nic to walczę dalej
Janek sp5iwi
1. Janek, czy uwzględniłeś to, że mój gotowiec ma skonfigurowany wyświetlacz na port D ?
poniżej jest fragment, który o tym traktuje
Kod:
#define    DEF_PORT    DDRD
#define    LCD_PORT    PORTD
#define    LCD_RS        3
#define    LCD_E        2
Jesli o tym wszystkim wiedziałeś i robiłeś poprawnie, to...
2. Napisz mi, w którym z ostatnich programów działa Ci wyświetlacz.
Wtedy nie zmieniając połaczeń na twojej płycie ewaluacyjnej podeślę ci plik z twoją konfiguracją.
Wtedy będziemy wiedzieć czy żle wpisałeś konfigurację czy z programem jest coś nie teges.
(Ten post był ostatnio modyfikowany: 03-03-2012 12:59 przez SP4EJT.)
03-03-2012 12:56
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5IWI Offline
Janek
*

Liczba postów: 32
Dołączył: 01-02-2009
Post: #132
RE: Programowanie w języku C w środowisku AVR Studio4
(03-03-2012 12:56)SP4EJT napisał(a):  Własnie nie wiedziałem o co chodzi w tych plikach nagłówkowych. Dzięki że wyjaśniłeś Adamie. Musze jeszcze zrozumieć jaka tam jest składnia, ale to z czasem.
(02-03-2012 23:44)SP5IWI napisał(a):  Programuję Twoim "gotowcem" jak i skompilowanym przezemnie kompilacja OK programowanie OK a na wyświetlaczu nic.Cwiczyłem kilkanaście razy i to samo.Nic to walczę dalej
Janek sp5iwi
1. Janek, czy uwzględniłeś to, że mój gotowiec ma skonfigurowany wyświetlacz na port D ?
poniżej jest fragment, który o tym traktuje
Kod:
#define    DEF_PORT    DDRD
#define    LCD_PORT    PORTD
#define    LCD_RS        3
#define    LCD_E        2
Jesli o tym wszystkim wiedziałeś i robiłeś poprawnie, to...
2. Napisz mi, w którym z ostatnich programów działa Ci wyświetlacz.
Wtedy nie zmieniając połaczeń na twojej płycie ewaluacyjnej podeślę ci plik z twoją konfiguracją.
Wtedy będziemy wiedzieć czy żle wpisałeś konfigurację czy z programem jest coś nie teges.
No właśnie zaskoczyłem że nie tylko wyświetlacz ale i klawiatura zmieniła miejsce już jest wszystko OK,teraz tylko kawałek DDSa i jedziemy dalej
Janek sp5iwi
03-03-2012 15:04
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5IWI Offline
Janek
*

Liczba postów: 32
Dołączył: 01-02-2009
Post: #133
RE: Programowanie w języku C w środowisku AVR Studio4
Czy w tej postaci program steruje DDSem? bo mi niestety nie,DDSa podłączyłem do PORTC tak jak w pliku konfiguracyjnym,PC! I/O UPDATE, PC2 SDIO, PC3 SCLK, PC6 RESET.Nie mam taktowania na SCLK.
08-03-2012 12:07
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP4EJT Offline
Marcin
****

Liczba postów: 340
Dołączył: 06-05-2011
Post: #134
RE: Programowanie w języku C w środowisku AVR Studio4
(08-03-2012 12:07)SP5IWI napisał(a):  Czy w tej postaci program steruje DDSem? bo mi niestety nie,DDSa podłączyłem do PORTC tak jak w pliku konfiguracyjnym,PC! I/O UPDATE, PC2 SDIO, PC3 SCLK, PC6 RESET.Nie mam taktowania na SCLK.
Przepraszam że tak długo czekałeś na odpowiedź. Program na pewno działa. Podłącz wszystkie 8 diod świecących do portu C na swojej płycie ewaluacyjnej, następnie skompiluj sobie kod , który tu wkleiłem i wgraj do Atmegi.
Kod:
#include <avr/io.h>    
#include <util/delay.h>

int main(void)
    {
    DDRC = 0xff;
    PORTC=0x00;
    while(1)
        {
        PORTC=PORTC^0xff;
        _delay_ms(160);    
        }  
    }
Jest to programik który "mruga" wszystkimi wyprowadzeniami portu C. Ale ... Jeśli masz płytę ewaluacyjna to pewnie masz włączony w Atmedze JTAG, który jest podczepiony właśnie pod port C, sprawdź tym programikiem czy świecą jasno wszystkie diody - jeśli któraś nie świeci lub świeci bardzo słabo to zobacz na których wyprowadzeniach portu C to się dzieje i nie korzystaj z nich - żeby korzystać z całego portu C musisz wyłaczyć JTAG, a bez programatora będzie ciężko to zrobić.... Jak sprawdzisz z których wyprowadzeń nie da się skorzystać to napisz tutaj - ja już dawno to wyłączyłem i nie pamiętam a może przyda się to w przyszłości żeby uniknąć właśnie takich sytuacji. POWODZENIA !
15-03-2012 22:44
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP9RQA Offline
Krzysztof
****

Liczba postów: 380
Dołączył: 30-09-2009
Post: #135
RE: Programowanie w języku C w środowisku AVR Studio4
Skoro ten wątek o programowaniu się ciągnie już dość długo to i ja dorzucę swoje 3 grosze, może się komuś przyda.

Mały system operacyjny:
http://sp9rqa.net/Elektronika/AVR_Schedu...Robin.html

Timery programowe:
http://sp9rqa.net/Elektronika/Timery_programowe.html

Komunikacja z procesorem:
http://sp9rqa.net/Elektronika/AVR_command_line.html

Na deser:
http://sp9rqa.net/Elektronika/Soft_i_ESD.html

Pozdrawiam

PS.
Czasami na moją stronę nie da się wejść (bo jak mówi mój administrator, są jakieś problemy z DNS'ami). Ja niestety nie mam na to wpływu.
19-03-2012 20:58
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5IWI Offline
Janek
*

Liczba postów: 32
Dołączył: 01-02-2009
Post: #136
RE: Programowanie w języku C w środowisku AVR Studio4
Jest to programik który "mruga" wszystkimi wyprowadzeniami portu C. Ale ... Jeśli masz płytę ewaluacyjna to pewnie masz włączony w Atmedze JTAG, który jest podczepiony właśnie pod port C, sprawdź tym programikiem czy świecą jasno wszystkie diody - jeśli któraś nie świeci lub świeci bardzo słabo to zobacz na których wyprowadzeniach portu C to się dzieje i nie korzystaj z nich - żeby korzystać z całego portu C musisz wyłaczyć JTAG, a bez programatora będzie ciężko to zrobić.... Jak sprawdzisz z których wyprowadzeń nie da się skorzystać to napisz tutaj - ja już dawno to wyłączyłem i nie pamiętam a może przyda się to w przyszłości żeby uniknąć właśnie takich sytuacji. POWODZENIA !
[/quote]

Witam
Zrobiłem tak jak "PAN kazał" po wgraniu mrugacza świeciły się "połową mocy"diody podłączone do portów PC0 i PC1,w związku z tym zmieniłem I/O UPDATE z PC1 na PC4 i dalej nic.Badam oscyloskopem i nadal nie mam sygnału SCLK i SDIO.Jak podłączam DDSa do jego orginalnego sterownika też na ATMEGA32 (synt wg RD3AY) to wszystko śmiga.Walczę dalej
Janek sp5iwi
20-03-2012 22:03
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP9RQA Offline
Krzysztof
****

Liczba postów: 380
Dołączył: 30-09-2009
Post: #137
RE: Programowanie w języku C w środowisku AVR Studio4
(20-03-2012 22:03)SP5IWI napisał(a):  Zrobiłem tak jak "PAN kazał" po wgraniu mrugacza świeciły się "połową mocy"diody podłączone do portów PC0 i PC1,w związku z tym zmieniłem I/O UPDATE z PC1 na PC4 i dalej nic.Badam oscyloskopem i nadal nie mam sygnału SCLK i SDIO.Jak podłączam DDSa do jego orginalnego sterownika też na ATMEGA32 (synt wg RD3AY) to wszystko śmiga.Walczę dalej
Janek sp5iwi

1. Jakim napięciem jest zasilany AVR?
2. Diody LED są podpięte do VCC i włączane "zerem",
czy też zasilane z portu bezpośrednio?
20-03-2012 22:15
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5IWI Offline
Janek
*

Liczba postów: 32
Dołączył: 01-02-2009
Post: #138
RE: Programowanie w języku C w środowisku AVR Studio4
[/quote]

1. Jakim napięciem jest zasilany AVR?
2. Diody LED są podpięte do VCC i włączane "zerem",
czy też zasilane z portu bezpośrednio?


[/quote]
AVR zasilany z portu USB 4,8V,diody zasilane z portu bezpośrednio i pięknie mrugają ,przed zresetowaniem świeciły diody podłączone do portów PC0 i PC1.Zmieniłem nawet port na PORTB ale też nic
Janek sp5iwi
20-03-2012 23:47
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5FCS Offline
Adam
*****

Liczba postów: 1,072
Dołączył: 02-02-2009
Post: #139
RE: Programowanie w języku C w środowisku AVR Studio4
Janek, powodem kłopotów ze sterowaniem poprzez PORTC może być włączony JTAG w procesorze. Każdy nowy procesor ATmega32 oraz procesory w zestawach uruchomieniowych mają fabrycznie ustawiony bit aktywujący interfejs JTAG. Aby używać pinów [C2...C5] musisz wyzerować ten bit podczas programowania procesora (zdjęcia).
Na pinach [C0,C1] jest interfejs I2C, który wymaga rezystorów podciągających do +5V. Może takie rezystory są podłączone na Twojej płytce. Inne wykorzystanie tych pinów wymaga odłączenia tych rezystorów.


Załączone pliki Miniatury
İmage İmage

73 Adam
21-03-2012 0:07
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP4EJT Offline
Marcin
****

Liczba postów: 340
Dołączył: 06-05-2011
Post: #140
RE: Programowanie w języku C w środowisku AVR Studio4
(20-03-2012 23:47)SP5IWI napisał(a):  .... świeciły diody podłączone do portów PC0 i PC1.Zmieniłem nawet port na PORTB ale też nic
Janek sp5iwi
Przepraszam za brak polskich znakow, nie dziala mi alt.
Wiem Panie Janie, ze sie Pan wkurzasz ze cos nie idzie, ale spokojnie, dojdziemy co jest "nie halo". Moze skonfigurowales na port B a tam juz przyciski byly skonfigurowane ... a moze zapomniales po zmianiee kodu skompilowac go na nowo lub wgrac do Atmegi ... mozna sie pomylic - sam sie czesto lapie na bledach "podstawowych".
Jesli korzystasz z tej plyty ewaluacyjnej co ja to wyprowadzenia PORTU C sa odwrotnie ponumerowane ! (plyta z microsense.pl).
Ale i tak zignorujemy caly port C...
Sprobuj zrobic tak... Skonfiguruj:
- wyswietlacz na porcie D
- przyciski na porcie B
- DDS na port A , (bo PORTA nie ma zadnnych obciazej typu JTAG czy wejscia do komunikacji z Bootloaderem - chyba czesc PORTU D jest powiazana z Bootloaderem - krotko mowiac powinno zadzialac na 100%.) Trzeba pamietac zeby przyciski lub wyswietlacz czasem niebyly tez na port A skonfigurowane !
Jesli cos nie dziala to poprawiaj w nastepujacej kolejnosci:
- najpierw musi zadzialac wyswietlacz
- potem zadbaj by przyciski zadzialaly jak nalezy
- dopiero na koncu poddlacz DDS i kombinuj by zadzialal

Jesli to nic nie da - napisz jak wszystko podlaczyles a ja wysle ci program gotowy do wgrania.

ps. moj Szacunek Panie Janku za to, ze sie podjales walki z tym DDSem ! jako jedyny chyba
a potem dopiero bedziesz mial czas aby ugryzc port C na spokojnie
(Ten post był ostatnio modyfikowany: 22-03-2012 22:21 przez SP4EJT.)
22-03-2012 22:21
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Skocz do:


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