.... W pętli głównej sprawdzam na okrągło bit 0 rejestru 0 układu ( sprawdzam flagę alarmu timera). .... "Additionally, a timer alarm can be programmed by setting the timer alarm enable (bit6 of the alarm control register). When the value of the timer equals a pre-programmed value in the alarm timer register (location0F), the alarm flag is set ( bit1...
Nic sie nie dzieje, bo to nie ma prawa działać :D Gdzie rezystory podciągające linie SDA,SCL do plusa? Dostaw tam dwa rezy 10kR... Powinno to rozwiązać problem. Twój program wisi na komunikacji I2C, procek czeka na ACK lub NACK pod koniec transmisji i z powodu braku podciągania nigdy tego nie dostaje...
Domyślnie w Bascomie parametry przekazywane są przez referencje, chyba że w deklaracji funkcji/podprogramu wykorzysta się parametr "byval".
Zapewne tak. Zapomniałem ze to BASCOM.
Mając trochę wolnego czasu napisałem parę funkcji do obsługi układu PCF8583. Funkcja która ustawia godzinę i datę zapisuje też dane potrzebne do obliczenia pełnego roku, dzień tygodnia jest obliczany automatycznie na podstawie daty. Funkcje Pcf8583_write i Pcf8583_read można wykorzystać do zapisywania/odczytywania danych z wolnej pamięci ram. Dostępne...
Witam. Przedstawiam w załączniku kodu w Bascomie obsługujący zegar na ATmega 16/32, PCF 8583, DS18B20 i MAX7219 (osiem cyfr) obsługiwany wyświetlacz po SPI. Zegar, budzik, temperatura, data, utawienie jasności. Może komuś przydadzą procedury bascomowe we własnych opracowaniach. Pracuję nad ustawianiem za pomocą pilota. Jak przetestuję - dokleję do postu....
NIE wolno robić czegoś takiego żeby zmienna co chwile była zapisywana do EEPROM-u dlatego że on ma określoną ilość zapisów minimum 100.000 / + . Ja bym si polecił jakiś SRam na i2C albo SPI z podtrzymaniem bateryjnym może być nawet zegar RTC PCF8583 . Co do karty i komunikacji z PC tu [url=http://www.dharmanitech.com/2009/01...
Zrób to tak: [syntax=BASCOM]Dim Year As Eram Word [...] Year = 2016 [/syntax]
jeden kondensator mniejszy i równolegle z nim trymer a drugi pozostaje bez zmian zmiana położenia trymera spowosuje lekką zmianę częstotliwości kwarcu i taktowania procesora. licznik w procesorze będzie pobierał impulsy właśnie z oscylatora kwarcowego mówimy o atmega... a może liczniki liczyły Ci źle bo korzystasz z wewnętrznego oscylatora RC, który...
Tak, na 100% ( zerknij na fusebity ). Tak jak napisałem wcześniej dodanie zewnętrznego epromu 24c02 robi problem - pamięci podmieniałem i dalej to samo http://obrazki.elektroda.pl/6675331400_1... Dodano po 5 może źle zainicjowałem I²C ? ale przecież PCF8583 chodzi, a adresy zapisu i odczytu z epromu są wg. mnie dobrze
Podstawowa sprawa - w drugiej linijce kodu masz napisane, że $crystal = 8000000 podczas gdy na schemacie nie masz podłaczonego żadnego kwarca. Jeśli używasz wewnętrznego oscylatora (i oczywiście masz tak ustawione FuseBit'y), to ATmega pracuje na 1MHz i taką wartość powinieneś ustawić w programie, bo nic nie będzie działać, albo będzie, ale "dziwnie"...
Witam. Patrz komentarze które dodałem do Twojego listingu: $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.3 = Input 'pinb.1 jako wejscie Config Pinb.2 = Input 'pinb.2 jako wejscie Config Lcd = 16 * 2 'jaki zostal podlaczony wyswietlacz LCD Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4...
Wprawdzie ... to nie humanitarnie z mojej strony dawać niemalże gotowca ... :D [syntax=basic4gl]$regfile = "m2560def.dat" $crystal = 16000000 $hwstack = 64 $swstack = 64 $framesize = 64 $include "Config_PCF8583.bas" Declare Sub Displaytime() Declare Sub Settime() Declare Sub Cancel() Declare Sub Plus() Declare Sub Minus() Declare Sub Saveandexit() Declare...
http://obrazki.elektroda.pl/4776361100_1... Witam wszystkich, jest to mój pierwszy projekt opisywany na tym forum. Przedstawiam projekt mojego autorstwa, zegar z termometrem wyświetlający aktualną datę, godzinę oraz temperaturę z 3 czujników. Założeniem projektu było zbudowanie zegara wyświetlającego godzinę oraz temperaturę wewnątrz...
Dodaj przed pętlą Do...Loop komendę: I2cinit oraz podwieś linie SDA i SCL do Vcc poprzez rezystory 4.7 k. Jeszcze jedna sprawa, jeśli masz najnowszą wersję Bascom'a to powodem błędnej komunikacji jest biblioteka I2c. Należy tą bibliotekę zastąpić plikiem ze starszej wersji Bascom'a. Pozdrawiam...
Spróbuj tak: Menu: Disable Int0 Disable Int1 Enable Interrupts Cls
Witam. Miałem podobny przypadek - ale co jakiś czas były prawidłowe odczyty z PCF-a. Pomogło podłączenie kondensatora między nóżkami zasilania PCF-a. Pozdrowienia - teedd
Dzień dobry. Uczę się C na AVR. Często zwolennicy przesiadania się z Bascom na C twierdzą, że w tym drugim przypadku można generować krótsze kody. Bascom - Atmega 32. Testowy program pobiera z układu PCF8583 godzinę, minutę i sekundę i wyświetla to na wyświetlaczu LCD. Po skompilowaniu wsad do programatora ma około 900 bajtów. Atmel Studio 6. Optymalizacja...
Koledzy chyba rozwiązałem swój problem..... Więc postanowiłem podłączyć pod ATmega układ PCF8583 i jedno z jedo wyprowadzeń podłącze pod przerwanie Int0 które będzie występowało co 1s niezależnie od taktowania uC i napisanego programu. Co Wy na to, czy to dobre moje rozumowanie????
Dziękuje wszystkim za pomoc a zwłaszcza za wskazanie do nowego sposobu odwołania się do przerwań "ISR". Nigdzie tego nie dało się wyczytać nawet w książkach ;) I dlatego ze był problem z przerwaniem to wyświetlanie było "milion razy na sek" w głównej pętli , bo w przerwaniu nie chciało mi nic pokazać na lcd a po zmianie na ISR DZIALA :) p.s. Tak wogole...
Zobacz na DataSheet atmegi. Atmega ma sprzętowe wspieranie SCL i SDA. Proponuje Ci się zaopatrzyć w książkę "Programowanie mikrokontrolerów w języku bascom." W niej jest wszystko wyjaśnione.
Witam, poniżej zamieszczam kod z Bascoma mojego sterownika BMS, w tej chwili kontroluje temperaturę, czas, Rs232, LCD 2x16. Obsługa z klawiatury lub pilota RC5, w obecnej chwili rozwiajm go o dostęp przez internet. zajmuje ok 8kb pamięci więc w A162 będziesz miał jeszcze drugie tyle pamięci. Ja kożystam z A32 Pozdrawiam. PS. daj znać jak zakończysz...
Podkleję się do tego tematu bo nie ma sensu zakładać kolejnego. Tworze właśnie zegar na atmega i tym PCF'ie i napotkałem na problem. Mianowicie sekundy nie zliczają się kolejno od 1 do 60 tylko wartości przeskakują liczy od 1 do 9 i np. z 9 na 16, z 25 na 32 itp a przy tym PCF zlicza sekundy powyżej 59. Pytanie co może być tego powodem? Czy może to...
Zrobiłem tak jak napisał kolega M.S,troche wstawiania miałem ale działo ok,teraz mam nastepny problem doszedłem do wniosku,że wyswietlacz nie musi byc podswietlany cały czas podczas pracy urządzenia bo po co ma sie swiecic kiedy na niego nie patrze i chce zrobić coś takiego aby sie zapalał kiedy nacisne jeden z 4 przycisków i gasł gdy nie nacisne żadnego...
Witam, ja właśnie dokładnie taką samą konfigurację 2 procków czyli łączyłem Atmega8 oraz Atmega16 po tym właśnie i2cslave w Bascomie i mogę się coś niecoś na ten temat wypowiedzieć.... ... otóż biblioteka ta I2cslave dla softwarowego rozwiązania układu SLAVE w I2C rzeczywiście działa dobrze tak jak jest opisana ale... jest właśnie jedno i to dosyć spore...
Witam Robiłem kiedyś sterownik do bojlera jednak kodu pewnie nie znajdę. Jednak jeśli chcesz robić coś takiego to chętnie pomogę "zdalnie". Wykonanie takiego układu i oprogramowanie go nie jest zadaniem, które przekracza Twoje możliwości. Uważam, że zamiast kopiować wypociny innych możesz sam pokobinować. Co do projektu. Skoro chcesz używać ATMEGA16/32...
No tak, to święta prawda. Do tego Bascom sam z siebie dodaje sporo zbędnych procedur. Najgorszym przykładem jest obsługa LCD - ok 1kb kodu. Ja teraz kończę obsługę I2C Slave bo Bascom oferuje to tylko za dopłatą. Bascom , jest jak ... klucz uniwersalny. Potrafi odkręcić wiele śrubek , ale jest jest duuuuużo większy od np. ósemki oczkowej ;) Tą z kolei...
A jak wyeliminować mruganie w C? Mam multipleksowanie 6 wyświetlaczy LED i obsługę jednego DS'a. Mój kod programu: #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #include <avr/signal.h> // definicje SIGNAL, INTERRUPT #include <avr/interrupt.h> // funkcje sei(), cli() #include "pcf8583.h" #include "kbd.h" u08...
http://obrazki.elektroda.pl/8074733100_1... Witam, Ostatnio wpadła mi w ręce karta VGA sterowana poprzez złącze szeregowe SPI. A a ponieważ w domu poniewiera się kilka starych monitorów VGA to postanowiłem zbudować zegar wyświetlający czas i datę na monitorze VGA (bez udziału PC) Takiego zegarka na elektrodzie chyba jeszcze nie było....
Witam Mam taki problem a mianowicie napisałem program w Bascom na ATmega32 i wszystko jest OK. Teraz zamieniłem procka na ATmega644P i przerobiłem kod pod ATmega644P. Przy Compilowaniu pokazuje Error 90 (za wysoki adres) w tej linijce : Dim Tm(5) As Byte At &H60 . Dodam ze jest to oryginalny program od Bascoma na PCF8583.
Nie działa mi komenda debounce. Pracuje na ATmega 16 Mam podłączone przyciski do uC pod piny A0, A1, A2, A3, A4, A5. Przycisk natomiast jest podłączony pod mase układu. W programie podciągłem rezystory takim sposobem: Set PORTA.0 ............. a program wygląda tak do ...... instrukcje odczytu czasu z PCF8583 instrukcje odczytu z temp. z DS1820 ..........
... lecz nie moge wyslac danych(godziny,daty itp) do pamieci pcfa. Skoro procedura zapisu do PCF-a nie jest wykonywana, to nic dziwnego :idea: czekam na sugestie. Nie nazywaj etykiet, podobnie brzmiącymi nazwami (Settime,Senttime).
Czy na początku programu ustawiłeś magistralę I2C: Config Scl = Portx.x Config Sda = Portx.x I2cinit Pisałem obsługę do zegara na tym układzie. Zobacz tutaj: [url=http://mirley.firlej.org/zegar_nixi...
Witam, Chciałbym zrobić sobie zegarek i nie wiem jaka metoda będzie dokładniejsza: 1. wykorzystując RTC atmegi z kwarcem 32,768kHz (Atmega na 8MHz z RC) 2. zewn kwarc 16 MHz i zrobić to na timerze np 2 Czy też inne wyjścia jak DS1307, PCF8583. Chodzi mi o dokładność Do układy będą też dopinane m.in. DS18B20 (2x) Pozdrawiam.
Witam Wszystkich Jestem początkujący jeśli chodzi o pisanie programów pod avr. Uczę się Bascoma. Mam płytkę testową własnej produkcji. Postanowiłem zgłębić zasadę działania I2C, a dokładnie to spróbować zrobić zegarek na atmega 8 i PCF8583. Niestety nic nie wyświetla się na lcd. Ładowałem też gotowe wsady znalezione na necie i też nic. Komunikacja procka...
Taki zabieg opłaciłby się gdybyś miał w urządzeniu jeszcze jakiś układ na I2C na 5V. W innym wypadku lepiej zmienić zegar bo nawet szkoda miejsca. Jeśli ma być tanio to ten stary PCF8583 do którego kod znajdziesz wszędzie, okazuje się, że działa już od 2,5V :D Inny popularny na 3V3 to DS3231. No chyba że masz czas i miejsce :D
http://obrazki.elektroda.net/86_12667727... Witam, chciałbym pokazać wam dopiero co skończony zegar oparty na uC Atmega8L oraz pcf8583. Zegar pięknie prezentuje się wieczorem oraz w nocy. Wyświetlacz to 6 cyfr 7segmentowych, każdy segment składa się z 5 diod (5mm) w kolorze czerwonym (może to niezbyt czytelnie wygląda w dzień, ale obudowa...
Mastery chyba się nie dogadają ot tak sobie. Trzeba programowo obsłużyć arbitraż. Każdy z tych procesorów ma inny moduł do sprzętowej obsługi I2C. ATtiny2313 ma USI a ATMega TWI. Czyli dla każdego trzeba napisać inny program- nie wiem czy w Bascomie to się da. To jest chyba możliwe ale nie trywialne. Tak jak radził Mirek- podaj założenia co chcesz zrobić....
Mam w projekcie Atmegę128 + PCF8583 + kilka układów I2C (3xADS1110, AT24c1024), dodatkowo dołaczam dwa moduły z Atmega64 każdy. Chcę, aby każdy z mikrokontrolerów odczytywał czas bezpośrednio z PCF8583. Teoretycznie arbitraż jest możliwy, ale u mnie to nie chce prawidłowo działać - zawiesza się komunikacja i programy "stoją". Do testów zostawiłem w...
Na szczęście dla mnie w tym projekcie nie jest istotne czy wpiszę 12 czy 16MHz bo z opóźnień procka praktycznie nie korzystam, więc czy wait 1 będzie trwał 1 sekundę czy 1,2 jest mało ważny, a wszystko co związane z czasem robię na PCF8583 i przerwaniach alarmu. Znaczy pracuję na godzinach i minutach a nie na ms czy us. Projekt dość (zegar PCF8583,...
Witam, Kolejny zegarek oparty o PCF8583 i atmega... Ponadto marnotrawienie energii w rezystorach w układzie zasilania siatek / segmentów. Zasilania żarzenia napieciem stałym to nie jest zbyt dobry pomysł - szczególnie przy długich lampach... Jedyny plus to starannie wykonana obudowa i chęć pisania w asemblerze (popieram - szczególnie programy do 16kB...
Bascoma nie znam więc nie będę się w tym temacie wypowiadał. Natomiast uwaga co do multipleksowania: To nie ma sensu. 1.Nie będziesz mógł uśpić procesora, bo będzie musiał się zajmować odświeżaniem stanu diod. 2.Obniżenie poboru prądu dostajesz z tego, że każda dioda pracuje np. przez 1/10czasu. To samo możesz uzyskać zwiększając odpowiednio rezystor,...
Witam! Mój projekt ma za zadznie sterować komorą chłodniczą z jednoczesnym pomiarem i rejestracją temperatury. Temperatura ma być mierzona w 10 punktach więc wybrałem czujniki dallasa 18b20, zegar czasu rzeczywistego z kalendarzem PCF8583. Zastanawiam się nad atmega a coś z rodziny 8051. Oraz pamięć conajmniej 64kB, powinna wystarczyć na zapis temperatury...
Hm. Pracuję i się uczę, mam trochę mało czasu, ale procek mam, wyświetlacz też, jakiś EEPROM się znajdzie. Ciekawa propozycja. Jak znajdę czas to mogę, co nieco pomajstrować? Nie mam RTC, ale znam jego opis. Mam notę katalogową. Mogę podesłać, ale podaj Emali. A jaki chcesz tam EEPROM, ile KB? I czy próbować wstawić tam algorytmy kompresji danych, Na...
Witam Mam prośbę: poszukuję prostego programiku do odczytywania i ustawiania zegara (godziny, minuty, sek) na układzie PCF 8583, który pracuje na I2C i jest podłączony pod linie SDA i SDL Atmegi32. Chodzi głownie o przetestowanie układu. Język BASCOM. Z góry dziękuje za pomoc :) Pozdrawiam Wojtek
Dzięki za odp i pomoc. Narazie zostawiłem diodę i przyciski i wziąłem się za coś bardziej ambitnego:P Zegarek na RTC. Wiem, że mam w przykładowych programach z EvB, ale co to za radocha z urzywania czyjegoś programu, swój nawet może być 10 razy gorszy ale przynajmniej wiem co jak i doczego... Konkretnie chodzi mi o komunkację przez I2C. Czytałem wiele...
Niedawno robiłem taki zegarek i proponowano mi napisanie progra,owego roku niz korzystanie z tego z pcf-a. Najpierw musisz ustawić 3 bit w rejestrze kontrolnym np tak: Dim B1 As Byte Set B1.3 I2cstart I2cwbyte 162 I2cwbyte 0 I2cwbyte B1 I2cstop Potem żeby ustawić podstawowe wartości musisz je zamienić na kod bcd a następnie wysłać tak: I2cstart I2cwbyte...
No to jak się zastanawiałeś nad tym, to powinieneś zaskoczyć o co chodzi... Po prostu należy najpierw wyłączyć maskowanie roku i dnia tygodnia (więc zamiast 8 do rejestru 0 wpisać wartość 0), potem odczytać cały bajt, zamaskować niepotrzebne bity w danym bajcie: najpierw rok i odczytać dzień miesiąca, potem zamaskować dzień miesiąca i odczytać rok -...
No właśnie chcę żebyś zrozumiał - wiesz jak raz zrozumiesz to potem wszystko będziesz dał radę zrobić sam i chyba satysfakcja też większa ;) Ja też, patrząc na mnie całkiem na zimno, jestem samoukiem ;) Też zaczynałem od różnych pytań - możesz sam sobie poczytać i pośmiać się z moich pierwszych postów na forum. A więc ten rysunek pokazuje poszczególne...
poszukaj na forum znajdziesz listing bez problemu. co do podlaczenia lini SDA(pin5)SCL(pin6) pcf8583 to podlaczasz do dowolnych wolnych lini procesora a w programie deklarujesz to polaczenie za pomoca polecenia : Config Scl = numerpinu Config Sda = numerpinu
Light-I i tu sie myliłeś :) problem rozwiązałem: błąd leżał po stronie zasilania układu, ok 4,3V na caly moduł okazało się za mało, zbyt dużo innych układów w projekcie --- za duże obciążenie zasilacza i procek troche się pokręcił. Problem uważam za rozwiązany.
Witam serdecznie! Mam wielki problem z bascomem i magistralą i²c. Otóż kiedyś, gdy miałem bascoma 1.11.7.7 magistrala i²c działała bez problemów, teraz mam Bascoma 1.11.9.5 i nie mogę się skomunikować z żadnym układem i²c. Zegar i pamięć eeprom w ogóle nie odpowiadają, testowałem na 2 płytkach (jednej własnej konstrukcji, druga BASCOM...
Tak na szybko, nie testowane - nie mam bascoma to co dopisane zmienione oznaczone komentarzem ' ********* dopisane alarm [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 16000000 $hwstack = 64 $swstack = 64 $framesize = 64 $include "Config_PCF8583.bas" Config Lcdpin = Pin , Rs = Portd.2 , E = Portd.3 , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6...
Witam. Standardowe połączenie atmega plus PCF8583, standardowe procedury odczytu i zapisu a mimo to zapis w ogóle nie działa a odczytuje same głupoty. Działanie PCF-a też jest strasznie dziwne. Mianowicie sekundy odlicza normalnie ale dziesiątki sekund zwiększa już gdy jednostki sekund mają wartość 9 a nie 0. Znów gdy dziesiątki sekund mają wskoczyć...
Witam. Dokładnie tak, jak mówi kolega Prodig. Ponieważ nigdy nie używałem Powerdown, więc postanowiłem sprawdzić to wybudzanie. W pętli Do ... Loop było Powerdown i mruganie Ledem, aby sprawdzić, czy układ żyje, a przerwania na Int0 było podawane co 1 sek przez PCF8583. Jeśli w programie (Attiny2313) było: Config Int0 = Rising to program umierał, a...
Witam mam problem z chyba skonfigurowaniem przerwań w "C" do tej pory takie "zabawy" robiłem w bascomie ale tam to każdy potrafi ;) mam przerwanie int0 z pcf8583 w międzyczasie odczytuje temperaturę z ds18b20 no i .. właśnie jak uruchomiłem PWM zaczęły się problemy, układ czasami się resetuje lub zawiesza zacytuje fragmenty: dodam ze pdf czytałem wielokrotnie...
Witam Chciałem zapytać, czy możliwa jest zmiana nazwy pliku w którym zapisują się wyniki - np co dziennie inna nazwa pliku ( np. powiązana z datą ) ? Używam PCF8583 i w sumie mógłbym brać informacje z zmiennych dnia i miesiąca lub dokonywać zmiany o 23:59:59. Używam standardowego kodu do zapisu: Sub Write_to_sd() Local Errorcode As Byte ''()...
https://obrazki.elektroda.pl/6123321900_... Dziś prezentuję tu kolejny element mojego zestawu audio. Jest nim stereofoniczny tuner FM, choć w zasadzie jest to tuner z zegarem, zdecydowałem się bowiem na powiększenie funkcjonalności urządzenia, wbudowując w nim także zegar, dzięki czemu jest możliwość wyświetlenia aktualnego czasu zarówno...
Witam Potrzebuję w ATMEGA8 + PCF8583 ustawić w Bascomie trzy przerwy o dowolnie ustawianej "H" i "M".(czas wyłączenia i czas załączenia) Pierwsza wartość ma spowodować włączenie, druga wyłączenie i tak trzy razy na dobę. Problem polega na tym że jak się uda raz wyłączyć to się nie załącza.
Witam, mam taki problem podłączyłem sobie równolegle na I2C zegar czasu rzeczywistego PCF8583 oraz eeprom 24C16. eeprom ma adres pierwszej strony 160 dla zapisu, dla odczytu 161, kolejne strony to 162/163, 164/165 itd. - łącznie 8 stron pamięci. rtc ma też adres 160/161 ewentualnie 162/163. Początkowo nie zauważyłem, bo jeden adres miałem zapisany szestnastkowo...
Witam. Jak wiadomo tematów na temat tego pcf-a było już pełno. Jednak po przeszukaniu neta tylko jeden temat na forum był prawie taki sam , lecz tamte "posty" nie pomogły mi w moim przypadku , a mianowicie problem mam taki: dla prób pobrałem z neta kod "zegara" (oczywiście w bascomie) , oto on: https://filmy.elektroda.pl/60_1323792711... odłączenie...
Proszę oto ta procedura: Sub Wezczas I2cstart 'odczyt czasu I2cwbyte &HA0 I2cwbyte 2 I2cstart I2cwbyte &HA1 I2crbyte S , Ack I2crbyte M , Ack I2crbyte H , Nack I2cstop S = Makedec(s) M = Makedec(m) H = Makedec(h) End Sub RTC to PCF8583, ale kontrolowana temperatura w porze 1 jest najwyższa. W porze 0 jest niższa i nie zauważyłem...
Może warto koledze udzielić jeszcze kilku przydatnych rad jeśli zaczynasz z AVRami: -Poczytaj o fusebit żeby za pierwszym razem nie zablokować uC. -Warto może koledze wspomnieć ze programowanie tych procków jest mozliwe ISP czyli wystarczy port LPT i programator za 10zł (STK200) lub nieco droższy na USB (USBasp). Jako program do programowania polecam...
http://obrazki.elektroda.pl/8793974300_1... wyszło tak że mam zegarek podłączony do tych dwóch portów - tak wyszło ale mam problem z konfiguracją - BASCOM nieda się ustawić bezpośrednio in/out portu G in->lds out->sts tak trzeba podobno skonfigurować nie działa to Config Portg = &B111111 : Portg = &B111111 Config Scl = Portg.3 Config...
cześć Standartowy program w bascomie. Skoro już tyle tego oprogramowałeś to mam szczerą ochotę wysłać ci ten mój moduł do przetestowania, żeby wykluczyć jego awaryjność. pozdr RafalM
To jest niemożliwe. Jak PCF jest odpowiednio skonfigurowany to po prostu generuje sygnał co 1s. Nie raz a stale- dopóki ma zasilanie. Czy ma podtrzymanie bateryjne i odpowiedni układ diod? Kondensator przy zasilaniu? Za diodami? Późno, jutro do pracy. Daj cały kod- można by go sprawdzić.
Menu dobrze jest zrobić przy użyciu Case . czyli jednym z przycisków wchodzi się do podprogramu Menu i tam przez Case wybiera się parametr, który chcemy zmienić. I odwołanie do programów. Coś w tym stylu - piszę z pamięci, więc mogę coś przekręcić: Do Debounce 0 , Menu, Sub Loop End Sub menu: Do Case 0 Case 1 Locate 1,1 Lcd "Ustaw minuty"...
Witam wszystkich :) Nie będę owijał w bawełnę. Mam problem zapewne banalny ale ja nie potrafię sobie z nim poradzić. A więc zbudowałem układ do obsługi kart pamięci Compact Flasch na bazie mikrokontrolera Atmega162 posiłkując sie serią artykułów z Elektroniki Praktycznej, który rozpoczął się 02/2004r. Układ ten poza pamięcią ma mieć jeszcze wbudowany...
Witam Napisałem program w Bascomie - i w kilku miejscach mam odwołanie do funkcji gettime. Układ pracuje na Atmega1280. Zegar RTC skonfigurowany prawidłowo: [syntax=basic4gl]Config Sda = Portd.1 Config Scl = Portd.0 I2cinit [/syntax] układ podpięty to I2C prawidłowo(zgodnie z dokumentacją) [syntax=basic4gl]Sub Gettime I2cstart 'inicjalizacja magistrali...
Witam wszystkich, mam problem z wyświetlaczem LCD DMF5005N, podczas wyświetlania czegokolwiek na LCD, pojawiają się na nim oprócz poprawnych informacji także śmieci - pojedyncze i podwójne piksele. Program pracuje w pętli - odczyt czasu z PCF8583, a ilość niechcianych pikseli zwiększa się sukcesywnie do pewnego momentu, za każdym razem są to te same...
Co ciekawe, błąd TWI pojawia się tylko przy zapisie do AT24c1024, co ciekawsze - po wystąpieniu błędu i zresetowaniu TWI w atmedze pamięć ta dalej trwa w "zawieszeniu", wystarczy jednak odczytać inny układ na magistrali (np. odczytać czas z PCF8583) i pamięć wraca do życia. Prawdopodobnie robi to warunek STOP.
Tutaj problem polega na tym, że trzeba maskować sekundy, minuty i godziny. W PCF8583, jest to rboione automatycznie.
Dzień tygodnia bez problemu, nawet informacje, czy czas jest letni, czy zimowy. Jeśli na początku na początku podpiąłeś $lib "dcf77.lbx" to zostały zdefiniowane zmienne to w Sectic daje [syntax=basic4gl] Sectic: Strtime = Time$ ' z ciagu czas Bsec = Time(strtime) ' oblicz sekundy Strdate = Date$ ' z ciagu data Bday = Date(strdate) ' oblicz numer dnia...
Witaj! Co masz na myśli mówiąc "jednocześnie"? Masz na myśli immobiliser z termometrem w jednym? :) Ten przykład tutaj działa :) To niewątpliwie, bo kiedyś go uruchomiłem ... z pełnym sukcesem, tak więc musisz próbować :) Albo pisz co jest niejasne, co Ci nie działa, albo jakie masz błędy ... Ja teraz zmagam się z zegarem :) Chcę zrobić zegar ATMEGA8+PCF+właśnie...
Witam. Zmontowałem pewien układ z PCF8583 podłączonym do Atmegi16. Podłączenie jest zrealizowane tak, że SDA w PCF jest podłączone do PD7 w atmedze, natomiast SCL do PD6. Linie podłączyłem poprzez rezystory 4,7k do plusa. A0 podłączone jest do masy. Poniżej przedstawiam fragment kodu w BascomAVR: $regfile = "m16def.dat" $crystal = 8000000...
Cześć, z reguły tak to się robi, że podłączasz odbiornik podczerwieni pod przerwanie. Jeżeli program byś pisał w bascomie to prawdopodobnie musi być podłączone pod PIND.2 Jeżeli obsługę RC5 będziesz robił sam to możesz podłączyć pod dowolne przerwanie. Ogólnie zasilanie takiego odbiornika podłącza się przez filtr RC np 100 ohm szeregowo i 10u elektrolit...
Witam, Nieźle, ale ja nigdy nie byłem fanem BASCOMa. Jutro pokaże Ci kod który robi to samo, ale będzie napisany w C - porównasz kulturę "kodu" i jego zwięzłość. Piszesz, że od niedawana programujesz, dlatego nie mam zamiaru Cię poprawiać. Lecz chcę Cię zachęcić do języka jakim jest C.
Witam! Które się z nich opłaca cenowo jaki i również wyposażeniem. Oto kilka z nich : 1. tylko , że to nie jest Arduino tylko jakieś "Funduino" http://obrazki.elektroda.pl/4484036500_1... MEGA STARTER KIT + UNO R3 Bogaty zestaw startowy dla Arduino + Uno R3 Parametry Funduino UNO R3 - mikroprocesor ATmega328 + Atmega16u2, 100% zgodności...
Gdzie te znaki zapytania? Ja widzę tylko jeden w temacie wiadomości. Dodano po 17 Może znaki zapytania na LCD? To funkcja Makedec robi znaki "?" gdy wartość półbajtu jest z poza zakresu 0..9. Albo PCF8583 ma taką godzinę ustawioną (a może mieć bo nie sprawdza czy minuty są większe od 60, tylko czy równe 60 i dopiero wtedy resetuje. Czyli poprawnie zresetuje...
Włączając maskowanie sprzętowe w pcf wyłączasz możliwość odczytu dnia tygodnia... Musisz to wyłączyć i ręcznie maskować za pomocą And i przy zapisie Or
Bascom nie obsługuje jeszcze sprzętowego I2C :(
Witam, Miałem podobny problem gdy pisałem zegarek w C. Poniformuj kompilator aby nie optymalizował zmiennych których używasz przy odliczaniu czasu. problem jest wynikiem zbyt rzadkiego odświeżania danych pomiedzy rejestrami i pamięcią RAM. Nie wiem czy taka opcja jest w BASCOMie, poszukaj w helpie. pozdr
Może zajżysz tutaj. http://www.elektroda.pl/rtvforum/viewtop... Jest tam źródło w bascomie dla komputerka do Dewoo. Tam chyba znajdziesz to czego ci potrzeba.
Konwersja działa wyśmienicie. Rozwiązanie jakże proste, a skuteczne. Dzięki za pomoc. Swoją drogą, teraz chcę uruchomić DS18S20 na tej Atmedze. Czy macie jakieś gotowce ? Ja w necie szukałem czegokolwiek, ale zazwyczaj kod jest albo w Bascomie, albo w C, tylko że zupełnie nieprzydatny (wykorzystujący "milion" plików nagłówkowych niedostępnych w WinAVR,...
margas4542 --> ogólnie masz rację w przedstawionych tu przemyśleniach. Ale zrozum też , że stawianie w ten sposób pytania "it's madness". Ja bardzo dobrze rozumiem problemy ludzi stawiających pierwsze kroki szczególnie przy nauce języka C. Sam ile mogę to zawsze pomagam. Ale spokojnie, po woli i mniejszymi krokami. Bo ty się wręcz sam dławisz tym co...
Tak na pierwszy rzut oka widać kilka błędów, ale nie mam już dziś siły się rozpisywać... ;) probowalem sam poradzic sobie z tym problemem ale jednak moja wiedza jest jeszcze zbyt uboga w tej materii - bascomem bawie sie od tygodnia dopiero:P moglbys mi konkretnie napisac co nalezy zmienic?? w kodzie odpowiadajacym za zapis zmienilem dwie linijki ale...
Program w Bascomie tak jak tutaj: http://www.elektroda.pl/rtvforum/viewtop... Oczywiście po przystosowaniu do odpowiednich wejść procka. Ogólnie program działa, to chyba raczej coś sprzętowego. A schemat: http://obrazki.elektroda.net/78_11795042...
Dzięki, mam jeszcze pytanie z innej beczki a mianowicie problem z obsługa przerwania. Config Pind.2 = Input Config Int0 = Low Level On Int0 Przerwanie A = 0 F = 0 Enable Interrupts Enable Int0 Do If Ok = 0 Then Waitms 50 If Ok = 0 Then Sound Buzer , 1 , 100000 Set Buzer Gosub Menu End If End If If F = 1 Then Cls Lcd "przerwanie" Wait 1 Cls...
Ty się zastanów co chcesz uzyskać - czy testowy program w celach uczenia się czy też może atomowy wzorzec czasu? ... bo jeśli to drugie to wybrałeś najgorszą z wielu możliwych metod aby zrobić zegarek na procku AVR i to jeszcze na takim jak ATmega32. .... jak chcesz zrobić dokładny zegarek to : 1. Uzyj specyficznych do tego poleceń Bascoma - same załatwią...
Biblioteka I2C_TWI.LIB to biblioteka kompilatora zawierająca kod dla podstawowych instrukcji skojarzonych z obsługą magistrali I2C, wprowadzająca możliwość używania w tym celu zasobów sprzętowych niektórych mikrokontrolerów z rodziny AVR. Domyślnie BASCOM używa procedur programowych gdy w programie znajdują się instrukcje dotyczące magistrali I2C....
Konfiguracja DS1307 [syntax=basic4gl]'############# Konfiguracja DS1307 ############# I2cstart 'zerowanie bitu CH I2cwbyte 209 I2crbyte Pom , Nack I2cstop Pom = Pom And &B01111111 I2cstart I2cwbyte 208 I2cwbyte 0 I2cwbyte Pom I2cstop I2cstart 'wlaczenie przerwania co 1s I2cwbyte 208 I2cwbyte 7 I2cwbyte &B00010000 I2cstop 1wreset 1wwrite &HCC...
Myślałem nad jakim oprogramowaniem się skupić C / assembler / bascom ale jak poczytałem sobie o złożoności C i tym że w bascomie można wstawić fragment kodu s abssemblera ( $asm ) to wybrałem bascoma wiedząc że jest uproszczeony i niema w nim tyle możliwości jak C, Ale ja nie zamierzam robić bardzo skomplikowanych użądzeń gdzie trzba oszczędzać na pamięci,...
Rezystory są już dane na płytce, zresztą zegar na PCF działa bez zarzutu ( no może trochę śpieszy, ale to kwestia kondensatora przy kwarcu ) sprawdziłem połączenia - nóżki 5 czyli SDA ( 24C02 i PCF8583 ) są podłączone do 23 nogi uC, czyli PC1-SDA. Podobnie z SCL. Teraz zrobiłem tak, że odczyt jest po włączeniu/resecie ( przed pętlą główna ), a zapis...
Timery lub lepiej alarm w pcf8583/8563 i przerwanie zewnętrzne
(at)Regan_3000 Czy któraś z sugestii powyżej rozwiązała Twój problem? Mam identyczny problem. (Jestem na Atmedze16/8MHz) Pisze w C, zegar działa poprawnie gdyż obsersuję na oscyloskopie transmisję danych (zauważam zmianę dziesiątek sekund/sekund/minut w bcd na linii SDA), zapewne coś siedzi w kodzie. (PCF8583 podpięcie: SCL,SDA -> przez rezystory...
Witam To, że to bascom to wiadomo ale umiejętność programowania albo inaczej myślenia to zupełnie inna sprawa. Można zrobić menu wykorzystując tylko jeden skok do podprogramu i w nim zrobić wszystko. Załóżmy, że menu to podprogram. Z tego robi się pętlę. W pętli jest np. coś takiego jak wskaźnik pozycji. Naciskając klawisz inkrementujemy to zmienną....
http://obrazki.elektroda.net/52_11939913... Stacja meteo zbudowana na potrzeby domowe, gdyż podobne urządzenia sklepowe z wyświetlaczami lcd są niewidoczne w nocy. Układ zbudowany na dwóch płytkach, wyświetlaczy i sterująca. Wyświetlacze połączone standartowo (segmenty równolegle, oraz osobne wyjścia wspólnych katod). Procesor: atmega 16, 2 x DS18B20,...
Zmieniłem kwarc na 8 MHz - znalazłem informacje, że SD na 16 MHz nie działa. Dodałem linie ( chciałem ręcznie wyzwalać zapis ) Config Portb.1 = Input Reset Portb.1 Manual Alias Portb.1 If Manual = 0 Then Call Write_to_sd() End If Jeśli usunę te linie to znowu nic się nie zapisuje. Efekt jest taki, że zapisuje co sekundę ( oczywiście na zmianę...
To dobrze własnie widać róznice między danymi producenta a rzeczywistością. Bez tych kondestatorów PCF8583 źle odmierzał czas a to własnie było na tych zaleceniach producenta. Wsatawiłem kondestator i problem zniknął.
Osobiście zdarzyło mi się popełnić kilka różnych czasomierzy na PCF'ie, zarówno we współpracy z 89xx51 jak i AVR'kami - piszę w bascomie. Uwaga co do maskowania niewykorzystanych bitów w odczytanym bajcie jest bardzo zasadna. Uwzględniając brak wiedzy na temat faktycznej zawartości rejestru z którego potrzebuję tylko połowy bitów stosuję maskowanie...
atmega pcf8583 pcf8583 atmega bascom pcf8583
czyszczenie lasera drukarka wgranie języka polskiego generator szumu
miele w5877 samsung zmiana regionu
Jak wymienić pasek silnika w suszarce LG? Ciemny ekran w Audi A3 2022 - przyczyny i rozwiązania