Polecenie "Cursor off" możesz umieścić przed pętlą "Do - loop", przecież wyłączasz go tylko raz. Polecenie "Locate" możesz zastosować do każdej zmiennej - "Godziny", "Minuty", "Sekundy". Sprawdzasz przed wyświetleniem czy zmienna jest mniejsza od 10, jeśli tak ustawiasz odpowiednią pozycję za pomocą "Locate x.y" i wyświetlasz. Jeśli nie to wyświetlasz...
Liczby wyświetlają się tak jak powinny. Dziękuję bardzo za pomoc. Chciałbym jeszcze zapytać jak wyświetlić każdą wartość w nowej linijce w terminalu. [syntax=c] while(1) { char zmienna = Odbieraj_spi(); nadajznak(zmienna); nadajstring("\n"); } return 0; } [/syntax] Gdy dodam nową linie w tym miejscu to każda cyfra wyświetla mi się w nowej linijce. Pozdrawiam
Sprawdziłem dla pewności jeszcze raz, char pomoc Ponieważ Twoja funkcja void konwert2(char tekst nie dodaje znaku '\0' w tablicy tekst . Elementy Twojej tablicy to tekst i tekst (nie mylić z '\0'), a jaka będzie wartość komórki, która znajduje się za tablicą to czysty przypadek. Z kolei instrukcja LCD_WriteText(pomoc); będzie wyświetlać kolejne komórki...
no niech będzie fakt jest to C... w takim razie czy komuś chciało by się dopisać coś do kodu który zamieściłem żeby choć wyświetlał sekundy albo choć wskazał jak to zrobić jak uzyskać zmienna reprezentującą sekundy a co do wypowiedzi kolegi A może skorzystać z gotowca na stronie ATMELA: http://www.atmel.com/dyn/resources/prod_... (źródło...
Liczyłem impulsy z Timera0. Częstotliwośc kwarcu dzielę przez 1024 co daje mi 18kHz taktujących Timer0. Przed wejściem w petlę odczytującą 7 czujników ustawiam w timerze wartość zero i zeruję zmienną odpowiedzialną za liczenie przepełnień Timera0 w przerwaniu. Zmienna licząca ilość przepełnień wyświetla się jako 1 a liczba impulsów w Timerze0 jako 226.
$prog &H00 , &H00 , &H00 , &H00 $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 1 Config Lcdpin = Pin , E = Pinb.1 , Rs = Pinb.0 , Db7 = Pinb.5 , Db6 = Pinb.4 , Db5 = Pinb.3 , Db4 = Pinb.2 Dim A As Byte Do A = 18 Cls Lcd A Loop End 'end program Jest to przykład jaki zrobiłem dla testu . Gdy zmienna A ma wartość np.9 , to wyświetli się poprawnie...
Witam. Od pewnego czasu przymierzałem się do zrobienia podobnego sterownika ale wstrzymywało mnie programowanie. Wdzięczny jestem autorowi projektu, bo dzięki niemu dostałem "kopa" i zacząłem działać ;o) Moje urządzonko będzie sterowało diodami RGB (75 sztuk po 3W) plus żółte (75 sztuk po 1W). Dzięki zastosowaniu czterech kolorów można uzyskać odwzorowanie...
Ja się z Mirkiem nie zgodzę, książek o C są tysiące. Oczywiście nie po Polsku. Podstawowy błąd jaki ludzie popełniają to założenie, że C na mikrokontrolery jest jakieś inne niż C na komputery. Nic bardziej mylnego. Zresztą dobrym przykładem jest ten wątek. Przecież gdyby autor chciał coś takiego zrobić na PC, tylko zamiast diod zrobić kolorowe kropki...
Witam i od razu pytam. Jako że nigdy nie uruchamiałem wyświetlacza graficznego 240x128 z kontrolerem T6963C w środowisku bascom avr atmega 128 to mam w związku z tym pytanie: o ile na wyświetlaczu tekstowym nie mamy żadnego wyboru wielkości czcionek o tyle na LCD graficznym zastanawiam się czy mogę zmienną np A wyświetlać na połowie ekranu. Zmienna...
Witam Chciałem zbudowac układ który liczył by 0-9 i wyświetlane to było na siedmiosegmentowym wyświetlaczu... .......... prosze o pomoc i o jakies proste wytłumaczenie moich błędów. myslalem jeszcze o robieniu tego za pomoca rozkazu INC i dodawania tylko nie wiem jak zawartośc rejestru wystawic na wyjscia z gory dziekuje za pomoc pozdrawiam Tu masz...
Więt tak: deklaracja zmiennej : [syntax=c] volatile uint16_t zmienna = 0; // - zmieniam tą wartość później na 300 [/syntax] włączam przerwania według konfiguracji zegara (8MHz - wewnętrzny) [syntax=c] //- uruchomienie eepromu extern EEMEM uint16_t eeprom_values[200]; EEMEM uint16_t eeprom_values[200] = {0,0}; //- konfiguracja zegara void Init_Timer0_OVF(){...
I tu jest użyty poprawnie, funkcja ma sufiks "_P". ja wiem że funkcja ma sufiks "_P", i nie o tym my pisze, pisze czy można zapodać dane z ram, poza tym owszem, są trzy formatowania i jedna zmienna. generalni to szukam działającego programu do odczytu temperatury na atmega 32 ,c++ , Nie znam gotowca w C++, ale w arduino znalazłem cos takiego, może...
Witam, przesyłam wartość zmiennej z jednego uc do drugiego po rs232. Wykorzystuje printf("%u", zmienna); jeśli do "zmiennej" wpisze wartość np. 7 do drugi uc wyświetla mi nie 7 a 55 co odpowiada cyfrze siedem w kodzie ASCII. Mo je pytanie, jak wysłać wartość "zmiennej" jako liczba a nie kod ASCII. Dodam , że wysyłając z terminala 7 jako kod ASCII na...
Witam Ja Odczyt temperatury zrobił bym tak: .... 1wwrite &HCC 1wwrite &HBE Lsb = 1wread(): Msb = 1wread(): Minus = Msb.7 Tempa = Msb * 256 Tempa = Tempa + Lsb If Minus = 1 Then Tempa = Not Tempa Tempa = Tempa + 1 End If Tempa = Tempa * 10 'temperatura *10 Tempa = Tempa / 16 Jest to fragment kodu pozwalający na odczyt ujemnych...
Kompilator nie wywala Ci warninga :?: Zamiast stosować: volatile :?: a tak już ostatecznie jak to ma działać :?: TUTAJ -> po wywołaniu przerwania zmienna Tczas jest zerowana więc max wartość jaką ona osiągnie po inkrementacji wynosi 1 po czym po kolejnym wywołaniu się wyzeruje :) Pozdrawiam
Witam, jestem w trakcie pisania biblioteki do LCD (HD44780), już prawie wszystko mam, pozostało natomiast napisać najbardziej kompleksową funkcję i... zbytnio nie mam pomysłu ;] Mam funkcję do wyświetlania pojedynczych znaków, stringów oraz liczb w różnych miejscach wyświetlacza chcę natomiast stworzyć coś przypominającego funkcję printf z C abym np....
Co do tekstu to nie wiem, ale co do zmiennych to np w jakimś rejestrze masz zmienna niech będzie to "x" i jeśli chcesz wyświetlić na wyświetlaczach to ja robie to tak: jeśli interesuje cie wartość od 0 do 99 to po prostu dzielisz x przez 10 i na pierwszy wyświetlacz ( x/10 ) później reszta z dzielenia i na drugi ( x%10 ), a jeśli chcesz na trzy wyświetlacze...
Witam, 1. Mam nie lada zagwozdkę z obsługą zegara PCF8563p przez Atmege32 + wyświetlacz LCD. Sam zegar działa dobrze. Poprawnie wpisuje datę i godzinę. Problem pojawia się z odczytem. W PCF ustawiam wyjście na 1Hz, które jest połączone z Atmegą jako przerwanie INT0. Co kilka razy, przy resecie uC, gdy program startuje od nowa, to czas zaczyna się niepoprawnie...
Pomyśl..Cztery znaki chcesz upchać w trzyznakowym stringu.. Nie wiesz jak to działa. Kiedy deklarujesz String * 10 rezerwujesz 11 bajtów bo każdy string ma znak swojego końca. Nie musisz wykorzystać wszystkich bajtów. String może być krótszy i zaraz po znakach postawiony będzie znak końca..ale zarezerwowałeś 11 bajtów i tam program nigdy nic nie będzie...
Zrobilem tak: SIGNAL (SIG_INTERRUPT4) { switch(INT4) { case 1: jeden(); case 2: dwa(); } } int main() { //pominalem ustawianie I/O EIMSK = _BV(INT4); EICRA = _BV(ISC20); sei(); while(1); return 0; } Kompilator nie wyrzuca bledow, ale wyswietlacz pozostaje czarny, nie reaguje na nacisniecia przycisku Ja dalej twierdze, że 1000 funkcji do wyświetlania...
teraz mam inny problem. Przy próbie zmiany wyświetlanego tekstu obraz zaczyna migać. Próbuję odczytać status wyświetlacza niestety bez efektu. Ekran przestaje migać ale też nic się nie wyświetla. Poniżej 2 funkcje jakie napisałem: Sub Status_read() Lcd_io_dir = &H00 //zerowanie aliasu PortuA - portu danych Reset Lcd_io_cmd Reset Lcd_io_rd ! nop Flag...
Witam. Mam zmienna double którą chcę skonwertować do liczb całkowitych bez znaku (tylko 0 i dodatnie) - (arduino 023) [syntax=c] double d = cap; unsigned long x = (unsigned long) d; [/syntax] W tej postaci wyświetla liczby bez ułamków od 0 wzwyż poprawnie, natomiast jeśli cap jest minimalnie ujemny to zamiast pokazać 0 przekręca się na 429496 - chciałbym...
Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
Dodano po 1 Cytat: Gdzie timer realizuje zliczanie ? Timer zlicza automatycznie zwiększając wartość rejestru TCCR0. W tym przypadku TCCR0 jest zwiększany od zera do 255. Gdy nastąpi przepełnienie czyli przejście z 255 na 0 następuje wywołanie procedury przerwania. Cytat: Widać też lekkie miganie wyświetlaczy... Najwyraźniej częstotliwość 'przełączania'...
Wysłałem filmik na youtube for (i=0;i++<1000;) line(rand()%640,rand(... ok 200 średniej długości (400p) linii/s (nie wiem jak szybka jest funkcja rand() ) 2. Koncentryczne okręgi - ta matryca ma tylko 3 składowe co daje 7 kolorów +tło jednak wizualnie kolorów...
Witam Chciałm zrobić automatyczną regulację obrotów silnika. Pierwszy silnik napędza drugi silnik który pracuje jako prądnica i muszę wraz ze zmianą obciążenia prądnicy regulować obroty silnika tak aby uzyskać stałe napięcie na wyjściu prądnicy. Do sterowania zastosowałem Atmegę 8. Napisałem taki programik i niby działa, ale ... regulacja jest zbyt...
Witam Wzorując się na jednym z przykładów chciałem wyświetlać dane z GPS. GPS działa poprawnie, wyświetla dane w oknie terminala. Podłączenie TX GPS z Rx AtMega nie powoduje żadnej reakcji $regfile = "m32def.dat" $crystal = 8000000 $baud = 9600 ' predkość transmisji $hwstack = 64 ' rozmiar stosu sprzętowego $swstack = 64 ' rozmiar stosu programowego...
Dodałem koszmarnie długi czas czekania po wciśnięciu klawisza i wygląda na to, że działa. Można wyświetlać kolejne cyfry z tablicy i nie ma przeskoków (losowych wyświetleń). W pętli głównej sprawdzam, czy jest wciśnięty przycisk i czy zmienna b ma wartość co najmniej 10. Jeśli tak, to program zabiera się za czynności przypisane do klawisza, a przerwanie...
Ewidentnie coś nie gra z odczytem z karty. Kiedy dla testu zapisuje na karcie plik z tekstem np: Ala ma kota.. i odczytuję w ten sposób: GLCD_WriteDisplayData(255); to wszystko działa ładnie i wpisuje mi na lcd 8 pikseli zapalonych. Tak jak by odczyt z karty pracował "w trybie tekstowym" że tak to ujmę. Kiedy użyję tego kodu : GLCD_WriteDisplayData...
Powinno działać tak jak chcesz: Est Alias Pind.4 Dim Zmienna As Byte , Licznik As Byte Cursor Off Config Portd.5 = Input Config Portd.6 = Input Config Portd.7 = Input Config Portb.0 = Input Config Portd.4 = Input Portd.5 = 1 Portd.6 = 1 Portd.7 = 1 Portb.0 = 1 Portd.4 = 1 Cls Do Bitwait Est , Set Zmienna.0 = Pinb.0 Zmienna.1 = Pind.7 Zmienna.2 = Pind.6...
Witam. Znalazłem stronkę gdzie jest podana obsługa tego lcd w bascomie: http://evertdekker.com/Joomla/index.php?... Wszystko ładnie działa ale mam z nowu problem. Wykonując jakąś pętlę chciałbym wyświetlać jej wynik, tylko jak to zrobić biorąc przykład z podanej strony? Przykład: a=a+1 (jak zapisać w...
Wrzuć program przez syntax bo tego się czytać nie da. Obliczenia przerwanie na Timerze0 co 1 sek: 1MHz / 64 (preskaler) = 15625 imp/sek Timer1 skonfigurowany do pracy normalne czyli przerwanie będzie po przepełnieniu się rejestru TCNT0, żeby rejestr ten przepełnił się potrzeba 255 impulsów czyli przy 1MHz i preskalerze 64 przepełnienie rejestru TCNT0...
Dziękuję, samo załączanie kolejnych wyświetlaczy wiem jak zrealizować, ale dodatkowo muszę załączać kolejno segmenty wyświetlacza. Idąc za tym przykładem napisałem coś takiego: [syntax=cpp] ISR(TIMER1_COMPA_vect) { switch(wysw) { case 0: PORTD = 0b1111110; SIGNAL(SIG_OVERFLOW0) { TCNT0=369 // wartość przeładowania dla timera 0 przy prescalerze=256,...
..próbuje coś spłodzić korzystając z manuali ale szło bardzo opornie...no i utknąłem...chciałem najpierw odpalić LCD z "podstawionymi" wartościami danych 'volt' 'solar' 'aku' i dopiero potem zabrać się za ADC i gdybym miał już pomiar napięcia zdefiniować ustawienia progowe min/max i wypchnąć to na jakiś port poprzez MOC sterujący ładowarką...na ale...
Schemat wygląda ok - poza jedną rzeczą, dzielnik do pomiaru napięcia +12V źle dobrany. Jeśli to by miało pracować w samochodzie to trzeba przyjąć napięcie maksymalne 15V . Teoretycznie nie powinno być więcej niż 14,4 jednak zapas nie zaszkodzi. Kiedyś robiłem pomiar napięcia aku dałem dzielnik z rezystorów 47k i 22k do tego dorzuć kondensator filtrujący...
Witam ! Tracąc dziesiątki godzin szukania w Internecie i dwa tygodnie prób i błędów z w/w LCD proszę o pomoc (i pokazanie błędu) Dołączam kod w http://obrazki.elektroda.pl/7865128700_1... [syntax=c][/syntax] // --------- sterownik LCD -> chyba NT7108/NT7107 (podobny do KS0108 ) --------------- // ATmega 128 + POWERTIP -> LCD PG12864...
Witam, posiadam dwie atmegi8 sprzęgnięte ze sobą komunikacja za pomocą UART. Jedna atmega będzie zbierać informację z czujników i poprzez UART przesyłać bajty danych do drugiej atmegi której zadaniem jest wyświetlanie tych wartości na wyświetlaczu graficznym. Moja ramka danych składa się z dwóch bajtów, pierwszy z nich jest to bajt "adresowy" który...
OK problem to dwa porty do których podłączyłem poszczególne cyfry lamp na których mają się wyświetlać dziesiątki-jednostki godzin lub dni , dziesiątki-jednostki minut lub miesięcy no i dziesiątki-jednostki sekund lub rok. Nie wiem jak napisać funkcję która zapalała by odpowiednią cyfrę danej lampy gdy np; zmienna godz1 [czas dziesiątek godzin] ma wartość...
No tu racje(dzięki ze zwróciłeś na to uwagę) , możliwe ze atmega odczytuje wynik (podłączyłem teraz napięcie mierzone pod PA0), tylko ze nadal wyświetlacz nie reaguje... Zaraz podłącze może diody i na nich niech wyświetla wynik. (chociaż wolał bym żeby ten wyświetlacz tez pokazywał wynik) Macie jeszcze jakieś propozycje? Dodano po 2 Podłączylem tak...
Po 1: Z tego co pamiętam C jest językiem wyczulonym na wielkość liter. Więc zmienna "Porta" to nie to samo co "PORTA" czy "porta". To samo dotyczy słów kluczowych w stylu "if else". No i nazwy plików nagłówkowych masz źle. O czym Ci kompilator mówi w błędach. Teraz moje pytanie. Czy kiedykolwiek pisałeś coś w C czy po prostu znalazłeś ten kod na jakimś...
Witam Wiem że to śmieszne ale nie potrafię sobie poradzić z odczytem danych z układu MAX1288. Napisałem procedurę która powinna inicjować układ i przeprowadzić odczyt z układu łącznie ze zlepieniem dwóch bajtów w 16bitów i zwróceniem tej wartości do głównego programu. Ale jak to zwykle w życiu bywa nie bardzo chce to działać. Tu pdf do układu: http://datasheets.maxim-ic.com/en/ds/MAX...
Witam Chciałem przesłać wynik obliczeń który jest zmienną typu Integer. Ale wcześniej muszę do zmienić na Byte i wtedy dopiero mogę wysłać. Zmienna Integer jest z zakresu 990 - 1115 ( wartość ciśnienia ). W układzie odbiorczym muszę ją z powrotem złożyć ( do wyświetlania na LCD i zapisu na SD ). Próbowałem coś takiego: Dodano po 1 Już mam: [syntax=basic4gl]...
zrobiłem tak, jak Kolega napisał: Oblicz . Albo nie odbiera, jak trzeba, na pewno wchodzi w _rfm12_odbierz , bo wyświetla symbol chr(7) Dołożyłem jeszcze w _rfm12_odbierz Disable Int2 teraz zaczął wyświetlać co trzeba, sprawdzę jeszcze co z Timer0 Dodałem w programie Timer0: Do było cls :-). Ta zmienna Liczy odlicza po włączeniu zasilania, doszła do...
Witam wszystkich. Wydaje mi się, że mój kod powinien działać, ale jest jakiś błąd. Posiadam czytnik RFID z którego zczytałem id kart i breloków. W kodzie warunek if, że jeśli kod odczytany jest taki sam jak kod który wpisałem do programu to dioda się zapala i nie gaśnie. Tyle, że jeśli w kodzie wpisze id breloka czerwonego i przyłożę brelok czerwony...
Kto mi za to zapłaci ? :) Chciałem to przygotować trochę staranniej, ale wrzucę w takiej wersji, #define korekta_poczatkowa 128 uint8_t korekta = korekta_poczatkowa; uint8_t tmp_hist dodaj_do_historii(0, wartosc + korekta); a rysujemy tak: rysuj_historie(0, x, y); zmienna korekta służy do przewijania góra dol, zmieniamy ją o +-1 i rysujemy...
Witajcie. Zacząłem eksperymentować z odbiornikiem RFM12B na 868 MHz. Jednak stanąłem na samym początku przez ... zmienne. Nie wiem co jest grane. Gdy mam taki oto kod: int main(void) { unsigned char ik, ChkSum; register unsigned char licznik; START(); LCD_INIT(); LCD_print (0,0, "ATMEGA 8 [test]");...
Jestem początkujący w temacie AVR'ów, niedawno zakupiłem zestaw uruchomieniowy (od GoTronika) No i rozpocząłem naukę, język C szybko mnie do siebie zniechęcił (Nie oszukujmy się jest trudny dla osoby początkującej) więc tymczasowo postanowiłem zająć się bascomem (A potem do C planuję wrócić). No ale dosyć tego wstępu :> Posiadam procesor ATMEGA 32 i...
Ten program nie był jeszcze wtedy skończony, więc miał trochę błędów ;) Ogólnie chodziło mi o to żeby ktoś mnie upewnił w przekonaniu, że takie "skakanie" po kodzie jest normalne, a nie że np. mam jakąś złą wersję programu. No i tak też się stało ;). Dzięki za bardzo profesjonalne podejście to tego tematu ;). Tutaj wklejam już skończoną wersję programu,...
Zrobiłem jak pisał Driver, odłączyłem wejście sygnału do LM7001 i podłączyłem sterowanie nap. warikapów przez potencjometr. Przy ok.2,2V miałem f=132MHz a przy ok.7,2 f=136MHz to by było z zapasem dla odbioru i ok.11,5 f=146. Ponownie podłączyłem zgodnie ze schematem, nie zaskoczyła... Myślę że podanie częstotliwości ze skanera nie ma co sprawdzać,...
Pomóżcie mi bo mnie krew zalewa. Atmega mierzy impulsy na wejściu zewnętrznego przerwania INT1. Timer2 służy jako podstawa czasu. Od około 240 kHz na INT1 miernik mierzy nie poprawnie, to znaczy nie występuję przerwania od Timera2 w trybie CTC i program wisi w pętli while, ale gdy przełączę zakres na generatorze na mniejszy to wyświetla mi się wartość...
W bibliotece RTC, z ktorej korzystasz ta zmienna jest takiego typu, int ma za maly zakres. Wydawało mi się, że 10-cio cyfrowa liczba zmieści się w int :) Ten kod powyzszy wklejasz i powinno sie skompilowac. Jutro postaram się stworzyć prototyp i wrzucić program do arduino. Swoja droga moglbys napisac co tworzysz i pokazac calosc kodu moze cos sie jeszcze...
zwraca ile razy liczba x mieści się w liczbie y A nie wyjdzie to z dzielenia? W VB dzielenie bez reszty realizuje operator "\" ("zwykłe" dzielenie to "/"). http://obrazki.elektroda.pl/5353910100_1... Dziś się pobawiłem w Bascomie w związku tym czasem. Oczywiście użyłem Twojej porady. To co uzyskałem zaskoczyło mnie totalnie. Napisałem...
Witam, udało mi się coś wyskrobać i zrobiłem na razie sam generator częstotliwości, właściwie jakoś tam działa ale chyba napisałem to dookoła , może ktoś spróbował by to jakoś poprawić. Nie dodałem jeszcze generatora PWM, próbowałem ale nie wychodziło mi, chciałem taktować go z wejścia T1 ale nie udało mi się to, nie wiem jak go zmusic do tego żeby...
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 ''()...
A jak to wyświetlasz? Czy funkcja wyświetlająca jest przystosowana do pracy ze zmiennymi uint32_t, a nie przypadkiem zwykłymi int?
Dałem sobie spokój z CHATGPT i zmuszam moja mózgownice do wysiłku , czyli przypomnienia sobie co nieco z starych czasów. ARDUINO też leci w kulki, biblioteka LCD która wykorzystałeś w przykładzie "hello world"ma zamienione miejscami wiesze z pozycje kursora ......... co za logika !!!!!!!! najpierw WIERSZ a potem KURSOR !!!!. tak też napisałem kod więc...
Wykonałem syntezę do radia ze strony http://sq1ftb.prothost.pl/articles.php?a... http://obrazki.elektroda.pl/2235817300_1... Generator i separator działa, scalak syntezy LM7001 pracuje z kwarcem 7,2MHz, po wyjęciu jego Atmega prawidłowo "milczy" tzn. brak wtedy wyświetlania częstotliwości zmian na enkoderze itd. Ta część programu...
Witam. Mam problem z napisaniem programu w Bascomie. Chcę, żeby przyciskami S1 i S2, po naciśnięciu przycisku S3 zmieniać zmienną (Praca) typu Byte i wyświetlać ją na LCD. Później chcę, żeby dioda (D1) świeciła przez tyle sekund ile wynosi zmienna i gasła na sekundę (w pętli nieskończonej). Dla wyjaśnienia: S1 - Dodanie do zmiennej 1. S2 - Odjęcie od...
Witam! Kolega poprosił mnie o zrobienie mini-komputerka do Opla Corsy, mającego wyświetlać dane na wyświetlaczu radia. Problem pojawił się, kiedy zechciałem wyświetlać na bieżąco prędkość - program zgłupiał (choć, raz na kilka odświeżeń wyświetlacza pojawiła się poprawna prędkość) a przy większych prędkościach Atmega ulegała resetom lub się zawiesza....
...jak to nie kłopot do do Mikołowa niedaleko a kawy ci u mnie dostatek.....morduje się z tym podstawianiem napisów...padł mi system i kod którym już częściowo chodziło podstawianie napisów jest historią więc musiałem napisać wszystko od nowa ale wszystko chodzi poza podmianką tekstu i wyświetlaniem dziesiętnych jednostek napięcia... //-----------------------------------nap...
Wygląda jednak na trudniejsze niż się wydaje. Dla rozjaśnienia wyrzuciłem LCD bo nie o to tu chodzi żeby coś wyświetlać. Działająca poprawnie z punktu widzenia logiki i matematyki pętla. long [syntax=basic4gl]$sim $regfile = "m8def.dat" $crystal = 8000000 Dim X As Word 'zienna wejściowa w zakresie od 1 do 510 Dim Y As Word 'zmienna wejściowa w zakrecie...
Ciąg dalszy bojów z tym kodem i jeżeli to możliwe prozba o dalszą pomoc. Wiec tak , obecnie podaję czas pracy silnika X1 oraz czas postoju T(klawiszami zwiększam albo zmniejszam parametry X1 oraz Y). Generalnie będzie to jeden z dwóch trybów pracy, drugi ma być z ciągłą regulacją płynną klawiszami UP i Down. O co teraz proszę - o pomoc w skonstruowaniu...
Cześć! Wpadł mi w ręce czujnik temperatury i ciśnienia BMP180 i postanowiłem zrobić z niego użytek. A że należy go obsługiwać przez I2C, a nie miałem z tym standardem do czynienia, to wziąłem się za pisanie własnej biblioteki obsługującej I2C. Oczywiście zadanie nie jest proste i już natknąłem się na problem, ale mam nadzieję, że z waszą pomocą się...
Witam, mam problem z programem na mikroprocesor. Na początek dodam, że prototyp, zanim poszedł w odstawkę pół roku temu działał prawidłowo. Program w tym momencie ma za zadanie wyświetlić 4 zmienne na wyświetlaczu. Uruchomienie przerwań zawiesza program. W zależności od tego kiedy zostaną rozpoczęte, skutkuje to innym efektem. Umieszczając sei(); na...
Dalej nic, w sensie to samo. Jaj jest jakiekolwiek napięcie to wyświetla się 5V jak podam GND to 0V. Uszkodzenie pinów wykluczyłem sprawdzając program na drugiej A16. Wstawiłem czekanie na skończenie pomiaru (w funkcje startującą pomiar). Może coś ze Vref mam nie tak - pin jest podłączony przez kondensator do GND - takie zalecenie. #include <avr/io.h>...
Witam Nie za bardzo wychodzi mi wykorzystanie z dwóch portów UART. UART sprzętowy odbiera ramki z modułu GPS ( Tx modułu do Rx AtMega32 ) i to działa. Działa do momentu gdy włączę UART sprzętowy ( tylko Rx na jednym z portów Atmega do Tx portu Com w komputerze - korzystam z przejściówki, ale to chyba nie problem ), wtedy informacje na LCD nie są aktualizowane...
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 =...
Witam, Mam problem. Chodzi o listingi z książki Marcin Wiązania - Programowanie mikrokontrolerów AVR w języku Bascom W książce są dwa przykłady sterowania matryca Led 5X7 Pierwszy przykład z książki ma za zadanie wyświetlać znaki po kolei i to działa. Natomiast drugi listing ma za zadanie przesuwać znaki z lewej do prawej. I to już nie działa. Schemat...
Jeszcze mam pytanie do Kolegi Jakiś czas temu napisałem na Elektrodzie pytanie, czy Atmega328p wyrobi się zapisem SD. Jako, że nikt nie protestował mam już gotową płytkę. założenia były takie: PD0, PD1 - UART PD2 - przełączanie transmisji RS485 PD3 - INT1 do układu PCF8574 ( podciągnięte rezystorem oczywiście ) PC4, PC5 - I2C ( TWI ) pod EEPROM + PCF8563...
http://obrazki.elektroda.pl/5924959500_1... Witam ponownie! Kilka dni temu chwaliłem się projektem "PALM v1.0 BETA Atmega128", a dziś chciałbym przedstawić komputerek do motoru lub roweru jaki zrealizowałem już jakiś czas temu na zamówienie. Urządzenie miało zastąpić oryginalne psujne, mechaniczne zegary. Funkcje i założenia: *Wyświetlanie...
Witam serdecznie mam mały kłopot z obsługa przycisku KEY3 jeśli nacisnę klawisz sw3 to zmienna powinna zmienić wartość na 1,a warunek do obsługi klawiszy KEY2 i KEY1 powinien być spełniony, niestety nie działa :([syntax=c]/* * main.c * * * */ #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #define KEY1 (1<<PB0)...
Zrobiłem tak jak radziliście z użyciem instrukcji itoa i już ładnie wyświetla, teraz jak rozumiem to zmienna x będzie miała wartości które mogę użyć do dalszych obliczeń a dzięki wskaźnikowi buff będę mógł je wyświetlać ?
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...
Hej Potrafię już wyświetlać teksty ale mam problem z wyświetlaniem liczb. Oto przykład: zmienna wynik ma wartość 2 i chce ją wyświetlić na LCD, żeby było też 2 bo są jakieś znaczki.Poniżej mój kod. Proszę o pomoc. // procedura zapisu danej do wyświetlacza LCD void write_char(char x) { SET_RS; // wysoki stan na RS -> zapis danej write_to_lcd(x);...
Witam Po wielu próbach dalej nic nie działa Znalazłem nową wersje artykułu z którego korzystałem (w załączniku) 1-wire.h [syntax=c] /* * _1_Wire.h * * Created: 2011-10-23 02:08:12 * Author: Darek */ //#ifndef 1-WIRE_H_ //#define 1-WIRE_H_ //#endif /* 1-WIRE_H_ */ #include <avr/io.h> #define PIN_1WIRE 0 #define PORT_1WIRE PIND #defineOUT_1WIRE_LOWPORT_1WIRE&=~(1&...
Po przeczytaniu wielu postów napisałem program który ma wyświetlać na wyświetlaczu LCD Napięcie , prąd oraz temp. Chciałem to wykorzystać do zasilacza, którego właśnie buduje. jednak po zaprogramowaniu procka wyświetlacz mi się nie inicjuje (zaświecają się kwadraty w pierwszej lini). Czy jest jakiś błąd w moim programie ? Proszę o sprawdzenie. $regfile...
Przedstawiam tylko istotne części programu związane z transmisją danych Na początek Atmega 16 obsługuje klawiaturę, Wyświetlacz LCD i komunikację GSM i inne drobiazgi oraz RS232 z Atmegą 8 Dodano po 10 A tak przy okazji takie pytanie czym różni się transmisja po RS232 dla: A=1 Print A oraz Print "1" Wg ASCII < 1 > ma kod 49 i chyba w jednym i...
Próbowałem z tą końcówką LL (nawet o tym nie wiedziałem), no ale niestety nie pomaga :|. Próbowałem to zastosować w itoa i w sprintf- próbowałem dla %lld i %d z precyzją i bez, ale tak jakby kompilator w ogóle na to nie zwracał uwagi i wyświetla dalej tak samo jak bez końcówki LL. Bardzo mi to przeszkadza, ponieważ odkąd bawie się wyświetlaczem i chcę...
Witam, drogich forumowiczów. Mam problem z komunikacją kilku urządzeń w sieci rs485. A tak prawdę mówiąc to z komunikacją pomiedzy dwoma, jednym "master" i jednym "slave". Normalnie staram się zadawać pytania w ostateczności na forum Elektroda, ale po prawie 3 tygodniach siedzenia przy problemie, przeglądaniu masy poradników i postów związanych z rs485...
1) Strata z dokładnie tego powodu, o którym wspomniał wojekkk . 5) Może przeszkadzać przy publikacji kodu, przenoszeniu na innego kompa, itp. Generalnie obsługa timera powinna mieć wyższy priorytet niż reszta programu, bo od niej zależy dokładność. Nie liczyłbym na to, że wykonanie funkcji obsługi LCD za każdym razem wykona się tak, że nie przeszkodzi...
Witam, w ramach nauki programowania uC, znalazłem kod pozwalający na wyświetlanie temperatury z DS18B20, na wyświetlaczu 1602A. Jako że na samym przeklejeniu kodu pewnie zbyt wiele bym się nie nauczył, użyłem nieco innego termometru(dokładność nie 0,1, a 0,5*C), zmieniłem układ w jakim ma się wszystko wyświetlać, zastąpiłem float przez int zmieniane...
Cześć, napisałem sobie prosty program, który ma wyświetlać stan kilku wejść ADC na wyświetlaczu (dokładnie 5). Sam przetwornik jest zainicjowany: ADCSR = _BV(ADEN)|_BV(ADIE)|_BV&... i następnie w pętli głównej odczytywany poprzez: ADMUX = 0; ADCSR |= _BV(ADSC); value = ADCW; i dalej zmienna value...
Witam, próbuję odczytać temperaturę z mojego czujnika jednak wynosi ona ciągle -0.1, a gdy próbuje pobrać odczytać ID wyświetla mi puste miejsca lub krzaczki. Przy próbie podłączania za pierwszym razem niestety źle spojrzałem na schemat i odwrotnie podłączyłem zasilanie więc teraz nie wiem czy to wina kodu czy może jednak układu. Chociaż jakby coś z...
OK rozumiem. Nie wpadłem na to :) Teraz bawię się dalej i natknąłem się na kolejny problem. Poniższy program ma za zadanie wyświetlać po kolei liczby od 0 do 999 z wykorzystaniem przerwania od timera. Zmienna "licznik" przechowuje aktualna liczbę, która ma być inkrementowana po wywołaniu przerwania. Pętla "while" (może trochę zagmatwana) służy wyłącznie...
Witam Zabrałem się za zrobienie woltomierza, dość prostego który zapala diody przy odpowiednich wartościach podanych na pin. Problem w tym że nie zależnie od tego co podaję na pin wszystkie podłączone diody się świecą. Schemat połączeń tak jak poniżej (wszelkie modyfikacje zaznaczyłem dość wyraźnie) http://obrazki.elektroda.pl/4077794500_1...
Witam serdecznie. Szukałem już chyba wszędzie, próbowałem kilkunastu innych programów i problem ciągle zostaje nie rozwiązany. Otóż piszę program do sterownika pieca. Posiada on 3 czujniki DS18B20, 3 przekaźniki i 1 triak do sterowania pompki kolektorów. Wszystko działa bez zarzutu. Problem pojawia się dopiero po włączeniu przerwania od INT0 (regulacja...
Czy Kolega będzie może wiedział co jest nie tak od strony programistycznej ? Tzn. jeśli wyświetlam stałe wartości to jest ok, podobnie jak wyświetlam w pętli For... Next od 1 do 59. Dodałem jeszcze obsługę LCD, żeby widzieć, co się dzieje z czasem. Ale jak podepnę do tego PCF8563 i odczytuje czas z niego, a dopiero później wysyłam do SAA1064 to jest...
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ę...
Witam. Niedawno rozpocząłem swoją przygodę z Atmegą8. Chciałem sprawdzić jak działa interfejs TWI. Na podstawie książki pana Cezarego Klimasza zakupiłem układ 24c16wp i napisałem program. Niestety program zamiast wyświetlać mi w terminalu liczby od 255 do 0 wyświetla bliżej nieokreślone sekwencje znaków. Czy mógłby mi ktoś pomóc znaleźć błąd w moim...
Witajcie, mam problem nad którym siedzę juz kilka dni i zatrzymałem się nie wiedząc gdzie tkwi problem. Otóż chcę obsługiwać zegar RTC PCF8563 po I2C - czytać i zapisywać z niego dane (datę i czas). Projekt mam podzielony na kilka plików, całość pisana w Code Blocks 10.5 i kompilowana w AVR GCC. Mam zdefiniowaną strukturę do zapisu danych z zegara do...
Witam wszystkich majsterkowiczów :D Oto mój jeden z pierwszy programów napisanych na ATMEGE 8. Dotychczas programowanie mikrokontrolerów traktowałem jako zabawę, używając do tego BASCOMA i zestawu Treningowego. Obecnie stoję przed zamiarem budowy pewnego urządzenia ale przed rozpoczęciem prac chciałbym mieć pewność że część programowa będzie ok. Sam...
Witam Obecnie walczę z odbiorem danych przez UART. Całość działa, ale mam wrażenie, że odbiór danych powinien być inaczej. Chodzi oczywiście o to, że treść odebranego SMS jest w drugiej linii i używany do tej pory kod wyświetla to trochę dziwnie. Używam trybu tekstowego i odebrane SMS'y wysyłam od razu na UART. komenda muszę dwa razy zrobić Mid. Jeszcze...
Witam mam problem z programem do trawiarki mianowicie znalazłem na necie program do sterowania trawiarką chciałem do tego dopisać wybór menu żeby było jeszcze był drugi tryb sterowania trawiarką. Wgrałem program do uC i działało poprawnie potem chciałem wgrać ten sam program bez żadnych zmian na inna ATmege8 i okazuje się że teraz program działa trochę...
Jeżeli między znakami masz jedną kolumnę odstępu, to na pierwszej stronie będą dwie, a nie jedna kolumna z drugiego znaku, no ale to szczegół ;) Nie wiem, jak masz zapisaną "czcionkę". Jak na moje oko, to może być po bajcie na każdą linię i takich linii 7, jedna po drugiej, potem następny znak itd. Nieużywane bity (te z prawej, znaki wyrównane sa do...
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ć...
co napisaliscie jako swoj pierwszy program na dany uC w danym jezyku (rozbudowy sie licza, byle by wciaz byla to ta sama baza) n. n. - literka, cyferke z przodu dodam sam. zachowujcie chronologie w swoich dokonaniach na roznych platformach jezykowych i sprzetowych, tak aby to mialo sens! ____________________ 0x1-a. Freddie Chopin - migacz diodkami o...
Pisze właśnie program obsługujący matrycę LED 126 na 15 mam sobie prototypowy programik który wygląda tak : Config Timer0 = Timer , Prescale = 8 On Timer0 Tim0 Load Timer0 , 200 Enable Timer0 Enable interrupts Do For Da = 0 To 240 Dat(da) = 128 Next Da Loop End Tim0: Nr2 = Nr2 + 1 Nr3 = Nr2 + 15 Nr4 = Nr3 + 15 Nr5 = Nr4 + 15 Nr6 = Nr5 + 15 Nr7 = Nr6...
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...
Działa!!!!!!!!! Zastanawiałem się czemu procesor próbował wyświetlać ciągle tę samą wysłaną zmienną jedną pod drugą i po wielu próbach i błędach znalazłem przyczynę. Mianowicie wcześniej myślałem że zmienna zdefiniowana jako: Dodano po 1 Nawet szybko mi poszło z tą kartą sd. :D Oto kod wysyłania z atmegi32 pliku *.txt z karty sd w którym zapisany tekst...
Witam, Przeczytałem wiele stron z podobną tematyką, próbowałem wielu różnych algorytmów, jednak nie udało mi się osiągnąć tego co chciałem. Założenie: Komunikacja aplikacji napisanej w visual c++ 2010 express z atmega16/32. 1. Wysyłka 5 liczb z komputera: (parametr1, parametr2, parametr3, parametr4, parametr5) na atmegę. Sprawa wydawałoby się prosta,...
wyświetlać wartość zmienna bascom wyświetlać zmienna atmega volatile zmienna
plyta indukcyjna siemens triaki zamienniki gorący przewód
lampowy wzmacniacz gitarowy identyfikacja elementu
Diagnostyka OBD1 w pojazdach Chrysler: kody błędów i narzędzia Częste awarie odtwarzaczy CD: silnik obraca się bez potrzeby