Proszę. Jest to przykład zapisu i odczytu zarówno zwykłych bajtów jak też łańcuchów tekstowych inaczej mówiąc napisów w Eeprom. Program i funkcje działają z małymi pamięciami których adresacja mieści się w jednym bajcie. Do tego przykładu użyłem 24C04 Jeśli ktoś chce to może po prostu wpisać sobie jakieś dane do buff(1), Buff(2) itd i tak zapisać. Potem...
Witam. Jak zapisuje się dane do eeprom w avrgcc? W bascomie wystarczyło zadeklarować zmienną jako zmienna typu ERAM, później zapis w programie wyglądał tak: zmienna_eeprom = zmienna analogicznie odczyt: zmienna=zmienna_eeprom Czy da się posługiwać zmiennymi tak jak powyżej w avrgcc? Wiem, że można użyć min.: eeprom_write_byte ( *adres, val) - zapisuje...
Trochę to może zagmatwane co napiszę. Potrzebuję zrobić sub-rutynę w której chciałbym użyć Readeeprom do której chciałbym podawać adresy do odczytu z Eeprom poprzez parametr. Czy w Bascomie 2.0.5.0 tak można ? Poniżej przykladowy kod jaki chciałbym uzyskać: [syntax=basic4gl]$eeprom Data 0 ' zerowy bajt może zostać wyzerowany Poczatek: Data "0791" 'początek...
Witam. Proszę o zerknięcie na kod i wytknięcie błędów programistycznych. Wiem, że większość z Was nie "uważa" języka Bascom, ale na razie tylko to umiem, więc tego proszę się nie czepiać. Kod jest oprogramowaniem sterownika akwarystycznego, który działa sprawnie już jakiś czas. Mistrzem w programowaniu nie jestem i wiem, że to i owo można było rozwiązać...
Witam :cry: Po tygodniu walki z tym problemem postanowiłem poradzić się fachowców, więc piszę. Problem polega na tym, ze po wysłaniu całej zawartości AT24C64A dostaję kilka danych mniej. (Zamiast upragnionych 8192 dostaję np: 8190 , 8180 , 8080! ostatni pomiar) kilka razy dostałem całą paczę ale to musi być pewne i nie zawodne. Pracuję na oscylatorze...
Witam. Walczę z obsługą magistrali I2C łączącej procesor Atmega324p i czujnik DS1624. Chcę zapisać na karcie SD póki co dwa surowe bajty z rejestru temperatury, jednak prawie za każdym razem otrzymuję wynik 255, czyli same jedynki w bajcie. Piszę "prawie", gdyż przy ostatniej próbie z jakiegoś powodu była to liczba 151. Podobny efekt daje próba zapisu...
Witam podaję kod, który działa poprawnie, oczywiście należy go dopasować do swoich potrzeb. [syntax=vbnet] 'Sterownik swiatel V2.2 '10-06-2015 'Roman Biadała $regfile = "m128def.dat" $crystal = 11059200 '$lib "fp_trig.lbx" '******** Ustawienia portów ****************************************... '******** Sterowanie 74HC541 - przekaźniki *************************************...
przepisałem troche swój programik udaje mi sie wyświetlić jedną zmienną.Chciałbym natomiast o poradę jeżeli odczytam pierwszą zmienną to jak odczytać następnie z tej samej klawiatury.Jeżeli zmienną A1 zapiszę sobie w pamięci eeprom to chciałbym przejść do odczytu zmiennej A2 bez ruszania zmiennej A1.Nie oczekuję gotowego rozwiązania tylko porady jak...
Witam, Przymierzam sie do budowy małego sendera UKF i koderem rds i stereo w celach dydaktycznych. Znalazłem program do obsługi syntezera na saa1057 na ATMEGA8 i mam małe pytanie. Jak zmienić program żeby na wyświetlaczu wyświetlał mi częstotliwość w podanym formacie XX,XX MHZ w tej chwili wyświetla XX,XXX,X MHZ, jak ograniczyć pasmo działania syntezy...
Witam Chciałem zrobić zabezpieczenie przed rozładowaniem akumulatora ( 12V/65Ah ) zasilającego moje halogeny LED nad biurkiem. Woltomierz na PCF8591 działa ok, nawet dodanie warunku określającego reakcję na spadek poniżej ustawionego napięcia również ( chwilowo jest tam tranzystor FET sterujący paskiem LED ). Chciałbym, aby układ po osiągnięciu zbyt...
Hej wszystkim. Pytanie moje dotyczy przechowywania kilku zmiennych w pamięci ulotnej i ewentualny zapis wartości tych zmiennych do EEPROM w określonym momencie. Program napisany w Bascom i póki co nie mam ochoty przerzucać go do C więc muszę rozwiązać to na aktualnym etapie Otóż mam sobie 3 zmienne: [syntax=vbnet]Dim Czas_sekundy As Byte Dim Czas_minuty...
Witam serdecznie Jest to pojekt z tego linku: I stamtąd też pochodzi kod, zmodyfikowałem jedynie maksymalną temperaturę zadaną z 30 do 99. [syntax=vbnet] '***************************************... '#######################################... '# # '# Autor: klops_mops # '# Kontakt: wojtek.gb(at)gmail.com # '# GG: 4925733...
Witam, zrealizowałem program oraz układ który wyświetla napisy na czterech wyświetlaczach 7-segmentowych. W programie napisy chciałem umieścić w pamięci eeprom a następnie z niej odczytywać. Niestety po załadowaniu programu układ działa tak że zapalają się wszystkie wyświetlacze (bo na początku są wszystkie zapalone - wyświetlacze 7 seg ze wspólna anoda)...
Witam. Progamując nie korzystałem z EEPROM, a jeśli już to z zapisu i odczytu i to w bascomie. Tam sprawa jest prosta 2 komendy. Pisząć w asemblerze na AVR chciałbym aby program pobierał dane z pamięci EEPROM. Zdeklarowałem w pamięci EEPROM miejsce od którego mają być dane zapisywane. Następnie muszę wpisać dane - tylko nie wiem w jaki sposób to umieścić...
Dzięki za pozdrowienia i za odpowiedź . A co do układu to jest automat do pokoju i ma sterować światłem rgb , halogenami , klawiatura umieszczona we włączniku+ dioda rgb ma sygnalizować jaka funkcja światła zostanie zmieniona , odczytać i zapisać i2c to zadanie dla attiny2313 . A atmega8 ma wyświetlać na wyświetlaczu co jest obecnie za funkcja , pobierać...
Jakby co to całość programu znajduje się $regfile = "2313DEF.dat" $crystal = 10000000 Dim Eaddress As Eram Byte At 2 'adres pilota Rc5, zosatał umieszczony pod adresem 2 gdyż z doswiadczenia wiem, że komórki 0 i 1(szczególnie 0) pamięci EEPROM potrafią się skasować przy nagłych skokach napięcia zasilania Dim Epamiec(16) As...
Witam, przeszukuje internet w tę i nazad ale nie mogę doszukać się w jaki sposób odczytać ID karty elektronicznej, np. telefonicznej TP, albo kredytowej. Z tego co wyczytałem to ID karty to 8 pierwszych bajtów karty, więc trzeba je odczytać. Również czytałem, że karty są różne, takie bedącą samą pamiecią EEPROM, albo takie z mikrokontrolerem.. Czy sposób...
Witam Mam program, który, po dokonaniu pomiarów, wysyła dane przez RFM12 i zapisuje na karcie SD. Chcę dołożyć wysyłanie danych do Domoticz po każdym pomiarze. Problem w tym, że po dopisaniu obsługi ESP8266 i Domoticz ( zmienne miałem już wcześniej zadeklarowane ) to pojawiają się błędy w zapisie na karcie SD. No i wysyłanie do Domoticz przestaje działać,...
Bascom AVR na pewno potrafi sobie poradzić z konwersją przy zapisie i odczycie do/z eeprom. Nie wiem jak '51
Witam, proszę o modyfikację mojego programiku, gdyż staram się zrozumieć sposób zapisu i odczytu w większych eepromach niż 24C04 a to co jest opisane w samplu i2c.bas to zbyt enigmatyczne (używam 24c32 do tych testów) Chciałbym, aby programik zapisał mi w pamięci wartość 12345 ze zmiennej A a następnie odczytał mi to i podał na wyświetlacz. Przy zmiennej...
Witam, Ok kilku lat uczę się programowania w C++ i od jakichś 6-8 miesięcy w Bascomie. Zauważyłem iż w Bascomie nie ma czegoś takiego jak funkcje i nie wiem czy istnieje coś w stylu zmiennej lokalnej ? Jeśli nie to jak rozwiązać taki problem: Żeby było łatwiej załóżmy, że pisze program na Atmege która ma tylko 20 Bajtów pamięci (będzie łatwiej pokazać...
Jeśli masz wystarczającą ilość pamięci EEPROM to nie ma problemu. Dowolny tekst umieścisz w niej stosując char EEMEM []="tekst"; Analogicznie do tekstów umieszczonych za pomocą atrybutu PROGMEM, musisz do odczytu zastosować odpowiednią funkcję z eeprom.h.
Witam Mam następujący problem: używając polecenia $eeprom lub $eepromhex tworzę pliki z wartościami które chcę wgrać do eeprom problem jest w tym, że podczas kompilacji w tych plikach nie są zapisywane poprawnie wartości np 500 (zmienne integer). Po przejrzeniu skompilowanych plików widać, że zapisywany jest tylko młodszy bajt. Natomiast w samym programie...
Tu masz przykład odbierania tekstu po RS-232 w Bascomie: [syntax=basic4gl]$regfile = "attiny2313.dat" $crystal = 8000000 $baud = 19200 Const Maxlen = 40 'Deklaracje stalych Dim Akey As Byte 'Deklaracje zmiennych Dim I As Byte Dim Pwm As Integer Dim Cmd As String * 4 Dim Buffer As String * Maxlen Dim E As Eram String * Maxlen I = 0 Config Pinb.2 = Output...
[syntax=basic4gl] Dim A as byte Dim A_ee as Eram Byte at 1 Readeeprom A , 1 If A = 255 then 'nowy procesor B = 12 ' przykladowa wartosc "12" wpisana do zmiennej temperatura=0 'przykładowa zmienna A=1 writeeeprom a,1 else writeeeprom B,2 'odczyt z eeprom wartości po edycji w programie writeeeprom temperatura,3 end if Do ' tu reszta programu Loop End...
Witam Mam płytkę Loggera GPS + SD + PCF8563. Jeśli chodzi o GPS i zapis na SD wszytko jest OK. Problemem jest ( i to pierwszy raz się z czymś takim stykam ) odczyt danych z z układu PCF8563. Otóż dla pewnych wartości sekund, odczytana wartość czasu - godziny jest większa o 40 ( czterdzieści ). Czyli jeśli czas jest 22:40:02 to jest wyświetlany poprawnie,...
Witam Odczytuję wartości z przetwornika PCF8591p ( byte 0 - 255 ) Chciałbym wynik wyświetlać i zapisywać w procentach. [syntax=vbnet] Dim Odczyt_1 As Byte Dim Odczyt_2 As Byte Dim Odczyt_3 As Byte Dim Odczyt_4 As Byte Dim Jasnosc As Byte Dim Deszcz As Byte Dim Mnozenie_1 As Single Mnozenie_1 = Odczyt_2 * 100 Deszcz = Mnozenie_1 / 255 Mnozenie_1 = Odczyt_4...
Witam. Ostatnio walczę z odczytem danych z zewnętrznej pamięci eeprom. Symuluje sobie program, dodam, że program napisany w bascomie działa poprawnie, ale w C to już nie chce. Pamięć jaką symuluję to 24AA64, czyli jest ona zgodna z atmelowską. Próbowałem już na prawdę różnych rzeczy dawałem ACK i bez ACK. Kombinowałem z opóźnieniami, ale nic. Zegar...
google naprawde nie gryzie : $regfile = "m128def.dat" $crystal = 14745000 $baud = 115200 'set the baud rate for the first hardware UART. $baud1 = 9600 'set the baud rate for the second hardware UART. Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Config Com2 = Dummy , Synchrone = 0 , Parity...
Witam. Mam problem z prawidłowym odczytywaniem danych z eepromu atmega 8. Dzieje się to po kilkunastu startach procesora, zamiast np. 90 wskakuje mi 10 lub inne głupoty... do procka mam podłączony kwarc 8MHz z każdego +5V 100nF, reset podciągnięty do +5V przez 5,1k i kondensator 100nF do masy, fusy mam ustawione na CKOP = 0 , kwarc zewnętrzny czyli...
W jakim Bascom? Jakiego pliku na PC?? Bascom to język programowania procesora, a jedyne co procesor potrafi to skomunikować się z PC. Po stronie PC musi stać drugi program i to wcale nie napisany w Bascom (Delphi, C, VB, itp.). Jeden program odpowiada za odczyt pliku i wysyłkę danych (ten na PC), drugi (ten w AVR) za przyjęcie danych i ich zapis w eeprom.
Witam! Z racji tego że nie można tworzyć tablic wielowymarowych w Bascomie proszę o pomoc w rozwiązaniu mojego problemu. Potrzebuje (w sterowniku czasowym - tygodniowym) przypisać do 10 czasów załączania i wyłaczania oraz sterowania dla każdego dnia tygodnia. Nie mama pojecia jak to rozwiązać. Z grubsza do pamięci eeprom musze zapisać: Bit_X, D_tyg,...
e marcus Chciałbym trochę zrozumieć zasadę działanie programu a nie na sucho przepisać program. Dlatego proszę o podpowiedzi , abym sukcesywnie sam rozwiązał problem ale dzięki waszej pomocy.......... Kierując twoją uwagę do tamtej dyskusji j.w., nie miałem na myśli kopiowania programu, który i tak wymaga pewnej korrekty, ale na przeanalizowanie możliwości...
Witak chciałem skorzystać z pamięci 24C32N umieszczonej ns ds3231 i nie chce mi działać Napisałem prosty programik i wyświetla mi cały czas 255 skanowałem I2C i wyszłomi że adres &HAE to adres tej pamięci $regfile = "m328pdef.dat" $crystal = 16000000 Config Scl = Portc.5 Config Sda = Portc.4 Config Twi =400000 I2cinit $lib "glcdSH1106-I2C.lib"...
To jest taki moj patent. Rownolegle do tej centralki mam zalozone sterowanie z domu poprzez I2C jak rowniez odbiornik radiowy na pilota, a zapis do eeproma jest tylko w momencie nacisniecia przycisku pilota (czyli to w moim przypadku bedzie do 10 razy dziennie). Zrobilem to po to aby miec podglad w domu na panelu w jakim trybie pracuje brama (czy sie...
witajcie!! Problem wyglada tak: mam 24c08 i zapakowalem do niego plik: FFFFFF070707070F0F1F7FFFFF00FFFFFF3F1F0F... 03030303C3C3C3C3C38303030383C3C3C3830303... 3C3C3C38303C3C3030303C3C303030303FFFF000... 00080C0FFFF00FFFFFF8000000000000000FFFFF... 070793F1F001F3F7070703F1F00007F7F6060600...
Witam musze zrobic programator pamieci EEPROM 24c16 w bascomie , ale mam pewien problrem . mianowicie programator musialby byc slavem bo musze programowac pamiec w systemie w kturym jest jeden master oraz pamuiec slave . czy majac biblioteke i2cslave.lib i avr - a jako slave a czy muglbym wysylac komendy do zaprogramowania pamieci , master po wlaczeniu...
chcę zrobić tablicę z nazwami dni tygodnia do kalendarza. deklaruję dim tablica(7) as string * 12 tam powinno mi się to zmieścić, potem robię tablica: data "poniedziałek", "wtorek" ..... itd przy próbie wyświetlenia lcd tablica(x) mam tylko 11 zaciemnionych kostek . czy trzeba wpisywać do tablicy kody ASCI dla każdej literki ? jak to zrobić , żeby działało....
Witam. No to już krok do przodu. Widzę, że używasz Mega8535 - w starym AT908535 był znany przypadek utraty danych z EEPROM - zwłaszcza z komórki o adresie 0, a tam właśnie przechowujesz zmienną SPEED1. Właśnie - przechowujesz, ale również zapisujesz. W dokumentacji Mega8535 jest opisane, w jakich przypadkach mogą wystąpić błędy związane z zapisem/odczytem...
Dzięki, śmiga programik - kluczowanie PWM z częstotliwością ~31kHz a wyjście jest na pinie 14, jakby ktoś chciał wiedzieć: $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 19200 Const Maxlen = 40 'Deklaracje stalych Dim Akey As Byte 'Deklaracje zmiennych Dim I As Byte Dim Cmd As String * 4 Dim Buffer As String * Maxlen Dim E As Eram...
Witam, W moim programie umieściłem dane typu LONG w pamięci EEPROM $eeprom 'dane do zapisania w EEPROMie Data 0 ' nie uzywany bajt Tab_czas1: Data 0& , 1& , 2& , 60& , 61& , 75& , 1275& , 1455& , 1456& , 1457& , 2000& , 2001& , 2002& , 2060& , 2061& , 2075& Data 3275& , 3455& , 3456& , 3457& , 4000& , 4001& , 4002& , 4060& , 4061& , 4075& , 5275&...
Ponownie chciałbym zwrócić się do kolegów z prośbą o pomoc. Chcę zrobić rejestrator czasu, zdarzeń występujących na przerwaniu. Układ miałby zapisywać do pamięci eeprom datę i godzinę wystąpienia zdarzenia. czyli zmienne _mies, _dzień, _godz, _minuta Myślę sobie tak. Skoro mam serie danych składającą się z czterech zmiennych więc muszę zarezerwować...
1. Nie za bardzo ogarniam tablice. 2. Chcę odczytać z eepromu sygnał wysłany przez pilota. To ma być taka imitacja oscyloskopu (bo go nie mam). Gdy zobaczę sygnał z mojego pilota to może będę mógł napisać obsługę rc6 czy coś takiego. Ogólnie ten program co tu wstawiłem miał wyjść prosto i szybko, ale w czymś utknąłem. Dobra, może jednak nie będę potrzebował...
Tak wczytanie do eeproma dzięki $eepromhex już działa poprawnie - dzięki. Ale dlaczego po próbie zapisu i odczytu zmiennej ( debounce dla pind.0 i 1) Układ się resetuje - tak mniemam bo licznik "ekran" nagle liczy od 0. Próbowałem wpisywać poprzez readeeprom i writeeeprom i to samo restart. Coś źle robię ? Pozdr. Rafał
Udało mi się trochę odchudzić program. Wykorzystałem tablice + inkrementacja numeru komórki w tablicy. Chciałem wykorzystać FOR - NEXT, ale coś nie działa jak trzeba Do Locate 1 , 1 Lcd A Locate 1 , 7 Lcd B Locate 2 , 1 Lcd C Locate 2 , 7 Lcd D Locate 1 , 13 Lcd E Locate 1 , 19 Lcd F 'If Szukaj = 0 Then Call Przeszukaj_i2c 'End If Loop End '***********************...
Opis jak zapisywać i odczytywać zmienne typu long do pamięci FRAM/EEPROM 24C04 //Adres zapisu i odczytu Const Addressw = &B10100000 Const Addressr = &B10100001 //Inicjujemy I2C Config I2cdelay = 10 Config Scl = Portc.0 Config Sda = Portc.1 I2cini t //Definicja zmiennej typu long Dim Mylong As Long //Odwołanie się do poszczególnych bitów zmiennej long...
Temat rozwiązany.Jak się okazało błąd był bardzo prosty.W listingu który odczytuje wszystkie parametry po kolei pomiędzy dzientygodnia a ACK nie było przecinka.Co ciekawe Bascom nie zgłaszał błędu.Wpadłem na to przy nauce zapisu i odczytu pamięci EEPROM która jest na tym samym module co zegar.Reasumując przy odczycie po I2C pomiędzy parametrem odczytywanym...
Witam Piszę program w Bascomie na Atmega32 do sterowania ogrzewaniem w warsztacie i mam problem. Jest zegar RTC, zewnętrzny Ram, Timer, Menu i to wszystko działa bez zarzutu - dokładnie tak jak bym chciał. Chciałem dołożyć czujnik temperatury i wykorzystać do tego celu wejście ADC. Problem pojawia się w momencie jak w podmenu "Start_webasto" dodaję...
Witam, Ważna uwaga: typ long jest całkowity, nie ma części ułamkowej, trzeba użyć single lub double. Mała wskazówka z helpów (polski ubogi pełny po angielsku w programie) Pamięć ERAM. Większość procesorów serii AVR posiada wbudowaną pamięć EEPROM. Pamięć ta może przechowywać dane nawet po wyłączeniu zasilania. Jak podaje producent nawet do 10 lat. Pamięć...
Więc wiadomo już jaki to język, oczywiście bascom. Jest wykorzystywana taka sama zmienna ponieważ dane typu byte, zmienna startuje od 1 i index w tablicy pokrywa się z adresem eepromu. Bez problemu odczytuję dane z eepromu (oczywiście poza pętlą) więc eeprom na pewno jest :). Racja jest coś o tym w helpie, ale jakoś nie bardzo rozumiem dlaczego działa...
procedurka odczytu temp. i nap. z ds 2438 Sub Ds2438 Bd(1) = 255 1wreset 1wwrite &H55 1wwrite Rom(i) , 8 1wwrite &H4E 1wwrite &H00 1wwrite Bd(1) , 8 'wpis ustawien 1wreset 1wwrite &H55 1wwrite Rom(i) , 8 1wwrite &HB4 'konwersja V 1wreset 1wwrite &H55 1wwrite Rom(i) , 8 1wwrite &HB8 'zapis do eeproma 1wwrite &H00...
Widze ze kolega ma jeszcze bledsze pojecie o tym czujniku niz ja, polecenie przepisania notatnika do eepromu to Copy Scratchpad 48h Druga sprawa w notce aplikacyjnej nic nie pisze ze musze wysylac wszystkie 3 bajty ... pytanie czy rzeczywiscie nie musze ?! Jezeli ktos przeprowadzil udane doswiadczenia z zapisem i odczytem eproma DS18B20 w Bascomie to...
Witam szukałem ,próbowałem i nie mogę dojść jaka powinna być prawidłowa metoda. Otóż tak mam do wyświetlenia grafikę którą umieszczam poleceniem $eeprom w wewnętrznej pamięci. problem mam z tym ze nie wiem jak ja odczytać. readeeprom wymaga podania adresu z którego odczytuje z danej grafiki readeeprom adres , grafika ale jak zrobić żeby mi wczytało...
Nie znam bascoma, ale po tym co piszesz problem masz natury błędnego podejścia. Jak zabierzesz jeden czujnik to oczywiste jest, że urządzenie przy 1wire search zwróci czujniki w innej kolej kolejności. Np jak zabrałeś czujnik zwracany jako pierwszy (z "najmniejszym" numer seryjnym) to drugi czujnik stanie się pierwszym. Masz 2 wyjścia: - zapmiętać numery...
Witam, jeszcze proszę praktyczne rozwiązanie takiego problemu, gdyż program jest praktycznie ukończony, ewentualnie drobne poprawki kosmetyczne:), ale w obecnej wersji odczyt i zapis wykonywany jest z poleceniem "wait", przez co wskazywane temperatury nie są czasem poprawne - wyskakuje BRAK ds'a. Już nie mam pomysłu jak to zrobić, proszę tylko o jakieś...
Witam! problem jest tego typu, że ten program nie działa $regfile "m8def.dat" $crystal = 1000000 $eeprom Data 60 , 50 , 40 , 30 , 29 , 28 , 27 , 26 , Data 25 , 24 , 23 , 22 , 21 , 20 , 19 , 18 , Data 17 , 16 , 15 , 14 , 13 , 12 , 11 , 10 , Data 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 Dim Volum As Byte Dim List As Byte Config Scl = Portc.5 Config...
Witam Chciałbym skonsultować temat. Adesy i komendy klawiszy w kodzie RC5 mam zamiar przechowywać we wbudowanej eeprom mikrokontrolera Atmega16. Czy (po odebraniu kodu RC5) w celu porównania odwoływać się za każdym razem do danej zawaetej w EEPROM (oszczędność pamięci ram, krótszy, łatwiejszy kod, ale za to częsty odczyt pamięci EEPROM) czy stworzyć...
Witam Temat na czasie, bo nocy była zmiana czasu. Niestety u mnie nie zadziałało ja trzeba. Przed uruchomieniem programu odczytuje z EEPROM zawartość komórki W pętli głównej na początku programu sprawdzam stan bitu [syntax=vbnet] Do '******* zmiana na czas zimowy If Zmiana_czasu = 0 Then If Lato_zima = 0 Then Decr Godziny Gosub Settime_pcf Zmiana_czasu...
W wywołaniach masz odwołania do main3 i main4 których nie ma w kodzie. Nie ma gdyż one są prawie identyczne jak te wyżej. Różnica polega na innych zawartościach rejestrów DDRD i PORTD. Napisałem o tym w pierwszym poście: Zamieszczam fragment programu: W całości program składa się z 4 pętli (zamieściłem tylko dwie, żeby zobrazować jak to ma działać)....
Tzn. wiem, że zmienna typu bajt nie może być większa niż 255, ale zapomniałem, że nie robi się operacji na różnych typach zmiennych razem [syntax=vbnet] Solar_mid_mod_temp = Solar_mid_mod_temp \ 2 ' srednia z dwoch czujnikow = 283 [/syntax] co prawda przekracza 255, ale wynik z dzielenia przez 10 i Modulo 10 już nie, czyli 28 i 3 [syntax=vbnet] Solar_mid_dec...
Możesz podpiąć jakąś zewnętrzną pamiątke, z której tego typu pierdoły byłyby odczytywane, siakiś eeprom, DataFlash, albo karta pamięci niewielkiej pojemności, łatwa do obsłużenia i prawie za darmo na allegro :) Poza tym wtedy mógłbyś zmieniać fonty, intra itp. bez większego problemu! A jeśli wolno doradzić, to najpierw zrób właściwy program, a potem...
Mniejsza o to jak są wywoływane procedury , Ten kod działa , ciekawe że nie bardzo wiem dzlaczego wcześniej nie działał - zmieniłem tylko I2cdelay z 10 na 5 $regfile = "m32def.dat" $crystal = 11059200 $lib "i2c.lbx" $lib "i2c_twi.lbx" Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 ,...
witam! chce zrobić zapis do pamićcie eeprom 24c512 "podobno są takie" Chodzi konkretnie o to aby zapisywać ciąg znaków takich jak: R260120071330100 na końcu tego stringu będzie znak powortu karetki enter Z260120071345100 na koncu tego stringu będzie znak powortu karetki enter ale ten enter nie jest tak ważny jak to żeby mi te dane program napisamy w...
Po wlaczeniu funkcji MUTE na calym wyswietlaczu zostaje wyswietlony tan napis kilkakrotnie. Czy mozna zmienic jakos kod programu aby ten napis byl wyswietlony tylko raz i na srodku?? Kod: $large Config Lcd = 16 * 2 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Sda = P3.1 Config Scl = P3.0 Dim Licz As Byte Dim I As Byte Dim Nast(5) As Byte...
Witam, nie mogę nigdzie znaleźć jak odczytać zawartość pamięci eeprom 24C02/04/16/64. Interesuje mnie odczyt i wyświetlenie zawartości na lcd 2*16, przewijanie(góra, dół, pauza).
Zły pomysł... Tak można czytać z eeprom a wpętli... nie, NIEMOŻNA pisać do eeproma w pętli. (skońoczna liczba zapisów). Przy starcie systemu odczytaj z eeproma do jakiejś zmiennej ustawienia (zmiennych) i porównuj następnie z nimi... Łukasz. P.S. Odczyt jest dużo szybszy niż 1sekunda... DUŻO SZYBSZY. Łukasz.
Nie. Lecz ktoś mniej rozgarnięty zobaczy przykład, zacznie operować zmiennymi w EEPROMie w pętli Do Loop a później napisze temat, że procesor odczytuje niepoprawnie zmienne z EEPROMu. Wiem, że to będzie jego wina bo jak się coś robi to trzeba wiedzieć co i raczej oczywistym jest, że EEPROM ma ograniczoną liczbę zapisu jednak jeżeli podaje się przykład...
Stos OK. Mówię Ci. Skasuj flagę przed "Enable INT1". Generalnie kolejność mam w kodzie taką: Config Int0 = Falling 'opadajace zbocze wywoluje przerwanie Config Int1 = Falling 'opadajace zbocze wywoluje przerwanie Config Timer0 = Timer , Prescale = 8 'konfiguracja Timer0 jako timera z preskalerem przez 8 'Przerwanie od przepelnienia Timer0 jest generowane...
Niestety, zmiana operatora dzielenia nic nie dało, zastosowanie High I Low także (troszkę inne "kwiatki" ale w tych samych adresach). $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2 Config Sda = Portc.5 Config Scl...
Witam. Szukałam już tutaj na forum i na google, ale nie znalazłam odpowiedzi na moje pytanie. Otóż mam zrobić na zaliczenie projekt termometru 20xDS18b20 z zapisem numerów ID czujników do EEPROM-u. Następnie chciałabym przy pomocy tych numerów ID zapisanych w EEPROM komunikować się z wybranym przeze mnie czujnikiem w celu odczytu temperatury. Na razie...
Witam, przeszukałem już cały portal i nie znalazłem odpowiedzi. mam kod obsługi 3 x DS18X20 z numerami układów zapisanymi w EEPROM i jeżeli chcę odczytać właściwy ROM to muszę użyć sekwencji jak w kodzie w sekcji 1 (bez skoku do podprogramu) 'program odczytujący obecność układów 1WIRE i sprawdzający ROMy z EEPROM $regfile = "attiny2313.dat"...
Witam Chciałbym zapisywać liczby z zakresu 200 - 400 w pamięci EEPROM 24C02. Mam zestaw EVB4.3 i tam pamięć ma nogi A1, A2 do +5V, A0 do GND. Na początek chciałem ustalić, czy dobrze obliczyłem adres - korzystając z Datasheet'a - strona 11 1 0 1 0 A2 A1 A0 R/W R/W R- 0, W -1 1 0 1 0 1 1 0 0 odczyt 172 1 0 1 0 1 1 0 1 zapis 173 Czy organizacja pamięci...
Witam. Jaki jest poprawny sposób zapisu / odczytu danych do pamięci EEPROM typu 24cXX ? W Sub Read_eeprom(adres As Byte, Value As Byte) I2cstart I2cwbyte 160 I2cwbyte Adres I2cstart I2cwbyte 161 I2crbyte Test, 9 I2cstop End Sub Sub Write_eeprom(adres As Byte, Value As Byte) I2cstart I2cwbyte 160 I2cwbyte Adres I2cwbyte Value I2cstop...
Czy jak w Bascomie Avr, zapisuję zmienną X do pamięci EEPROM, to muszę wyłączyć przerwania. ? Bo to wygląda tak , że kręci się pętla główna Do...Loop. Jeżeli w tej pętli zostanie wykryta zmiana stanu zmiennej, to jest nowa wartość wpisywana do pamięci. Dodatkowo działa Timer0 do obsługi wyświetlaczy, przerwanie co 4ms Jeżeli w czasie zapisu do pamięci,...
To tylko literówka poprawiłem, ale w dalszym ciągu nie ma możliwości zapisu. Po starcie obie diody są zgaszone, zapalam je przez rs232 próbuję zapisać przyciskiem PD.7 i resetuje. Po uruchomieniu powinny być włączone jeśli udało się zapisać /odczytać eeprom niestety są wygaszone.
Witam, Mam problem z programatorem usbisp, w bascomie wybieram usb-isp programer, podaczas próby programowania wyskakuje błąd usb programer not found. Dawno nie korzystałem z tego programatora i bascom, myślałem, że może coś padło, jednak w progisp 1.72 normalnie działa odczyt flash i bufor jest widoczny, wiec zakładam, że sprzętowo wszystko jest w...
Witam. Chciałem się pobawić eepromem i zaserwowałem sobie taką zabawę, że hej. Mam problem z odczytem. Najlepiej wkleję troszkę kodu. clr r16 ldi r16, (1 << TWPS0) out TWSR, r16 ldi r16, 12 out TWBR, R16 sbi PORTC, PC5 sbi PORTC, PC4 rcall twi_start rcall twi_set_write ldi TWI_REGISTER, 0x50 rcall twi_send_device_address ldi r17, 0x00...
Witam mam takowy problem. Niewiem dlaczego odczyt eepromu nie może odbywać się w petli do loop. Może ktoś mnie oświecić? Jeżeli zapisuje i odczytuje w ten sposób jest ok: Dim Eskret As Eram Byte At 1 Eskret = 12 Dim Egaz As Eram Byte At 2 Egaz = 26 Dim Skret As Byte Skret = 0 Dim Gaz As Byte Gaz = 0 Readeeprom Skret , 1 Readeeprom Gaz , 2 Cls Locate...
Sporo tego ( obsługa SD, PCF8563 + menu do ustawiania daty, obsługa PCF8574 w przerwaniu INT1 )- ale nie ma problemu - zmieniła się tylko zawartość podprogramu Pomiar była taka, jak w pierwszym poście oraz wyłączyłem w wyświetlanie na LCD tych wartości wskazań z DS18B20, oczywiście dostosowałem pozycje wyświetlania do LCD 4*20 - załączniku spakowany...
Staram sie napisać programik w Bascom, który odczyta mi numery seryjne z termometrów dallasa DS1820 (docelowo 3-4 termometry) ma go zapisać w pamieci eeprom procesora, a nast ma być odczytany. Na końcu użyłem komendę dla wyświetlenia na lcd ale jakoś mi to podejżanie działa ponieważ nie wyświetla mi znaków a tylko jakieś "9". Może źle odczytuje lub...
Problem został rozwiązany :). Na jakimś angielskim forum wyszukałem kilka ważnych uwag, mianowicie dwóch. Po pierwsze jeśli dołączasz rezystory, to należy w ich właściwościach zaznaczyć, że sygnał ma być cyfrowy, a nie analogowy. Druga rzecz to czyszczenie pamięci poprzez Debug-> Reset Persistent Model Data. Aha dodam jeszcze, że jak dodajesz plik pamięci...
Da sie to zrobić? Bo robie projekt na atmega8515 (mam ich kilka więc nie będe kupował nowego) a on nie ma TWI a potrzebuje dołączyć pamięć EEPROM Jak to zrobić pod bascomem o ile sie da Witam wszystkich. Ostatnio spotkałem sie z podobnym problemem. Musiałem odczytać i zapisać zawartość 24c08 (1024 bajty). Niestety :( programy przykładowe załączone...
No cóż. Posiedziałem nad tematem trochę dłużej. Przeanalizowałem noty katalogowe i poszperałem w Internecie. Postanowiłem też program napisać od podstaw. Jest on czytelniejszy. Jednak nic to nie dało. Mam pewność, że EEPROM jest dobry, bo zaprogramowałem goo w BASCOMIE. Nadal jednak proszę o pomoc. Poniżej zamieszczam kod programu. #include <avr/io.h>...
Witam. Mam pewne urządzenie w którym użyłem procka Atmega16 i pamięci eeprom M24256. urządzenie ma dostęp do netu. Chciałbym robić aktualizację programu w procku w następujący sposób: 1. pobranie programu z netu do pamięci eeprom. 2. wysłanie odpowiedniej komendy powodującej przejście do bootloadera. 3. załadowanie nowego oprogramowania i reset. Jak...
Witam Mam układ, który mierzy dwie temperatury ( DS18B20 ), dwa napięcia ( PCF8591 ( pobiera czas ( PCF8563 ), a z powodu niedużego wyświetlacza ( 12 x 4 ) wskazania są zmieniane do 10 sekund po przepełnieniu Timer1. Układy PCF8563 i PCF8591 są podpięte z "zewnątrz" przewodami około 10 cm. Magistrala I2C ma obniżoną prędkość przez Config I2cdelay =...
Ja bym skompilował program, otworzył wygenerowany plik .BIN, wyciął z niego fonta (czyli wywalił kilkadziesiąt pierwszych bajtów) i tym co zostanie zaprogramował EEPROMa. Jedyny ból jest taki, że większość kompilatorów nie generuje pliku .BIN, lecz HEX. Ty nie będziesz miał problemu, bo używam BASCOMa, a on chyba jako jedyny generuje plik BIN. Wycinanie...
Nie da się tego zrobić za darmo. Musisz przeznaczyć we flashu lub EEPROM-ie najlepiej na końcu komórki pamięci określające odkąd co się znajduje. etykieta Teksty: ma zaczynać się od 100 komórki a etykieta Wspolrzedne: przykładowo od 250 komórki eepromu? Wprowadzasz te 2 wartości po sobie. Aby odczytać każdy napis ostatni jego znak odwracasz, czyli XOR-ujesz...
Witam Mam taki programik troszke posklejany ale wyskakuje błąd co robie nie tak . label not found [_ENDIFO ] $regfile = "m8def.dat" 'Atmega8 $crystal = 8000000 'Kwarc 8MHz Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.1 , Db6 = Portc.0 , Db7 = Portb.5 , E = Portc.3 , Rs = Portc.4 '*************************************.....
Jest tego sporo, DCF77, 7 x DS18B20 i DHT11 ( akurat jeśli chodzi o niego to mam wątpliwości, czy ten kod działa, bo jest na obydwu płytkach podpięty i zdarza się zawieszenie ) Nadajnik Atmega328p Dodano po 16 Odbiornik Atmega644P - trochę zmieniłem obsługę przerwania, wydaje mi się, że w przerwaniu nie powinno się wykonywać dużych obliczeń. [syntax=basic4gl]...
Witam Do istniejącego i działającego "urządzenie" chciałem dodać możliwość odbioru, parsowania i odesłania SMS'a zwrotnego z danymi. Cały kod: Linia1 - to wyświetla Uart_numer - Linia1 Linia2 - to wyświetla Komanda - Linia2 czyli działa OK Ale jak podepnę modem GSM ( SIM900D ) to Uart_numer jest puste, a Komanda pokazuje ( czasem ) jakieś teksty z pierwszej...
Gdybym opisał program wszystko stałoby się oczywiste :D Użycie IF ELSE bez END IF zawsze warte jest omówienia bo potem nikt nie może się doliczyć END IF :D Chodzi o to że jeśli tylko jedna instrukcja jest od jakiegoś warunku zależna to można ją zapisać w jednej linii. Jeśli z powodu jakiegoś warunku musza juz być zmienione dwie zmienne lub wykonać się...
Witam Mam pytanie do bardziej obeznanych kolegow niz ja:) Chodzi mi o kolejność odczytu układów ds 1820 po szynie 1-wire-a konkretnie..: Jesli mam załóżmy 2 układy DS1820,które maja odpowiednio swoje numery ID (xxxxxxxx) i (yyyyyyyy) i w mym programie jako pierwszy odczytany układ instrukcja bascoma 1wsearchfirst() jest ds o numerze ID (xxxxxxxx) a...
Witam ponownie,ma ktoś może jakiś sprawdzony software'owy patent na odczytywanie znaków z eepromu?Cały problem leży w tym aby zamienić znaki string"abcd..." na ascii i odnaleźć w tablicy znaków w eepromie. Napisałem taki kod: Sub Strlcd(byval Chstr As String) 'wpisanie stringa Local A As Word 'zmienna pomocnicza dopasowujaca wartosc znaku ascii...
Witam, problem jak w temacie. Program się kompiluje ,Bascom nie wyrzuca żadnych błędów ,ale nie działa zapis i odczyt z EEPROMU??? Programik testowy mający na celu zaznajomić się z obsługą wewnętrznej pamięci eeprom ,w przyszłości chciałbym ją wykorzystywać do bardziej zaawansowanych rzeczy (typu zamki szyfrowe, pilot programowalny ,itp.) ,ale pierw...
Próbowałem coś takiego i męczę się cały czas ,ale i tak mi wychodzą głupoty. :( [syntax=basic4gl]Sub Gettime() 'pobieranie czasu z PCF8583 'początek petli I2cstart 'inicjalizacja magistrali I2C I2cwbyte 166 'podanie adresu PCF8583 dla zapisu I2cwbyte 2 'wybranie drugiego rejestru (sekund) I2cstart 'powtórna inicjalizacja magistrali I2C I2cwbyte 167...
emarcus ale " na tablicy " bardzo fajnie mi to chodzi. Po co komplikować sprawę, bawić się z menu i zajmować cenne kilobajty. Urządzenie nie jest na sprzedaż, będzie działało u mnie w domu. Jaki to problem przy wymianie czujnika uruchomić Bascom, zmienić dane w pliku źródłowym i zaprogramować atmegę ? Chociaż .... podsunąłeś mi całkiem fajny pomysł...
Witam, Proszę o podpowiedź jak zapisać zmienną typu single, konkretnie wartość np. 1.23458 do komórek pamięci eeprom. Chodzi o zapis w Bascomie. Jeżeli wpiszę dim zmienna as single zmienna= 1.23458 Writeeeprom zmienna , 1 to przy odczycie Readeeprom zmienna , 1 na lcd ukazuje się 1.234580037
Wystarczy... 😉 To może zacznę najpierw od nauki bascom a i za jakieś dwa lata będzie to śmigać 😀 Dodano po 8 Panowie, znalazłem wczoraj kod, który działa na zasadzie „rejestratora” czasów, i zapisuje wyniki do Eeprom. Później je porównuje z odebranym kodem biorąc pod uwagę pewne odchylenia w czasie trwania impulsu. Program...
Witam, chciałem się podzielić moim pierwszym takim programem. Napisany przezemnie wsad do J-205 został sprawdzony na samym zestawie. Kod nie jest idealny (zakres kodu od 0 do 25755) i brak opcji dla zapominalskich czyli kasowanie zawartości eepromu przechowującego kod zwierając określony pin przy włączaniu. Jednak poza tymi dwoma rzeczami wszystko działa...
hm.. przy i2cwbyte niewidze delay'a 10ms na to aby eeprom mógł zapisac dane, z tego 'loadera' do eeproma wywnioskowałem że ten 'obrazek' (tablica bajtów) jest ładowany pod adresy od 0 do 255. kolejny błąd jaki widze to 'to' że tablica ta ma 504 bajty i w żaden sposób niezostanie cała zapisana do eeproma przez ten pierwszy kod. kolejny problem jest taki...