Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Sterowanie syntezą LM7001 z Arduino
SQ8MVY Offline
Paweł
****

Liczba postów: 724
Dołączył: 30-07-2011
Post: #8
RE: Sterowanie syntezą LM7001 z Arduino
(25-02-2017 12:19)SP7EZG napisał(a):  Nie rozumiem jednak dlaczego w programie SQ1FTB po każdej sekwencji bitów jest wywoływana funkcja Zegarek.

Ponieważ Zegarek odpowiada za generowanie impulsu na linii CL. Ten impuls MUSI być wygenerowany po każdym wystawionym bicie na linii DATA

(25-02-2017 12:19)SP7EZG napisał(a):  .... ale czy w Bascomie zmienne zawsze mają postać dwójkową? Nie znalazłem w programie żadnej funkcji zamieniającej wartość Freq czy Fpom na binarną.....

A co robi pętla wysyłająca 14 bitów ze zmiennej Fpom ?????
Każdy procesor, cyfrowy układ logiczny, FPGA i co tam jeszcze jest w cyfrówce widzi tylko dane binarne. Po to są edytory, środowiska programistyczne, żeby kod wyglądał zjadliwie dla człowieka !!!! Ciężko jest w dzisiejszych czasach pisać za pomocą 0 i 1 przy tak złożonych mikroprocesorach i programach.

(25-02-2017 12:19)SP7EZG napisał(a):  Jeśli Fpom.a zwraca wartość bitu na danej pozycji to czy dla C można to zastąpić.....


Np. tak można wysłać 14 bitów zmiennej Fpom w kolejności nałożonej przez producenta LM7001:
Kod:
for( uint8_t idx=0; idx<14; idx++ )
{
   if ( ( Fpom >> idx ) & 0x0001 )
   {
      SET_PIN_DATA ;         // Pin DATA ustawiamy na 1
   } else
   {
      CLEAR_PIN_DATA ;     // Pin DATA ustawiamy na 0
   }
   Zegarek();                    // Generujemy impuls na linii CL
}

Za pomocą tej pętli można również za jednym zamachem wysłać wszystkie 24 bity do LM7001 - czyli kompletne słowo sterujące. Wymaga to jednak, bardzo drobnej modyfikacji powyższej pętli.

73 Paweł
(Ten post był ostatnio modyfikowany: 25-02-2017 14:33 przez SQ8MVY.)
25-02-2017 14:32
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
RE: Sterowanie syntezą LM7001 z Arduino - SQ8MVY - 25-02-2017 14:32

Skocz do:


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