Pomoc przy programowaniu 8051

Tutaj mozesz poruszać tematy ogólne powiązane z elektroniką, np. dyskusje na temat podzespołów, układów, zasad ich działania. Czyli można pisać o wszystkim czego nie da się przyporządkować do innych działów.
ODPOWIEDZ
aaroncitail
-
Posty: 1
Rejestracja: 22 gru 2010, 13:11
Lokalizacja: łódź

Pomoc przy programowaniu 8051

Post autor: aaroncitail » 24 gru 2010, 15:41

Witam! Jestem tu nowy i mam problem związany z programem do AT89S52.
Mam ich sporo więc chcę je wykorzystać do budowy kontrolera MIDI.

Ma w nim być 16 enkoderów (każdy ma mieć skalę ledową 11 diod), 40 przycisków, każdy ma mieć jedną diodę.

I problem pojawia się gdy chcę by skala ledowa odpowiadała wartościom z komputera.
Czyli jak ustawie np. Volume 100% to się pali 10 led, bo można przesterować, powyżej 100% 11 ledów.
W innym przypadku normalnie 100% = 11 diod.
I nie wiem jak uwzględnić np. sytuacje Balans że centrum = środkowa dioda.

Coś takiego jest robione w nowoczesnych kontrolerach i za nic nie mogę wpaść na pomysł jak napisać program.

Jeżeli ktoś by mógł napisać program wzorcowy dla 1 enkodera i przycisku (przy czym funkcja enkodera zależy od np. volume, balans itp

Będę bardzo wdzięczny, dopiero uczę się programować. Proszę o pomoc. PZDR

Awatar użytkownika
kayron
Użytkownik
Posty: 2088
Rejestracja: 21 wrz 2008, 12:53
Lokalizacja: Poland
Kontakt:

Post autor: kayron » 27 gru 2010, 11:59

Proste jeżeli wartość maksymalna to 128, to dzielisz przez 11 i masz krok z jaki musisz zapalać poszczególne LEDy.
Czyli 128 / 11 = 11,63 czyli zaokrąglamy do 12 i tak:
wartość <= 12 = 1 LEDka
wartość > 13 i <= 24 = 2 LEDka

ODPOWIEDZ