Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

8051, projekt w Ride7 - Przesył cyfr na port szeregowy zapisanych w ASCI

nuflin88 17 Cze 2015 15:29 438 1
  • #1 17 Cze 2015 15:29
    nuflin88
    Poziom 2  

    Witam.

    Otóż, mam do zrealizowania projekt zaliczajacy laboratoria na uczelni (forma odrobienia nieobecnosci). Z racji zakończenia zajęć dydaktycznych, cały projekt mam zrobić w Ride7. Pewien pomysł mam, jednak nie wiem jak poradzić sobię z pierwszą częśćią zadania.

    Oto treść projektu, a pod nim to co do tej pory przyszło mi do głowy.

    "Program ma pobierac cyfry (od 0 do 9) w kodzie ASCII z pamieci kodu (koniec lancucha znakow bedzie zakonczony liczba #0h) w momencie jak stan portu P1.3 zmieni swoj stan. Odebrana cyfra ma byc wslana na port szeregowy.

    W pamieci zewnetrznej ma byc umieszczona ilosc wystepowania liczb 0-4 w kolejnych komórkach pamieci (od adresu 1 do 5) jako wynik dzielenia tej cyfry przez 2."

    Odnośnie drugiej cześći projektu mam taki pomysł.

    Zakładam, że w DPTR będę umieszczał ilość wystąpień 0,1,2,3,4 ( tzn zapetle i kazdy z wynikow bedzie umieszczany w odpowiednich adresach). w B będzie odpowiedni adres, czyli coś w stylu :

    Kod: armasm
    Zaloguj się, aby zobaczyć kod


    Mój problem w głównej mierze tkwi w nieposiadaniu wiedzy i ograniczonym czasie ( do piątku musze skończyć), jak poradzić sobię z pierwszą częścią zadania. O porcie szeregowym i jego obsłudze praktycznie nic nie wiem.
    Z góry zaznaczam iż nie jestem zainteresowany pracą w asemblerze, jest to tylko i wyłącznie przedmiot który muszę zaliczyć aby móc obronić prace inżynierską.

    Dzięki za przyszłe sugestie, pomoc i konstruktywną krytykę.

    Pozdrawiam Nuflin.

    0 1
  • #2 18 Cze 2015 14:40
    nuflin88
    Poziom 2  

    Póki co do takiego momentu doszedlem ;p


    Kod: armasm
    Zaloguj się, aby zobaczyć kod


    ; ponizej probujemy przesylac znak na port szeregowy

    Kod: armasm
    Zaloguj się, aby zobaczyć kod


    ;Zakładam, że w DPTR będę umieszczał ilość wystąpień 0,1,2,3,4
    ;( tzn zapetle i kazdy z wynikow bedzie umieszczany w odpowiednich adresach).
    ;w B będzie odpowiedni adres, czyli docelowo tak :

    Kod: armasm
    Zaloguj się, aby zobaczyć kod




    Problemem jest trudnośc wymyślenia sposobu wykrycia i zliczenia wystapien danego znaku/cyfry. Wysylanie znakow na port szeregowy realizuje kod pomiedzy "clr SM0" a "finish".

    Ktoś, coś zaproponuje? :D

    0