Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Nietypowa transmisja szeregowa w BASCOM

pawel.o 10 Sep 2013 21:31 2799 6
  • #1
    pawel.o
    Level 12  
    Witam.
    Bardzo proszę o pomoc w nietypowej transmisji szeregowej.
    Po analizie wielu przebiegów wynika, iż dane mają następujące znaczenie.

    [A1] [A2] [A3] [A4] [bit startu] [D1] [D2] [D3] [D4] [D5] [D6] [D7] [D8] [D9]
    A - adres
    D - dane

    Potrzebuję odebrać te dane w mega8 i wysterować odpowiednie piny procesora

    Nietypowa transmisja szeregowa w BASCOM

    Jak do tego się najlepiej zabrać?
  • #3
    11111olo
    Level 42  
    Dane odczytuj na opadającym zboczu CLK.
  • #4
    pawel.o
    Level 12  
    Dziękuję za szybkie odpowiedzi.
    Bardzo proszę o informację czy są gotowe polecenia do odczytu tych danych w BASCOM, czy trzeba pisać własne.
    Poproszę o podpowiedz realizacji programowej.
    Raczkuję w realizacji szeregowej transmisji danych innych niż i2c i rs232 z gotowych bibliotek.
  • #6
    pawel.o
    Level 12  
    Witam ponownie.
    Bardzo proszę o sprawdzenie kodu programu ponieważ nie do końca rozumiem użycia komendy shiftin.

    Code: basic4gl
    Log in, to see the code


    Nietypowa transmisja szeregowa w BASCOM

    Zamieszczam całą ramkę danych wysyłanych przez sterownik.Dane są wysyłane w rożnych odstępach czasu.
    Ja potrzebuję aby program wyświetlił tylko te dane, które są dla niego zaadresowane.

    -Czy po przypisaniu przez shiftin bitów do zmiennej 8led_bin muszę wyciągać te dane od 0 do 13 czy od 1 do 14 (8led_bin.0 ..... 8led_bin.13)?
    -Z której strony bity są numerowane patrząc na przebieg graficzny
    (czy bit patrząc od lewej na wykresie dla opcji shiftin-5 jest numerem 1 czy 14)?
    -czy powinienem zastosować jakieś opóźnienie dla opcji shiftin?

    Walczę już kilka godzin i udało mi się coś wyświetlić na diodach podłączonych do rejestru szeregowego ale są to dane chyba losowe :)
  • #7
    pawel.o
    Level 12  
    Po wielu godzinach udało mi się osiągnąć połowiczny efekt.
    Nie wiem dlaczego przy procedurze shiftin i zmiennej Word wychodziły "krzaczki".
    Zmieniłem na 4 zmienne typu Byte i bez problemu i poprawnie wyświetla 1 ramkę danych.

    Code: basic4gl
    Log in, to see the code


    A jakie macie pomysły bym odczytał kilka ramek i wyświetlił je osobno na każdym wyświetlaczu?