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ę

Miganie dioda

rybol
-
-
Posty: 8
Rejestracja: 23 mar 2004, o 18:22
Kontaktowanie:

Miganie dioda

Postautor: rybol » 5 kwie 2004, o 20:35

No nie, trace juz glowe nad niby prostym problemem. Dlaczego po napisaniu krociutkiego programiku:

Config Portb = Output
Portb = 255
Cls
Do
Toggle Portb.0
Wait 1
Loop

dioda podlaczona do portb.0 miga (co jedna sekunde), a gdy wyrzuce polecenie "cls" przestaje?! Mikrokontroler (AT90S2313) mimo wielokrotnego juz uzytkowania raczej sprawny, bardziej skomplikowane programy dzialaja tak jak powinny.

Pzdr, rybol

Awatar użytkownika
gruszek
-
-
Posty: 178
Rejestracja: 20 lis 2003, o 13:31
Lokalizacja: bytom

Postautor: gruszek » 6 kwie 2004, o 16:26

ja dopiero zaczynam sie bawic AVRami ale w helpie wyczytalem ze tam jakos sie przelacza czy port ma byc wyjsciem czy wejsciem... nie jestem co do tego pewien
moze polecenie cls wlasnie to robi, poczytaj helpy i pdfy o prcku to sie czegos dowiesz moze :)

rybol
-
-
Posty: 8
Rejestracja: 23 mar 2004, o 18:22
Kontaktowanie:

Postautor: rybol » 6 kwie 2004, o 16:39

Zgadza sie, na poczatku powinno sie konfigurowac port w zaleznosci od tego czy ma byc wyjsciem czy wejsciem, ale to i tak nie zmienialo mi dzialania programu. Mozliwe ze cls robi cos z calym portem, ale gdzie ja sie tego dowiem... Powinno dzialac bez tego!;)

pzdr, rybol

Awatar użytkownika
Wojtek
-
-
Posty: 867
Rejestracja: 21 lut 2003, o 18:21

Re: Miganie dioda

Postautor: Wojtek » 6 kwie 2004, o 19:56

(...)dioda podlaczona do portb.0 miga (co jedna sekunde), a gdy wyrzuce polecenie "cls" przestaje?! Mikrokontroler (AT90S2313) mimo wielokrotnego juz uzytkowania raczej sprawny, bardziej skomplikowane programy dzialaja tak jak powinny.
A po co Ci to Cls ? Też nie jestem specem , bo dopiero sie uczę pisania programów ale w helpie Bascom jest napisane na temat Cls:

Przeznaczenie
Usuwa znaki z ekranu wyświetlacza LCD.
Składnia (dla wyświetlaczy alfanumerycznych):

CLS

Składnia (dla wyświetlaczy graficznych):

CLS [ TEXT | GRAPH ]

Opis:

Wykonanie tej instrukcji powoduje wyczyszczenie zawartości wyświetlacza LCD, oraz ustawienie kursora na początek pierwszej linii. Instrukcja ta nie narusza pamięci CG-RAM gdzie są umieszczone znaki zdefiniowane przez użytkownika.
Dla wyświetlaczy graficznych instrukcja CLS kasuje stronę tekstową i graficzną. Podanie jednak argumentu TEXT lub GRAPH, spowoduje że tylko dane z określonej “strony graficznej” zostaną usunięte.

Przykład:

Cls 'kasuj wyświetlacz
Lcd "Witaj" 'wypisz to co zwykle

End



Więc nie bardzo wiem po co pakujesz Cls ?

rybol
-
-
Posty: 8
Rejestracja: 23 mar 2004, o 18:22
Kontaktowanie:

Postautor: rybol » 6 kwie 2004, o 20:14

'Cls' nie jest mi w tym przypadku do NICZEGO niepotrzebne; przypadkowo (usuwajac po kolei zbedne linijki w innym programie) wpadlem na to ze z tym poleceniem program dziala tak jak powinien (czyli dioda miga), a bez niego nie. A przeciez musi byc jakies logiczne tego wytlumaczenie...

rybol

Awatar użytkownika
Wojtek
-
-
Posty: 867
Rejestracja: 21 lut 2003, o 18:21

Postautor: Wojtek » 6 kwie 2004, o 20:40

O przepraszam :oops: zamiast "wyrzucę" przeczytałem "wrzucę" i dlatego myślałem że jest dokładnie odwrotnie :)

Awatar użytkownika
Wojtek
-
-
Posty: 867
Rejestracja: 21 lut 2003, o 18:21

Postautor: Wojtek » 6 kwie 2004, o 21:29

Napisałem takie coś, a więc całkiem podobne do twojego rybol i działa

Config Portb = &B11111111 'ustawia wszystkie końcówki portu B jako wyjścia
Portb = &B11111111 'ustawia wszystkie wyjścia portu B na stan "1"
Config Portd = &B1111111 'ustawia wszystkie końcówki portu D jako wyjścia
Portd = &B1110111 'włączony jest tranzystor T3 - taki mam układ

Do
Toggle Portb.7
Waitms 1000 'kropka gaśnie po ok. 1 sekundzie
Loop
End


Jak wpisałem Cls w tym samym miejscu co ty to kropka (LED) dalej mi migała ale jescze rozświetliła mi się szóstka na wyświetlaczu LED który to mam podłączony do portu B :roll: czemu to jeszcze nie wiem :)

.....

Teraz juz chyba wiem. W kompilatorze BASCOM-AVR w zakładce "Options" --> "Compiler" --> "LCD" --> "Data mode" zamiast domyślnego "pin" to ustawiłem "bus" i już jak wpiszę Cls nie zmienia to działania układu - nie rozświetla się 6 jak poprzednio.

rybol
-
-
Posty: 8
Rejestracja: 23 mar 2004, o 18:22
Kontaktowanie:

Postautor: rybol » 7 kwie 2004, o 13:05

Dzieki, mozliwe ze wlasnie takie powinienem miec ustawienia (brzmi to calkiem logicznie;) ), choc moj problem mial inne rozwiazanie - bylo cos nie tak z programatorem ale juz ok:)

pzdr, rybol

szpulek
-
-
Posty: 15
Rejestracja: 6 maja 2004, o 15:55
Lokalizacja: Gliwice
Kontaktowanie:

Postautor: szpulek » 17 maja 2004, o 15:14

witam,
tez mam podobny problem, mam cos takiego:

Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output

Leda1 Alias Portb.0
Leda2 Alias Portb.1
Leda3 Alias Portb.2

Do
Toggle Leda1
Toggle Leda2
Toggle Leda3
Waitms 100
Loop

program jak widac ma migac trzema diodami na porcie B, ale niestety po wgraniu do procka nic sie nie dzieje :-(

pozdr

Awatar użytkownika
Wojtek
-
-
Posty: 867
Rejestracja: 21 lut 2003, o 18:21

Postautor: Wojtek » 17 maja 2004, o 18:09

witam,
tez mam podobny problem, mam cos takiego:
(...)
program jak widac ma migac trzema diodami na porcie B, ale niestety po wgraniu do procka nic sie nie dzieje :-(

pozdr
Wkleiłem dokładnie to co napisałeś do BASCOM-AVR skompilowałem wgrałem do procka (mam taki zestaw ZL!AVR z AT90S2313) i wszystko gra. W symulacji pod bascomem też chodzi. Powiedz jak wpiąłeś te diody do procka ? i czy napewno uC został zprogramowany?

szpulek
-
-
Posty: 15
Rejestracja: 6 maja 2004, o 15:55
Lokalizacja: Gliwice
Kontaktowanie:

Postautor: szpulek » 17 maja 2004, o 20:45

mam 3 diody wpiete tak:
port ----- K|-----opornik-----vcc

sprawdzalem juz miernkiem i z tego co zauwazylem to port nie ustawia sie na zero, nie wiem czemu.. choc po takim programie powinien..

pozdr

szpulek
-
-
Posty: 15
Rejestracja: 6 maja 2004, o 15:55
Lokalizacja: Gliwice
Kontaktowanie:

Postautor: szpulek » 17 maja 2004, o 20:52

No wlasnie, mi to nawet w symulatorze nie dziala. No chyba, ze to zle obsluguje, ale to jest raczej proste narzedzie.. pozdr

Awatar użytkownika
pikczu
-
-
Posty: 89
Rejestracja: 5 paź 2003, o 19:55
Lokalizacja: Dublin
Kontaktowanie:

Postautor: pikczu » 5 cze 2004, o 17:48

niewiem czy to mam sens ale moze czeba ustawic stan poczatkowy na porcie
acha i sprawdz ustawienia programatora bo jak zle pozaznaczasz ptaszki to niebedzie sie chcialo programowac
ja to ustawiam metda prób i błedów
pozdrawiam

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 93 gości