Forum Elektronika
audio radio telewizja cyfrówka okablowanie

∑ temat został odczytany 1811 razy ¬


ZAREJESTRUJ SIĘ I ZALOGUJ NA FORUM, TO NIC NIE KOSZTUJE!
PO ZALOGOWANIU BĘDZIESZ MÓGŁ ZOBACZYĆ WYPOWIEDZI SPECJALISTÓW I WYŁĄCZYĆ REKLAMY

ELEKTRONIKA | Cyfrówka
Mikrokontroler pytania 
Wyślij odpowiedź [powiadom znajomego]    
Autor "Mikrokontroler pytania"   
 
cristof_w
 Wysłana - 11 wrzesień 2006 18:31        | zgłoś naruszenie regulaminu

Witam. W związku z przypływem wolnego czasu zaczynam próbę programowania, dalszej nauki. Mam parę pytanek odnośnie samego programowania jak i mikrokontrolerów.Po kolei...
1. czy ktoś z szanownych użytkowników ma kontakt z książką pt. "Zrozumieć małe mikrokontrolery" ? Jeżeli tak to proszę o kontakt gdyż mam jedno pytanie odnośnie przedstawionego tam programu na stronie 106, rys 31 (dlaczego na samym początku programu, 3 linijki, opis mnemoniczny jest taki a nie inny, nie rozumiem tego).

2. Jeżeli np. chcę podłączyć czujnik temperatury na wejście, to podłączam jakiś kupny gotowy czy np. używam diody czy też termistora jako czujnik, odpowiednio dalej wszystko projektując, wzmacniając sygnał i podłączam to na wejście uC ? Chcę się uczyć pisania programów (coś znacznie więcej niż tylko zapalenie/zgaszenie diody) i nigdize nie mogę znaleść przykładowego programu np. do takiego czujnika temperatury. Może ktoś poratować? Prosze o pomoc i pozdrawiam.

______________________________
 
Cristof

 
el_bart
 Wysłana - 11 wrzesień 2006 22:40      [zgłoszenie naruszenia]

ad.2 sygnal wEjsciowy na wiekszosc wyprowadzen wiekszosci uC to sygnal cyfrowy - ja tu widze dwie opcje: albo dodac element progujacy "poza uC", albo na wEjsciA uC podac sygan wYjsciowy z konwertera A/C.
drugie rozwiazanie daje znacznie szersze mozliwosci - moglbys na przyklad pobawic sie w zaprogramowanie histerezy, czy nawet logiki rozmytej (tutaj masa roznych opcji!) - do wyboru, do koloru. :)
_______________________________
 
[baszerr.org]

 
cristof_w
 Wysłana - 11 wrzesień 2006 23:13      [zgłoszenie naruszenia]

Dzięki za odpowiedź...aczkolwiek Twoja odpowiedź jest jakby...troche jnie na moją wiedzę przyznaję, mało mam doświadczenia. Logika rozmyta? Poszukam w google i doczytam o czym tu mowa. Czy mógłbyś może parę rzeczy wyjaśnić prościej? chodziło mnie oto czy można użyć elementóe elektroniki analogowej ( tutaj właśnie potrzebna byłaby histereza) i tak zaprojektować cały układ by napicie zmieniające się na wyjściu całego układu w zależności od temperatury zapodać na wejście ( tak by mieć stan 0 albo 1) i napisać program , który odpowiednio zasteruje wyjściem? Nie wiem jak napisać program, który by odpowiednio sterował wyjsciem jeżeli podłącze czujnik temperatury.
P.S W czym najlepiej uczyć się pisać? Obecnie studiuję Assemblera, pod 8051 jakoś daję radę, ale pod AVR jak widziałem przykłady to ciężko, z kolei Bascom-Basic mnie przypadł do gustu, byłoby to dobre połączenie z AVR ?
Edit: Zapoznałem się zogólnymi podstawami logiki rozmytej, już wiem o co chodzi tak ogólnikowo.

Zmieniony przez - cristof_w w dniu 2006-09-12 06:08:32
_______________________________
 
Cristof

 
el_bart
 Wysłana - 15 wrzesień 2006 17:08      [zgłoszenie naruszenia]

osobiscie na uC zawsze pisze w asm. nie jest to przewaznie konieczne, ale takie juz mam upodobania. ;)

AVR to RISC, takze kod w asemblerze z zalozenia wyglada mniej przejzyscie, choc dziala szybciej.

prawde mowiac chyba sie troche zxgubilem w Twoim opisie. moglbys narysowac schemat blokowy rozwiazania o jakim myslisz (gdzie jest co i jakie wielkosci przekazuje gdzie) - tak ogolnikowo chociaz. jak to juz bedzie, to bedziemy sie zastanawiac nad konkretnymi rozwiazaniami. :)
_______________________________
 
[baszerr.org]

 
cristof_w
 Wysłana - 16 wrzesień 2006 14:58      [zgłoszenie naruszenia]



Więc tak...po kolei... Na początku muszę określić wejścia/wyjścia. Jeżeli chcę na danym porcie w konkretnym pinie otrzymać wejscie to muszę programowo wpisać wartość logiczną "1". Sygnał "1" to napięcia z przedziału 3,5-5 V dla VCC 5 V. Następnie w programie muszę napisać tak, że jeżeli na wejsciu zamiast "1" pojawi się "0" to wtedy na wyjściu pojawi się odpowiedni sygnał, który np. zasteruje przekaźnik. Czy to jest dobry tok rozumowania?? A jeszcze co do wejścia...to można np. użyć transoptora, rezystora podciągającego itd. i tak dobrać wszystko żeby np. przy zadanej temperaturze nastąpiła taka zmiana napiecia na wyjściu tego(czyli wejściu uC) żeby uC odczytał to jako zmiana z "1" na "0". Czy to jest także dobre myślenie? Proszę o wysądowanie.Pozdrawiam.
_______________________________
 
Cristof

 
el_bart
 Wysłana - 19 wrzesień 2006 18:01      [zgłoszenie naruszenia]

hmmm - albo znow czegos nie rozumiem, albo robisz cos b. dziwnego. :)

jezeli wEjscie i wYjscie to 1 bit, to oznacza, ze dla kazdego stanu wEjscia mozemy miec 2 stany wYjscia, co lacznie daje 4 rozne konfiruracje. :) to troche malo zeby zaprzatac tym uC.
nawet gdyby to byl jakis uklad stanowy, to raczej nie wymyslis sie tu niczego sensownego, posiadajacego wiele konfiguracji.

zastanow sie dobrze, co chcesz robic!
osobiscie proponuje Ci przetwornik A/C do odczytu temperatury (zamist progowania 0/1).
wyjscei zalezy juz od tego czym sterujesz. jezeli chcesz wlaczac/wylaczac piecyk elektryczny w domu, ustawiony na stala moc, to przekaznik bedzie ok.

co do przedzialu napiec, jaki podales - jest to prawda, ale w teorii. w praktyce jest luka miedzy 0-1 i sygnal nie powinien przyjmowac takich wartosci wcale. jak zareaguje uC na niego, to juz zalezy od egzemplarza a to nie najlepiej... ;)

w kwestii zabezpieczania portow I/O uC - podejscie z transoptorem jest zdecydowanie bezpieczne. bezposrednie podawanie napiec, moze sie konczyc tragicznie.
na takie "luksusy" raczej mozna sobie pozwolic okazjonalnie, przy znanym srodowisku (np: polaczenie bezposrednio do ukladow logicznych).

pamietaj tez o odpowiednim zasilaniu - napiecie musi byc dosc dokladne, nie moze puslowac i trzeba pilnowac, zeby "szpile" nie lataly po nim (odsprzeganie)!
_______________________________
 
[baszerr.org]

 
cristof_w
 Wysłana - 19 wrzesień 2006 18:49      [zgłoszenie naruszenia]

Rozchodzi się o czujnik temperatury. Dobrze piszesz odnośnie użycia przetwornika A/C. Spotkałem się także z przykładami odnośnie 1-wire. Narazie jeszcze nie wiem jak to wszystko zrealizować programowo, ale daje sobie sporo czasu...nie wszystko odrazu. W razie czego, będę pytać za jakiś czas. Dzięki.
P.S. Problemem było wcześniej uniknięcie tylko dwóch stanów "0" albo "1", ponieważ wiadomo, temperatura (czy też może to być cokolwiek innego) zmienia się w sposób ciągły.
_______________________________
 
Cristof

 
el_bart
 Wysłana - 21 wrzesień 2006 19:13       [zgłoszenie naruszenia]

w ukladach cyfrowych kwantyzacji ciaglosci wszelakiej masci nigdy nie unikniesz (z zalozenia) - cala zabawa polega na tym, aby byla ona dostatecznie mala dla danego zastosowania i w danym zakresie.

"uparlem" sie na przetwornik A/C, bo wydaje mi sie ze byloby Ci prosciej to zrealizowac, choc nie jest to jedyna opcja. A/C trzebaby podlaczyc pod np: termistor.
mozna tez kupic gotowe uklady do takich rzeczy, pracujace na protokole 1-wire czy tez I2C. sa to standardowe protokoly, wiec nie powinienes miec problemy z dokopaniem sie do stosownej dokumnetacji a jak Ci sie nie chce odkrywac kola na nowo, to i gotowe kody programow sie na pewno znajda. :)

3mam kciuki! :)
_______________________________
 
[baszerr.org]

[Powiadom mnie, jeśli ktoś odpowie na ten artykuł.]



 
Przegląd tygodnia | Wyślij odpowiedź

Mikrokontroler pytania


 
Polecamy: urządzenia spawalnicze | MŚ w Piłce Nożnej - RPA 2010 | Forum | Komputery | Nauka | pomysł na biznes

wersja lo-fi


Pozycjonowanie i optymalizacje zapewnia Agencja Interaktywna

Copyright 2000 - 2010 KULTURYSTYKA.PL
 
Powered by Pazdan ForKat 4.0