Witam Panowie (Panie?)
Jetem początkującym elektronikiem a tym bardziej programistą uP.
Kiedyś lubiłem, jeszcze na Commodore, bawić się w pisanie programików w Basicu, więc jako tako znam i lubię ten język. Więc dlatego zdecydowałem się na realizację projektu w tym języku...
O ile z samym językiem nie ma problemu, gdyż coś tam ze składni i zasad pisania pamiętam. Zaopatrzyłem się też w książkę Pana Marcina W.
To nie za bardzo wiem jak się zabrać do realizacji tej części programu.
Otóż Timer0 generuje mi przerwania o częstotliwości 200Hz (plus minus, gdyż korzystam z wewnętrznego oscylatora - ale dokładność nie jest tu krytyczna).
Te 200Hz stanowi mi nośną która jest podawana na wyjście procesora, który steruje tranzystorem (kwadrat uzyskiwany przez instrukcję).
To wszystko działa jak powinno.
Ale teraz w wywołaniu tego przerwania muszę, że tak powiem poszatkować tę nośną, aby uzyskać coś na zasadzie kropek i kresek.
I nie wiem jak to zrealizować??? Jak zapisać (raczej w liniach danych DATA - przynajmniej tak mi się wydaje, ale co i jak tam zapisać) i później jak tę zapisaną sekwencję wykorzystać...
Sekwencja to kilku sekundowy ciąg kresek i kropek powtarzany co kilka sekund w pętli.
A jeszcze żeby nie było za łatwo to muszę mieć 2-3 takie sekwencje na różnych wyjściach i oczywiście każda sekwencja inna.
Mam nadzieję iż zwykły początkujący programista może liczyć na pomoc bardziej doświadczonych programistów i znawców jeżyka Basom i procesorów Atmega.
Pozdrawiam i z góry mocno dziękuję za wszelką udzieloną pomoc. Czy to w postaci ogólnej koncepcji rozwiązania problemu, czy gotowych kodów lub choć by ich części.
Olaf
Jetem początkującym elektronikiem a tym bardziej programistą uP.
Kiedyś lubiłem, jeszcze na Commodore, bawić się w pisanie programików w Basicu, więc jako tako znam i lubię ten język. Więc dlatego zdecydowałem się na realizację projektu w tym języku...
O ile z samym językiem nie ma problemu, gdyż coś tam ze składni i zasad pisania pamiętam. Zaopatrzyłem się też w książkę Pana Marcina W.
To nie za bardzo wiem jak się zabrać do realizacji tej części programu.
Otóż Timer0 generuje mi przerwania o częstotliwości 200Hz (plus minus, gdyż korzystam z wewnętrznego oscylatora - ale dokładność nie jest tu krytyczna).
Te 200Hz stanowi mi nośną która jest podawana na wyjście procesora, który steruje tranzystorem (kwadrat uzyskiwany przez instrukcję
Toggle PortB.0To wszystko działa jak powinno.
Ale teraz w wywołaniu tego przerwania muszę, że tak powiem poszatkować tę nośną, aby uzyskać coś na zasadzie kropek i kresek.
I nie wiem jak to zrealizować??? Jak zapisać (raczej w liniach danych DATA - przynajmniej tak mi się wydaje, ale co i jak tam zapisać) i później jak tę zapisaną sekwencję wykorzystać...
Sekwencja to kilku sekundowy ciąg kresek i kropek powtarzany co kilka sekund w pętli.
A jeszcze żeby nie było za łatwo to muszę mieć 2-3 takie sekwencje na różnych wyjściach i oczywiście każda sekwencja inna.
Mam nadzieję iż zwykły początkujący programista może liczyć na pomoc bardziej doświadczonych programistów i znawców jeżyka Basom i procesorów Atmega.
Pozdrawiam i z góry mocno dziękuję za wszelką udzieloną pomoc. Czy to w postaci ogólnej koncepcji rozwiązania problemu, czy gotowych kodów lub choć by ich części.
Olaf
