eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaVHDL - konwersja bin2bcdVHDL - konwersja bin2bcd
  • Data: 2020-12-04 21:59:54
    Temat: VHDL - konwersja bin2bcd
    Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W ramach poznawania podstaw VHDL-a na CPLD pracuję obecnie nad pewnym
    projektem. O ile bez większego problemu udało mi się napisać większość
    potrzebnych komponentów (dzielnik częstotliwości, licznik binarny,
    sterownik wyświetlacza siedmiosegmentowego).
    Niestety - wygląda na to, że utknąłem na zagadnieniu konwersji liczby
    zakodowanej binarnie na kod BCD. Na wejściu komponentu mam siedmiobitowy
    STD_LOGIC_VECTOR, przez ktory przekazuję wartość mieszczącą się między 0
    i 99. Na wyjściu znajduje się ośmiobitowy STD_LOGIC_VECTOR. Jego starszy
    półbajt ma mieścić liczbę dziesiątek, młodszy liczbę jedności.

    Wydawało mi się, że mogę to zrobić prosto, tak samo jak na
    mikrokontrolerach - dziesiątki uzyskując za pomocą dzielenia przez 10, a
    jednostki za sprawą operacji modulo 10.

    Napisałem więc coś następującego:

    bcdval(7 DOWNTO 4) <= binval/10;
    bcdval(7 DOWNTO 0) <= binval MOD 10;

    Niestety, synteza kodu wywala się właśnie w tym miejscu, zwracając błąd:
    "Operator <DIVIDE> must have constnt operands or first operand must be
    power of 2".

    Wygląda więc na to, że nie mogę w prosty sposób wykonać dzielenia
    dowolnej liczby przez inną dowolną liczbę.

    Jak w takim razie powinien być zrealizowany taki konwerter?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: