Bascom - projekt - gdzie jest błąd? POMOCY!



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Henry\(k\)" <henrico8_at_nospam_op.pl>
Subject: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 11:32:42 +0200


Pomocy, programik nie działa.

Zrobiłem projekt sterownika do pompy przy piecu i fajnie działa. Ale
skończyły mi się procesory ze starych zapasów (seria z 1996) i kupiłem nowe.
Kupiłem 5 sztuk każdy z innej serii (z 1998, i nowe z 2003)
Programator MAX nie chce ich zaprogramować (wywala się na losowo wybranej
komórce) ale Willem nie robi problemów.

http://www.henrico.republika.pl/gdzie_blad.zip

W linku jest schemat układu i poobcinane źródło do samego programu głównego.
Wygląda to tak:
temperatury z DS1821 oraz obsługa wyświetlaczy

teraz w pętli głównej:
którym wysyłana jest komenda konwersji temperatury do DS1821
podprocedury odczytującej temperaturę.

W czym problem?
...po osiągnięciu temperatury TLO następuje włączenie przekaźnika (stan H na
P3.5) który uruchamia pompkę.. liczniki zię zerują i nastepuje odmierzanie
znowu czasu 3,5sek - pompka pracuje dalej. Potem kolejne 1,5sek i następuje
aktualizacja temperatury oraz wyłączenie pompki !!! (stan L na P3.5).
Dajej to już jest klepanie przekażnikiem:

Co jest grane?
Zrobiłem próbę i zanegowałem P3.5. Tzn poniżej temperatury włączenia jest
stan wysoki a po osiągnięciu jej niski. No i klepie jak jest niska
temperatura, a po przekroczeniu jej ustawia się stan niski i ciszaa.
Coś nie tak ze stanem wysokim jest. Ale co?

Pomocy... na starej kości z 1996 roku wszystko działa. Nowych sprawdziłem w
sumie 8 sztuk i na wszystkich to samo. Programator MAX firmy ACS się sypie a
po zaprogramowaniu Willemem takie krzaki.

--
Henry(k)
Odpowiadając na majla usuń cyfrę z adresu.



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Henry\(k\)" <henrico8_at_nospam_op.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 13:07:34 +0200


WItam ponownie.

Pozakładałem ręczne pułapki i...
przekaźnik puszcza w momencie wykonywania podprogramu odczytu temperatury, a
dokładnie w trakcie jej odczytu z DS:

Get_temp:
1wreset
1wwrite &HAA ' odczytaj
temp
Temp_buf = 1wread()

wie ktoś dlaczego??



=======

Poprzedni Następny
Wiadomość
Spis treści
From: "Marek Dzwonnik" <mdz_at_nospam_WIADOMO_PO_CO_TO.message.pl>
Subject: =?iso-8859-2?Q?Re:_Bascom_-_projekt_-_gdzie_jest_b=B3=B1d=3F_POMOCY!?=
Date: Mon, 27 Sep 2004 13:26:13 +0200


Użytkownik "Henry(k)" <henrico8_at_nospam_op.pl> napisał w wiadomości
news:cj8scn$2q3$1_at_nospam_nemesis.news.tpi.pl

Get_temp:
1wreset
1wwrite &HAA '
odczytaj temp
Temp_buf = 1wread()
wie ktoś dlaczego??

Nie wiem dlaczego. A tym bardziej nie wiem dlaczego na starym Atmelku ma
działać a na nowych nie. Ale...
Czy nie masz jakiegoś konfliktu pomiędzy obsługą przerwań a bascomowymi
1Wire ? Nie wiem jak te funkcje są zrealizowane w Bascomie, ale biorąc pod
uwagę szerokść szczelin czasowych w 1Wire (AFAIR <15us, 15...60us
120...480us) nie da się ich pogodzić z obsługą przerwań co 250us. Tzn.
najprawdopodobniej bascom na czas obslugi 1Wire musi wylączyć przerwania.
Zastanów się np. co cię dzieje w razie zgubienia jednego..kilku przerwań od
timera.

--
Marek Dzwonnik, GG: #2061027 - zwykle jako 'niewidoczny'
(Uwaga Gadu-Gadulcowicze: Nie odpowiadam na anonimy.)


========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Henry\(k\)" <henrico8_at_nospam_op.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 13:50:49 +0200


Użytkownik "Marek Dzwonnik" <mdz_at_nospam_WIADOMO_PO_CO_TO.message.pl> napisał w
wiadomości news:4157f8d6$1_at_nospam_news.home.net.pl...

Nie wiem dlaczego. A tym bardziej nie wiem dlaczego na starym Atmelku ma
działać a na nowych nie. Ale...
Czy nie masz jakiegoś konfliktu pomiędzy obsługą przerwań a bascomowymi
1Wire ? Nie wiem jak te funkcje są zrealizowane w Bascomie, ale biorąc pod
uwagę szerokść szczelin czasowych w 1Wire (AFAIR <15us, 15...60us
120...480us) nie da się ich pogodzić z obsługą przerwań co 250us. Tzn.
najprawdopodobniej bascom na czas obslugi 1Wire musi wylączyć przerwania.
Zastanów się np. co cię dzieje w razie zgubienia jednego..kilku przerwań
od
timera.

No ok.
Wyłączam przerwania na czas trwania odczytu temperatury:
---
Stop Timer0
Disable Interrupts
1wreset
1wwrite &HAA
Temp_buf = 1wread()
1wreset
Enable Interrupts
---

i dalej to samo.
Powyższy fragment wyłącza mi przekaźnik, natomiast start przetwarzania
temperatury:

Stop Timer0
1wreset
1wwrite &HEE
Start Timer0

włącza mi go spowrotem :-/
No i tylko i wyłącznie w przypadku gdy port P3.5 ma ustawiany stan wysoki
tak się dzieje.
Spadnie temperaturka poniżej progu Tlo i mam stan niski... i ciszę na porcie
P3.5.

PS. ma może ktoś procedurkę obsługi DS1821 w asm ?

--
Henry(k)

Odpowiadając na majla usuń cyfrę z adresu.



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "As" <.NOSPAM.a.s.i.e.r_at_nospam_poczta.onet.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 15:33:06 +0200


Pomocy, programik nie działa.

Zrobiłem projekt sterownika do pompy przy piecu i fajnie działa. Ale
skończyły mi się procesory ze starych zapasów (seria z 1996) i kupiłem
nowe.
Kupiłem 5 sztuk każdy z innej serii (z 1998, i nowe z 2003)
Programator MAX nie chce ich zaprogramować (wywala się na losowo wybranej
komórce) ale Willem nie robi problemów.
[ciach]

Co do atmelków to faktycznie jest różnica miedzy starą a nową wersją
(nastąpiła zmiana technologii). W nowych wersjach np. w uśpieniu był duży
prąd rzędu 100uA, który cały czas się zmieniał. Nie wiem czy już to
poprawili bo od kilku lat nie używam tych procesorków.
Co do twojego projektu to zmieniłbym trzy rzeczy. Przede wszystkim
powinieneś podłączyć masę do stabilizatora, po drugie spróbować podwiesić do
+5V nóżkę P3.5 przez rezystor np. 22k. Po trzecie spróbuj dać histerezę w
procedurze porównania temperatur. Kiedyś robiłem regulator temperatury i też
o tym zapomniałem. W okolicach temperatury granicznej przekaźnik mi szalał
bo pomiar raz był równy temperturze granicznej a raz niższy (oczywiście
dopóki temperatura na skutek załączonego ogrzewania nie podniosła się na
tyle żeby chwilami nie spadać poniżej założonej granicy).
A.S.



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Henry\(k\)" <henrico8_at_nospam_op.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 15:44:27 +0200


Użytkownik "As" <.NOSPAM.a.s.i.e.r_at_nospam_poczta.onet.pl> napisał w wiadomości
news:cj94s6$j7d$1_at_nospam_atlantis.news.tpi.pl...
Co do atmelków to faktycznie jest różnica miedzy starą a nową wersją
(nastąpiła zmiana technologii). W nowych wersjach np. w uśpieniu był duży
prąd rzędu 100uA, który cały czas się zmieniał. Nie wiem czy już to
poprawili bo od kilku lat nie używam tych procesorków.
Co do twojego projektu to zmieniłbym trzy rzeczy. Przede wszystkim
powinieneś podłączyć masę do stabilizatora, po drugie spróbować podwiesić
do

oczywiście jest, tylko tak programik wyrysował :-)

+5V nóżkę P3.5 przez rezystor np. 22k. Po trzecie spróbuj dać histerezę w

Nie podwieszałem, bo port ma wewnętrzne rezystory

procedurze porównania temperatur. Kiedyś robiłem regulator temperatury i
też

histereza jest, tylko jak napisałem to jest fragment z którego usunąłem
wszystko co mogłoby zamącić cały program.


--
Henry(k)
Odpowiadając na majla usuń cyfrę z adresu.



========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "entroper" <entroper_at_nospam_CWD.spamerom.poczta.onet.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 16:50:29 +0200


"Henry(k)" <henrico8_at_nospam_op.pl> wrote in message
news:cj8mk5$qpo$1_at_nospam_atlantis.news.tpi.pl...

Pomocy, programik nie działa.

(...)

pytanie pomocnicze (z ukrytym rozwiazaniem problemu): jakie jest
napiecie w stanie H na pinie P3.5 ?

pozdrawiam
entrop3r



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Henry\(k\)" <henrico8_at_nospam_op.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 16:52:35 +0200


Użytkownik "entroper" <entroper_at_nospam_CWD.spamerom.poczta.onet.pl> napisał w
wiadomości news:cj98tg$3mr$1_at_nospam_achot.icm.edu.pl...

pytanie pomocnicze (z ukrytym rozwiazaniem problemu): jakie jest
napiecie w stanie H na pinie P3.5 ?

Ja pi***e DZIAŁA

Dziękuję głównie As i Tobie !

Podciągnąłem i działa.

Napięcie na nodze było raz w stanie wysokim a raz w stanie niewiadomojakim.
Nie rozumiem tego gdyż:

czyżby rezystor raz był a raz go nie było w zależności od wykonywanego
fragmentu kodu?


--
Henry(k)
Odpowiadając na majla usuń cyfrę z adresu.



========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "entroper" <entroper_at_nospam_CWD.spamerom.poczta.onet.pl>
Subject: Re: Bascom - projekt - gdzie jest błąd? POMOCY!
Date: Mon, 27 Sep 2004 19:06:39 +0200


"Henry(k)" <henrico8_at_nospam_op.pl> wrote in message
news:cj99cb$epi$1_at_nospam_atlantis.news.tpi.pl...

Ja pi***e DZIAŁA

Dziękuję głównie As i Tobie !

Podciągnąłem i działa.

Napięcie na nodze było raz w stanie wysokim a raz w stanie
niewiadomojakim.
Nie rozumiem tego gdyż:
- wersja z 1996 roku proca działa miodzio
- port ma rezystory pull-up

czyżby rezystor raz był a raz go nie było w zależności od wykonywanego
fragmentu kodu?

pewnie przemigrowali w strone gestszych struktur i wydajnosc portu sie
zmniejszyla (i cholera wie, co sie jeszcze spieprzylo przy okazji)-
BTW - w datasheecie mam podana bardzo niska wydajnosc portu (prad
wyplywajacy) - ten rezystor byl i tak "na granicy". A bascom pewnie
uzywa do sterowania pinem 1-wire instrukcji read-modify-write, co
powoduje wlasnie takie sensacje.

pozdrawiam
entrop3r


========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsgate.onet.pl!niusy.onet.p