Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięPotencjometr cyfrowy i AVR
Moderatorzy:Jacek Bogusz, procesorowiec, r-mik, Moderatorzy
witam
czy ktoś mógłby mi naszkicować rozwiązanie problemu sterowania potencjometrami półprzewodnikowymi ( sterowanie trójprzewodową szyną danych ) za pomocą at90S2313 z jednoczesnym wyświetlaniem nastawionych wartości ?
Problemem są odpowiednie sterujące przebiegi czasowe które muszą być generowane przy nastawianiu rezystancji.
pozdrowienia
Marek
czy ktoś mógłby mi naszkicować rozwiązanie problemu sterowania potencjometrami półprzewodnikowymi ( sterowanie trójprzewodową szyną danych ) za pomocą at90S2313 z jednoczesnym wyświetlaniem nastawionych wartości ?
Problemem są odpowiednie sterujące przebiegi czasowe które muszą być generowane przy nastawianiu rezystancji.
pozdrowienia
Marek
Ostatnio zmieniony 27 mar 2007, o 13:58 przez 21777, łącznie zmieniany 2 razy.
Dla DS1804 w sumie nie jest to skomplikowane.
Masz:
INC - pin 1
U/D - pin 2
CS - pin 7
Przyłącz te piny do dowolnych pinów portu w procku AVR (nie wiadomo jakiego używasz, np. PORT B), cała mądrość i tak jest zawarta w programowaniu. Aby wysterować potencjometra należy na wejście CS podać z procka stan 0 (inaczej potencjimetr nie zareaguje), na mogę U/D należy podać 0 - będziesz robić ciszej, jak podasz 1 to będziesz robić głośniej, na nogę INC podawać impulsy (każdy impuls zrobi o jedną działkę głośniej lub ciszej).
Masz:
INC - pin 1
U/D - pin 2
CS - pin 7
Przyłącz te piny do dowolnych pinów portu w procku AVR (nie wiadomo jakiego używasz, np. PORT B), cała mądrość i tak jest zawarta w programowaniu. Aby wysterować potencjometra należy na wejście CS podać z procka stan 0 (inaczej potencjimetr nie zareaguje), na mogę U/D należy podać 0 - będziesz robić ciszej, jak podasz 1 to będziesz robić głośniej, na nogę INC podawać impulsy (każdy impuls zrobi o jedną działkę głośniej lub ciszej).
witam
wielkie dzięki, ale wiedziałem to zanim wysłałem maila. Chodzi mi o programową zasadę generowania przebiegów sterujących, w końcu musza spełniać konkretne warunki. Drugi problem to wyświetlanie nastaw na LCD. Myslałem, że ktoś juz w to sie bawił i ma jakieś konkretne rozwiązania.
pozdrowienia
Marek
wielkie dzięki, ale wiedziałem to zanim wysłałem maila. Chodzi mi o programową zasadę generowania przebiegów sterujących, w końcu musza spełniać konkretne warunki. Drugi problem to wyświetlanie nastaw na LCD. Myslałem, że ktoś juz w to sie bawił i ma jakieś konkretne rozwiązania.
pozdrowienia
Marek
Sterowanie sygnałami wyboru (CS) i kierunkiem (U/D) należy do zagadnień trywialnych. Sterowanie głośnościa nie należy do skomplikowanych (jeżeli nie ma jakichś kosmicznych wymagań). Wyświetlenie nastaw głośności można zrealizować albo jako liczba wyrażona przykładowo w procentach lub jako pasek.
W czym chcesz to programować?
W czym chcesz to programować?
Jeżeli "wzmocnienie" potencjometru wyrazisz w procentach (100*liczba nastawionych działek potencjometru/max liczba działek) pomnożysz to przez 10k, to uzyskasz aktualną rezystancję potencjometru. Jeżeli masz do dyspozycji zmienny przecinek, to nie ma problemu z obliczeniami. Wynik pomnóż przez 10 i obetnij do liczby całkowitej. Powstała liczba jest wynikiem w 1 cyfrą po przecinku (przecinek musisz sam wdrukować w odpowiednim mejscu).
witam
myślałem o innym sposobie. Licznik rewersyjny góra/dół sterowany dwoma klawiszami. Obsługuje wyświetlacz (wyświetlana zmienna licznika) i sterowane jest impulsami po przyciśnięciu przycisku. Jednakże fizycznie nigdy nie miałem do czynienia z kostkami DS1804 i nie wiem czy po włączeniu ustawiają się na minimum (maksimum)? Jak dobrze zrozumiałem manufacture data sheet po wyłączeniu zasilania kostka się resetuje, chyba że wcześniej dokonaliśmy zapisu ustawień. Czy ktoś ma już doświadczenia w tym temacie ? Drugi problem to wyświetlanie cyfry z przecinkiem.
pozdrowienia
Marek
myślałem o innym sposobie. Licznik rewersyjny góra/dół sterowany dwoma klawiszami. Obsługuje wyświetlacz (wyświetlana zmienna licznika) i sterowane jest impulsami po przyciśnięciu przycisku. Jednakże fizycznie nigdy nie miałem do czynienia z kostkami DS1804 i nie wiem czy po włączeniu ustawiają się na minimum (maksimum)? Jak dobrze zrozumiałem manufacture data sheet po wyłączeniu zasilania kostka się resetuje, chyba że wcześniej dokonaliśmy zapisu ustawień. Czy ktoś ma już doświadczenia w tym temacie ? Drugi problem to wyświetlanie cyfry z przecinkiem.
pozdrowienia
Marek
Najprościej to jest tak:
Jeżeli wart jest zmienną zawierającą liczbę do wyświetlenia, to
czesc_calkowita=wart / 10 ;
czesc_ulamkowa=wart % 10;
- wyświetlasz zmienną czesc_calkowita na iluś tam miejscach,
- dopisujesz znak przecinka (kropki),
- wyświetlasz zmienna czesc_ulamkowa na 1 pozycji znakowej
i masz wynik.
Jeżeli wart jest zmienną zawierającą liczbę do wyświetlenia, to
czesc_calkowita=wart / 10 ;
czesc_ulamkowa=wart % 10;
- wyświetlasz zmienną czesc_calkowita na iluś tam miejscach,
- dopisujesz znak przecinka (kropki),
- wyświetlasz zmienna czesc_ulamkowa na 1 pozycji znakowej
i masz wynik.
witam
prawie się udało, ale mam następujący problem. Zdefiniowałem zmienną tekst (zawierającą dwie zmienne:czesc_calkowita i czesc_ulamkowa) i chciałbym ,aby te dwie zmienne o których wcześniej rozmawialiśmy (czesc_calkowita i czesc_ulamkowa) były wyświetlane łącznie przedzielone przecinkiem. Jak to zrobić /
pozdrowienia
Marek
prawie się udało, ale mam następujący problem. Zdefiniowałem zmienną tekst (zawierającą dwie zmienne:czesc_calkowita i czesc_ulamkowa) i chciałbym ,aby te dwie zmienne o których wcześniej rozmawialiśmy (czesc_calkowita i czesc_ulamkowa) były wyświetlane łącznie przedzielone przecinkiem. Jak to zrobić /
pozdrowienia
Marek
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 20 gości