Witam.Postanowiłem, że zrobie prosty termostacik.Moje założenia są takie: $regfile = "attiny2313.dat" $crystal = 1000000 ' (wew oscylator 1MHz w zupełności wystarcza) Config 1wire = Portd.5 Config Portd.0 = Output 'Led Czerwona -grzeje Config Portd.1 = Output 'led Zielona -nie Grzeje Config 1wire = Portd.5 Dim Tempmax As Byte Dim Tempmin As Byte Tempmax = 40 Tempmin = 38 Do Gosub Pomiar_temperatury Gosub Wyswietl_temp Gosub Termostat Loop '-------------Obsługa Pomiar temperatury------------- Pomiar_temperatury: If Pomiar_odczyt = 1 Then 1wwrite &HCC 1wwrite &H44 Else If Err = 0 Then 1wwrite &HCC 1wwrite &HBE Lsb = 1wread(): Msb = 1wread(): I1 = I1 * 10 I1 = I1 / 16 Temp = I1 / 10 Return Termostat: If Temp >= Tempmax And Status_grzalki = 1 Then Status_grzalki = 0 Reset Grzanie End If If Temp =< Tempmin And Status_grzalki = 0 Then Status_grzalki = 1 Set Grzanie End If ' I mam takie erory: Error : 238 Line : 34 Variable is not dimensioned as an array [DSID1(1)] , in File : C:\Program Files\MCS Electronics\BASCOM-AVR\noname2.bas Error : 263 Line : 34 Array index out of range [1] , in File : C:\Program Files\MCS Electronics\BASCOM-AVR\noname2.bas Error : 104 Line : 34 LoadReg error [DSID1(1)] , in File : C:\Program Files\MCS Electronics\BASCOM-AVR\noname2.bas I nie wiem jak jeszcze dopisać z tymi LED zeby sie świeciyły jak wyżej opisalem.
|
|||
Re: Błędy
Wydaje mi się że błędy które wkleiłeś mają się nijak do kodu który pokazujesz. Tak jak napisałem wcześniej wystarczy wziąść kod z wyświetlaczem i trochę z nieg usunąć. To co napisałeś nie będzie działało... zgubiłeś gdzieś obsługę przerwań i timera... nie ma żadnego opóźnienia które potrzebne jest do poprawnej pracy Ds18b20. Może tak:
Przeanalizuj to i sprawdź czy działa. Nie kompilowałem więc mogą być błędy
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Witam.Nie ma błędowxDMam
Witam.Nie ma błędowxDMam jeszcze proźbe czy mógł by mi pan sprawdzić PCB do tego.PCB jest badzo prosta więc góra zajmie to Panu 5 min.Wiem że eagle ma cos takiego jak rysowanie ze schematu, ale mi robi cienkie ścieżki i wogółe jakś ta PCB ogromna jak na taką iloś elementów.Prosił bym o sprawdzenie czy dobrze LEDY, ds i przekaźnik podłączyłem.Zrobilem również odrazy podłaczenie do programatora:)Tranzystor to BC548.
Pozdro:)
PS.Czy, żeny attiny2313 śmiglą na wewnętrnym ostylatorze to wystarczy że zmienie $crystal?
Pozdro :)
1. Schemat trochę ciasny ale
1. Schemat trochę ciasny ale OK.
2. Co to za układzik ok. 8-10 nogi attiny?
3. Cewka trochę blisko attiny, nie wiem czy nie będzie resetował, ja kiedyś myśłałem przekaźnik lepszy- owszem był lepszy bo zawsze rozłączy ale kiedy parę razy kupiłem triaka to nie było ani razu, mi zresetowało 2 razy, jeszcze zależy czym kolega chce sterować jeśli silnym obciążeniem indukcyjnym to przekaźnik lepiej bo mi bez układu RC nie rozłaczył ani razu, silnik był 10kW, przy małych silnikach bez problemu rozłączał, a może miałem feralne modele, dla testu podłączyłem potem piec elektryczny z wszystkimi płytami i piekarnikiem-grubo ponad 12kW, czyli triak nie nadaje się do obć. indukcyjnych ze względu na przesunięcie napięcia względem prądu.
Termostat
8-10 nożki ukłądó to nie scalak tylko goldpin na ds i oprnik.Czy tranzystor i przekażnik od ayyiny2313 są dobrze połączone?1 nożka cewki w przekażniku powina isć do na baze tranzystora druga na VCC?I czy moge zmienić tan kwarc 12 mhz na wewnetrzny oscylator?Czy wtedy trzeba jakiś wikesze zmiany wprowadzać w kodzie oprócz linijki $crystal?
Re: Crystal
W tym przypadku wystarczy zmienić fusebity i wpisać w crystal odpowiednia wartość częstotliwości. Pomiar się trochę wydłuży bo timer będzie liczył ni 1 sekundę tylko o 1/3 dłuższy czas
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Termostat
Witam.W tym kodzie:
który Pan naipsiał byl błąd.Zmienilem port przekaźnika bo w attiny2313 nie ma PORTD.7.Ale pomimo, że to poprawiłem to źle działa.Diody świecą jak chcą.A przekaźnik jest ciagle zalączony.Nawet jak podgrzewam zapałkami DS to przekaźnik nie drgnie.Między środkową nóżką DS, a układem dałem dokładnie opornik 4,66 kilo oma.Co morze być źle w programie?
Bardzo proszę o pomoc:)
Pozdro :)
Re: Termostat
Spróbuj taką wersję
a jak nie zadziała to dodaj w ramach testów zamiast linijek:
cos takiego
diody powinny dzięki temu migać na przemian. Przekonasz sie czy wogóle timer dobrze działa i czy flaga się ustawia i wykonuje
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.
Termostat
Witam.Po wkleieniu tego fragmento kodu:
Nie bylo żadnuch zmian.Na porcie od przekaźnika scalaka było wraz napięcie, a czerwona led się świeciał nawet jak czasami sie zielona zaświeciła to nadal było napięcie na pinie scalaka.Po wkleieni tego:
Diody mrugały na przemian.Rozważam trzy powody dla którego nie działa uklad:
1)Źle zaprojektowałem płytke.Umieszcze pod spodem PCB termostatu bo może coś tam spiprzyłem i nie chcie chodzić.Bardzo bym prosił żeby Pan rzucił na to okiem:)
/files/user_img/u368/ssssssssssssssss.png
W układzie jest LM7805 lecz po podłaczeniu ~9V daje na układ 6V stalego czy przez to morze nie działć ukald?Tranzystor to BC546B(NPN).
2)Źle ustawione fusy bit:
Dobrze są ustawione?
3)Zepsuty ds.
Barzo proszę żeby Pan sprawdził tą PCB bo momentami to nie wiem czy się smiać czy płakać:(
Proszę o pomoc
Pozdro :)
Re; termostat
gdzie masz schemat do tej płytki? mam nadzieje że nie rysowałeś od razu na PCB bo takich rzeczy się nie robi?
Na 6V procesor napewno nie pójdzie a jak nawet zadziała to nikt nie gwarantuje jak. zasilanie 4.5 - 5.5V, a nie 4.4 lub 5.6. O 6V nawet nie wspomnę. Co to znaczy że podałeś na LM7805 ~9V, podałeś bezpośrednio z trafa napięcie przemienne? a gdzie mostek i kondensator filtrujący? najgorszy LM7805 jaki widziałem dawał 5.12V, a przeważnie jest coś w okolicach 5.08V lub 4.98V
Fusebity są dobre
Ds napewno też.... masz rezystor 4.7k podciągający linię danych ds do +5V? bez tego nie będzie działał
UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.