HomeMade
ARCP-590 Kenwood a ATMEGA - Wersja do druku

+- HomeMade (http://sp-hm.pl)
+-- Dział: Oprogramowanie (/forum-84.html)
+--- Dział: Technika programowania mikroprocesorów (/forum-85.html)
+--- Wątek: ARCP-590 Kenwood a ATMEGA (/thread-1964.html)

Strony: 1 2 3 4


RE: ARCP-590 Kenwood a ATMEGA - SP9RQA - 24-03-2014 22:00

Ja wiem co chce zrobić, ale najpierw trzeba wiedzieć, czy program cokolwiek wysyła i w jaki sposób, bo być może kol. niepotrzebnie szuka błędu u siebie w programie.
Zapętlenie to chodzi mi o to, aby puścić transmisję z jednego na drugiego com'a.


RE: ARCP-590 Kenwood a ATMEGA - SQ5KHA - 24-03-2014 22:07

Kolego free,
napisz sobie taką pętle i zobacz czy Ci coś wysyła procek.
Do
Print "A"
wait 1
Loop

Powinien Ci wysyłać znak "A" co sekundę


RE: ARCP-590 Kenwood a ATMEGA - SQ9GAC - 24-03-2014 22:12

Jest mały postęp z tą pętlą nawiązał połączenie ale program się zawiesza a na wyświetlaczu nic się nie dziej


RE: ARCP-590 Kenwood a ATMEGA - SP9RQA - 24-03-2014 22:17

A z jaką szybkością chodzi ta twoja do odświeżania LCD pętla? Na LCD można pisać kilka razy na sekundę, bo tak to nic nie zobaczysz.


RE: ARCP-590 Kenwood a ATMEGA - SQ5KHA - 24-03-2014 22:18

(24-03-2014 22:12)free napisał(a):  Jest mały postęp z tą pętlą nawiązał połączenie ale program się zawiesza a na wyświetlaczu nic się nie dziej
O jakiej pętli kolega pisze? o tej do wysyłania ?


RE: ARCP-590 Kenwood a ATMEGA - SQ9GAC - 24-03-2014 22:22

Połączenie jest poprawne jeżeli mam zaznaczone w programie FT 817 linie DTR/RTS


RE: ARCP-590 Kenwood a ATMEGA - SP9RQA - 24-03-2014 22:26

(24-03-2014 22:22)free napisał(a):  Połączenie jest poprawne jeżeli mam zaznaczone w programie FT 817 linie DTR/RTS
Kod:
Do


   Input S


   Cls :
   Locate 1 , 1 : Lcd S

  Loop

ja się tam na bascomie nie znam, ale tu chyba nie ma nic do opóźnienia. Piszesz na LCD z pełną szybkością z jaką chodzi pętla Loop. Zmiany mogą być tak szybkie, ze nic na LCD nie zobaczysz. No chyba, że ja tu czegoś nie kumam.

Ale co rozumiesz przez poprawne połączenie, to co się wtedy dzieje, że jest poprawne.


RE: ARCP-590 Kenwood a ATMEGA - SQ9GAC - 24-03-2014 22:29

Fotka wyżej jak to wygląda


RE: ARCP-590 Kenwood a ATMEGA - SP9RQA - 25-03-2014 0:21

No więc panie kolego z moich obserwacji wynika, że program ten przy próbie połączenia z radiem wysyła coś takiego (ramki po 5 bajtów):

0xFF 0xFF 0xFF 0xFF 0xFF (czyszczenie bufora)
0x00 0x00 0x00 0x00 0x0F ( Power ON)
0x00 0x00 0x00 0x00 0x03 (Read Frequency and mode)

więc pierwsze 0xFF które lecą mają zapewne za zadanie wyczyścić śmieci w buforze radia, później w następnej linijce radio zostaje włączone
a w następnej czyta częstotliwość i tryb pracy.

Jeśli teraz po tej 3-ciej ramce nie odpowiesz mu częstotliwością i trybem pracy
to się nie połączysz z programem. Program w wyniku braku odpowiedzi powtarza całą sekwencję 2 lub 3 razy (dokładnie nie wiem, bo więcej nie złapałem na analizatorze).

Więc teraz musisz to wszystko czytać, parsować i reagować w odpowiednim miejscu.
Zrób sobie bufor na 5 bajtów i do niego czytaj znaki, a potem sprawdzaj ostatni znak, jak będzie to coś z listy rozkazów, która cię interesuje to wykonasz polecenie, a jak nie to wyczyścisz bufor i będziesz czekał na następną ramkę.


Chyb więcej nie pomogę na tym etapie.


RE: ARCP-590 Kenwood a ATMEGA - SQ5KHA - 25-03-2014 8:12

Kolega SP9RQA ma racje, że nic nie zobaczysz na LCD jeśli będziesz go tak szybko odświeżał. Nie wiem też dlaczego używasz instrukcji CLS a za nią Locate 1,1, napisz tylko tak Locate 1, 1 a pod nią Lcd "" ; S ; " ". Nie znam instrukcji Input, ale przypuszczam że jak buforze RS nie będzie bajtu to instrukcja zwróci wartość zero.
Jeszcze jedna rzecz mnie zastanawia w swoim programie masz prędkość 9600 a w programie FT 817 widzę 38400, to coś tu nie gra.