Pracuję nad elektronicznym układem wyprzedzenia zapłonu. Układzik elektroniczny z programem typu: PORTD=~PINC działa bez problemu, ale jak już "skomplikowałem program to ni hu hu" Zachowuje się tak jakby nigdy nie występowała jedynka na PINC0, 1, 2. Jak najlepiej wyłapać to zdarzenie W załączniku układ elektroniczny. A teraz kod: #define F_CPU 12800000L...
Rozumiem, że każdy wentylator daje Ci jeden impuls. Odczytuj stan portu, którego każdy bit jest zapisanym stanem z danego wentylatora. Odczyt ten zapamiętujesz i porównujesz z poprzednio zapamiętanym odczytem z portu. Jeśli jest różnica, to znaczy że któryś z wentylatorów podał impuls. Sprawdzasz który/które to bity i odpowiednio zwiększasz liczbę zliczonych...
Witam. Artykuł ten pisałem z myślą o wszystkich, którzy dopiero zaczynają swoja przygodę z magistralą TWI (czyli magistralą I2C) w procesorze Atmega8. Jest to program-szkielet, w który trzeba wpisać własne funkcje i procedury i wykorzystać gotowe procedury do komunikacji w magistrali TWI. A na praktyczne zastosowanie magistrali TWI zapraszam na: //--------------------------------------...
Witam, Przez USART dostarczam dane do komputera z modułów: L3GD20 i LSM303DLHC . Na kontrolerze nie wykonuje żadnych obliczyć tylko poszczególne współrzędne odczytuje w ten sposób: X Y Z ) Gyro: 108.0000000000 176.0000000000 -58.0000000000 Akce: 768.0000000000 0.0000000000 16640.0000000000 Gyro: 97.0000000000 176.0000000000 -61.0000000000 Akce: 512.0000000000...
Witam Mam prośbę o rozjaśnienie pewniej sprawy - mam do Atmegi8 podpięty odbiornik IR (SM3385P) cudo to zostało wymontowane z jakiegoś odbiornika Czujnik podpięty jest pod PB0 - do tego posiadam pilot TTS35AI - od zestawu SkyStar2 - do przetestowania wykorzystałem program ze strony Kod poniżej [syntax=c] //--------------------------------------...
Witam, Czy nakierowałby mnie ktoś w jaki sposób wykorzystując PWM można zrealizować płynne sterowanie jasnością diody LED przy użyciu pilota nadającego w standardzie RC5? Do tej pory udało mi się zrealizować płynne sterowanie jasnością diody wykorzystując PWM i microswitche - oto kod: [syntax=c]#define F_CPU 8000000UL #include <avr/io.h> #include...
Otóz tak wygląda pewien program do zczytywania komend z czujnika podczerwieni do którego wysyłane są sygnały za pomocą pilota w standardzie RC5: Poprawiłem tytuł. LordBlick
Witam. Potrzebuję pomocy z dostosowaniem kodu napisanego na atmegę8 na attiny13. Domyślam się że największym problemem będą tutaj timery, ale jestem w ich temacie puki co zielony, a potrzebuję koniecznie(i niestety pilnie) odbiornika IR który zmieści się i będzie działał na attiny13. Jak całość kodu działa rozumiem(jest świetnie opisana komentarzami)...
jestem początkującym mam odbiornik podczerwieni sfh5110-36 i atmege8 wszystko podłączyłem jak na schemacie wgrałem też plik //--------------------------------------... // Plik "main.c" // // KURS AVR-GCC (abxyz.bplaced.net) // // Dekoder RC5 // // (schemat i opis działania w artykule) // testowanie na atmega8 (8MHz) //--------------------------------------...
Witam. Mam problem z podstawowa konfiguracja portów w Atmega8 (oraz Atmega88). Najpierw myślałem ze uC jest uszkodzony. Zamieniłem na Atmege88. Nadal tak samo się zachowuje. Jak np na mam odczytać PINB5 i w zależności od jego stanu zmienić któryś bit PORTB na przeciwny to nie działa nic, ciągle widzi ze PINB5 ==1. Jak PINB5 ma sterować PORTD działa...
Witam czy jest możliwość odczytu stanu portu mikrokontrolera ale nie stanu gdy pin ustawiony jest jako wejście tylko jako wyjście . Czyli ustawiamy: [syntax=c]DDRC|= (1<<PC0); PORTC|= (1<<PC0); [/syntax] czy jest możliwość odczytu tego że na PC0 jest 1 (którą ustawiliśmy sami) Czy należało by użyć PINC: [syntax=c]jakaszmienna = PINC &...
W terminalu masz podgląd na port RS232, który jest portem wirtualnym. Nie sądzę aby ATMega to ruszyła musiałbyś napisać hosta usb i dopiero próbować czytać dane z urządzenia. Jedyne rozwiązanie to GPS z wyjściem RS232 w standardzie NMEA-0183. Dostępne moduły OEM lub inne odbiorniki typu Garmin, Trimble, Motorola i pewnie kilka innych. p.s.: możesz zainteresować...
Robię programik w BASCOM na Atmega48 i zabrakło mi ciut pamięci na testowe opcje, których później już nie będę potrzebował. Pomyślałem, że wstawię atmega8L (mam takich kilka, a nie mam żadnego 88), bo żadnych bezpośrednich odwołań do rejestrów nie ma w programie. W zasadzie to podstawowe funkcje tylko wykorzystuje wspólne dla obu uC... i pojawił się...
Program ma po odczytaniu naciśniętego klawisza podłączonego do PD0 zmienić stan końcówki portu PB0, co ma się objawiać zapaleniem/zgaszeniem podłączonej diody. Nie działa odczyt klawisza. Czy ktoś może mi wyjaśnić dlaczego? #include <avr/io.h> #include <util/delay.h> #define LED_PIN (1<<PB0) #define LED_ON PORTB &= ~LED_PIN...
Witam, pisze w nie niedokończonych bo projektowi jeszcze daleko do publikacji. Wolał bym też nie wklejać jeszcze źródeł ani samego programu, ktoś kto się uczy mógł by nie potrzebnie brnąć w to bagno które stworzyłem w C#. :p obiecuje jednak ze gdy wszystko będzie gotowe na pewno się podzielę. Wiec tak. Napisałem program w C# z wykorzystaniem Microstoft...
Do portuC.5 podłącz Leda przez rezystor 220ohm do +5v i zobacz jak miga. Powinna migac co 1 sekunde tzn 500ms nie świeci 500ms świeci. Napisz czy tak jest czy szybciej czy wolniej. [syntax=basic4gl]$regfile = "'m8def.dat" $regfile = "m88pdef.DAT" $crystal = 8000000 $hwstack = 128 $swstack = 128 $framesize = 128 Dim Address As Byte , Command As Byte...
Witam wszystkich Poniżej zamieszczam kod który przeraża mnie swoją wolnością znaczy się brakiem szybkości. To jest STM32 a działa wolniej niz ATMEGA8. Osobiście nie sprawdzałem oscyloskopem taktowania ale jesli wierzyć konfiguracji PLL to zegar główny to 64MHz while zajmuje 16 albo 18 cykli - MASAKRA. Jak to przyśpieszyć? Czy jest możliwe wykorzystanie...
Witam. Mam problem z komunikacją mikrokontrolera Atmega8 z komputerem przez port LPT. Do komunikacji wykorzystuje sprzętowy interfejs SPI mikrokontrolera. Atmega8 pracuje jako Slave, a laptop jako Master. Slave ma za zadanie wysyłać kolejno liczby od 0 do 255 (dla testów). Master steruje transmisją i odbiera te dane. Problem w tym, że nie za każdym...
no :-) ale kopiarki do masowego programowania to aż niepotrzebuję. Po prostu chciałem bezpiecznie zaprogramować najpierw jeden mikrokontroler - bo z AVR-ami zaczynam dopiero przygodę, co nieznaczy że nie mam doświadczenia z innymi rodzinami. Problem tkwi w tym że jak robię coś pierwszy raz to się boję... ale Pomysł bardzo dobry. No i odnośnie konwerterów...
Ale to właśnie jest komplikowanie sobie życia! Nie wykorzystujesz podstawowej cechy 1-wire, mianowicie możliwości swobodnej komunikacji przy wykorzystaniu tylko jednej linii portu uC. Gratis masz kontrolę numerów układów, ich ilości, stanu itp. Programując "po okrężnej" wolniej rozwijasz swoje umiejętności! DS18B20 mają unikalny, 64 bitowy numer ID...
Pozmieniałem sporo w programie. Zastosowałem się do sugestii skrócenia głównej pętli teraz praktycznie jest bardzo krótka a na końcu ma instrukcję waitms 400. Zauważyłem że program jest bardzo wrażliwy na długość głównej pętli gdy tylko znalazła się jedna linijka za dużo program odczytywał tylko wartość sekund z PCF8563P. Stosy ustawiłem na 128 a i...
Witam Obsluga ADC w Bascom jest banalna polecam polski help Bascom Basic, napewno sie zorientujesz o co chodzi... Jezeli chodzi o wypelnienie PWM to na potencjometrze mozna to zrobic bez wiekszego problemu... podlacz potencjometr pomiedzy +5V i GND, nastepnie do ADC uP, a pozniej odczytaj wartosc napiecia przez getADC(), ustaw odpowiednie granice i...
Witam! Mam taki problem - otóż interesują mnie 2 najmłodsze bity z portu B (tzn. jaką tworzą wartość - czy jest to 0, 1, 2 czy 3). Napisałem sobie coś takiego: [...] int wartosc ; [...] int main(void) { [....] while(1) { wartosc = PORTB&0b00000011 ; //tu próbowałem różnych kombinacji ;) switch(wartosc) { case 0: [...] case 1: [...] case 2: [...] case...
Witam serdecznie, Zabawę z AVRem zaczołem dopiero kilka dni temu więc może nie rozumiem jakiegoś oczywistego faktu ale dnia dzisiejszego oszalałem :D Podłączyłem sobię LCD HD44870 aby mieć lepszy wgląd w to co dzieje się w kontrolerze i postanowiłem pobawić się z portem A ustawionym na odczyt (DDRA = 0x0). W pętli ustawiłem aby wyswietlał mi 8 bitow...
Witam Jestem w trakcie pisania softu dla urządzenia które będzie kontrolowało 2 napięcia. Wykorzystuje multiplexowanie portów A/C Atmegi PC2 i PC4. Problem w tym, że nie dokonuje się odświeżanie bufora ADC który zmierzony został z PC4. kod programu: //**************************************... // // //**************************************...
Problem jest w programie, nie wiem czy koniecznie w kompilatorze. Dziś rano jeszcze to robiłem, dopisałem sei() oczywiście ale to nic nie zmieniało. Pętla while oczekuje na zakończenie transmisji, więc jeśli samo przerwanie jest nią wywołane, tak więc kiedyś ono się zakończy, po za tym sprawdzałem komunikacje i działa. Co do tego co gdzie ma być wpisane...
Dzięki za linki. Przejrzałem, i skończyłem z jeszcze większym mętlikiem w głowie :). Będę musiał przestudiować. Przedtem zacząłem się bawić z tutorialem z tej strony: . Oto kod: [syntax=c]#include <avr/io.h> #define PORT_ON(port,pin) port |= (1<<pin) #define PORT_OFF(port,pin) port &= ~(1<<pin) int main(void) { unsigned int adc_value;//...
Witam Mam problem z EEPROM, chcę odczytać zadeklarowaną wartość z pamięci EEPROM i porównać ją w warunku (if) z wartością zmiennej SRAM, spełnienie warunku ma włączyć stan wyskoki na porcie PC4 (powiedzmy zapalić diodę). Przedstawiam napisany przez mnie kod, który niestety nie działa. Proszę o konstruktywne uwagi i zrozumiałe porady, zaznaczam że nie...
Witam Otóż chciałbym odczytać stany portów B na uC. Mam zrobione 8 przycisków o wspólnej masie (podłączonej do GND uC) i 8 wyprowadzeniach (do każdego z portu B). Znalazłem w manualu uC ATMEGA8 fragment kodu do odczytywania stanu portów lecz mimo kilku prób i kombinacji...nic :). unsigned char i; ... /* Define pull-ups and set outputs high */ /* Define...
Raczej problemu nie ma. Można dać procek z większą ilością wyjść PWM, albo można sobie na AND'ach zrobić wyjścia PWM w dowolnej ilości* * - uzależnione od ilości wolnych portów procesora do wysterowania bramek.
instrukcja Pinx.y służy do odczytu stanu portu natomiast Portx.y do ustawienia stanu na porcie
to co napisze może wydać się głupie ale skoro używasz win Xp to możesz mieć zablkowane porty COM-a spróbuj je odblokować np useerportem Przecież odczyt portu mu działa, nie wiem czy czytałeś co napisał wcześniej. Spróbuj może jeszcze dać kondensator 100nF i jakiś elektrolit na zasilanie MAX'a. Poza tym wg schematu masz połączenie proste więc kabel...
Mam problem z odczytaniem wartości całego portu co wydawać mogło by sie śmieszne ale po całej nocy spędzonej nad tym zdecydowałem się zadać to pytanie na elektrodzie. W czym rzecz : Chcę próbkować cały port D i ten wynik porównywać z wcześniejszym stanem PORTU D jeżeli coś się zmieni (XOR) to załączany jest timer itp itd . Jednocześnie wykorzystuję...
Udało się! ADC ożył! Mieliście rację - "SIGNAL" jest przestarzały, gdy zamieniłem na "ISR" to coś się zaczęło dziać. Poszukam lepszego potencjometru w swoich zbiorach. Jednak widzę, że jakaś liczba się wyświetla - różna od zera i zalezna od ustawienia potencjometru. Warto jednak zwrócić uwagę na kilka ciekawych rzeczy: 1. sprobowalbym jeszcze na twoim...
Cześć, mam problem z programem wykorzystującym bibliotekę "rklibavr", a konkretnie chodzi o obsługę DS18B20. Mianowicie wszystko działa ładnie jeśli DS18X20_read_meas_single korzysta z DS18 S 20 (czujnik mam 18B20) i dopóki temperatura nie przekracza 26C. Potem temperatura mi się zeruje. Jeśli dam DS18X20_read_meas_single(DS18 B 20_ID, &subzero,...
Witam.. robię projekt na uczelnię i mam taki problem. Korzystam z Atmega8 w której na porcie D począwszy od PD.0 aż do PD.4 znajdują się przyciski zwierające do masy. Kierunek ustawiony na 0, rezystory podciągające włączone. Problemem jest, że PD.2 do PD.4 działają bez zarzutu, natomiast nie udaje mi się nigdy odczytać informacji z PD.0 i PD.1... Próbowałem...
W takim razie musisz robić jakiś błąd w kodzie, pokaż jak to odczytujesz.
Ok. Pytanie 1. Względem czego ( jakich pomiarów ) masz zawyżony wynik ?? A teraz jeśli potrzebujesz ... ale nic za darmo. Dla czujników SHT11 / 75 .. seria nowa ( kod = cyfry + litery ), procesorów atmega8 i atmega168 + protokół modbus ( freemodbus ) - coś jak okrojona wersja komercyjnych czujników z modbus. Kod jest trochę chaotyczny ... z opcją zasilania...
Witam. Jako że nie chcę korzystać z gotowców, postanowiłem spróbować napisać obsługę dla transmisji 1Wire. Naskrobałem coś takiego: Funkcje obsługi "1wire.h": #include <moje/moje.h> //Załącz potrzebne biblioteki #define DDR1W DDRD //Rejestry specjalne portu wykorzystywanego do komunikacji 1wire #define PORT1W PORTD //... #define PIN1W PIND //......
Witam wszystkich. Podoba mi się prostota tej konstrukcji i dokumentacja. Więc tak jak kilku innych użytkowników postanowiłem sobie taki zegarek złożyć. Postawiłem sobie jednak troszkę inny cel. Zamiast maksymalizować chce go zminimalizować do wersji naręcznej. Diody w obudowach 0603 i inne malutkie podzespoły. Dlatego chciałem zapytać: - czy, pierwszy...
Podłączę się do tematu. Konstruuję sterownik silnika prądu stałego - serwonapęd. W tym momencie mam gotowe podprogramy: - odczyt pozycji z enkodera - regulator PID (nie działa tak jakbym chciał, albo potrzebny jest tuning parametrów albo mam gdzieś błąd w kodzie) W tym momencie silnik lubi oscylować wokół pozycji zadanej. W tym momencie stanąłem na...
do odczytu portów służą rejestry PIN
Napisałem taki prosty programik , atmegE mam połączoną z komputerem (max232, adapter bluetooth, ) , na komputerze jak odczytuje port to mi wyskakują jakieś krzaczki , używam jakiś terminal , ustawiam boud rate co może być nie tak ? .equ RS=51 //4MHz ,4800 .CSEG .include "m8def.inc" .def zero=r2 .def tmp1=r16 .def Dana=r19 ;///////////////////////////////////////...
ch=ch&0b00000000; // Aby czytac z ADC 0 ADMUX|=ch; Chyba nie chciałeś tego napisać co napisałeś. ADMUX się nigdy nie zmieni i zawsze będzie miało taką samą wartość jak przed wejściem do funkcji. Więc zapewne mierzysz cały czas na ADC0, niezależnie co podasz do funkcji. Może z tego wynika Twój błąd? Jeżeli nie to sprawdź napięcie na Vbg, tak dla testów...
DDRB, PORTB i inne są rejestrami, ale co znaczące można uzyskać ich adres. Utwórz sobie strukturę, w której będziesz przechowywał wskaźniki na rejestry oraz jakąś maskę bitu nad którym chcesz operować. [syntax=C]#include <avr/io.h> #include <macro.h> #include <stdint.h> struct ow_pin { volatile uint8_t* pin; volatile uint8_t* port;...
Właściwie układ masz dobrze , możesz spróbować połączyć z pomiarem na emiterze tzn kolektor do Vcc emiter do portu z rezystorem 4,7-10kΩ do masy w tym przypadku przy braku wysterowania czujnika będzie miał 0 przy pełnym 255 . Warto sprawdzić miernikiem czy następują prawidłowe zmiany napięcia przy kontrastowym tle ( białe / czarne ) pamiętaj również...
Tak jak wspomniałeś sei i powroty z przerwań to pozostałości po poprzednim programie. Wyizolowałem tylko to co dotyczy temperatury i sei jakoś tak zostało. Nie programowałem żadnych dodatkowych bitów. ;) Wskaźnik stosu inicjalizuję na -3 ponieważ RAMEND-2, RAMEND-1 i RAMEND przeznaczam na przechowywanie wartości temperatury, a nie chciałbym żeby stos...
Trochę to twoje sterowanie jest nie teges. Ta klawiatura to matryca, więc wystawiasz 0 na jedną kolumnę i odczytujesz cały wiersz. Potem wystawiasz 0 na kolejną kolumnę itd. Przykład jak to zrobić masz w kodzie z mojej stopki.
Pomiędzy zmianą stanu portu B, a pierwszym odczytem portu PIN wstaw koniecznie nop - problemem nie jest twój program, lecz synchronizator portów w procesorze, który wprowadza pewne opóźnienie. Przejrzyj notę katalogową dokładnie.
Witam Mam czujnik Pir wyciągnięty z czujki, razem z nim jest wzmacniacz na kostce LM324N, gdy jest ruch na wyjściu tego scalaka pojawia się napięcie, chodzi mi np, do portu PB0 jest podłączone wyjście z tego wzmacniacza i atmega rozpozna czy napięcie będzie podane na port. Będę również wdzięczny za pomysły z podłączeniem tego czujnika , w tej chwili...
Nie podałeś na których portach ma przyciski i domniemam że na PC2 i PC5 Jeśli tak to wszystkie warunki powinny wyglądać mniej więcej w ten sposób: [syntax=c]if( !( PINC & (1<<2))) { Send_Packet(w7w); } if( !( PINC & (1<<5))) { Send_Packet(w8w); }[/syntax] A problem może wynikać z wysokiego stany PC7 przy odczycie.
Na podstawie informacji zawartych tutaj: oraz zgodnie z sugestiami w poprzednich wypowiedziach zrobiłem sobie w celu przetestowania taki oto program: [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> int time=0, flaga=0; int main (void) { DDRB |= (1 << 0); // Ustawienie bitu LED jako wyjćcia TCCR1B |= (1 << WGM12); //...
Zmierzyłem napięcie na tym pinie i jest ono w okolicy 2.3v. Nie mam pojęcia skąd, skoro jest tam opornik pull-down. Zrobiłem jak polecił kicajbas. Piny zachowują się poprawnie jak ustawię je jako wyjście i dam impuls. Po ustawieniu DDRC&=~((1<<DDRC5)|(1<<D... dałem również PORTC=~((1<<PORTC5)|(1<<PORT... port się "uspokoił",...
martin20023, wg kodu masz MOD i SHD wpięte w działający port szeregowy.
Męczę się z tym problemem już od bardzo długiego czasu, więc postanowiłem wreszcie poszukać pomocy na forum. Mianowicie nie potrafię w żaden sposób sprawić by ten układ wysłał mi jakiekolwiek dane. Połączenie atmegi z kompasem jest poprawne ponieważ skaner wyszukuje jego adres: Robiąc to bardziej ręcznie funkcjami z biblioteki też działa: Problem zaczyna...
Taaa ja to bym napisał jako odczyt całego portu żeby kodu nie powtarzać, z maskowaniem, ale nic by z tego nie zrozumiał :D Tutaj pewnie przy puszczaniu przycisku nawet po długim naciśnięciu może wykonać się procedura krótkiego wciśnięcia.
Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). A teraz chciałbym go wam zaprezentować. Na początek podręcznik języka C w formie pliku pdf -> 'C.pdf' i plik -> 'atmega16mmr.pdf' ,oraz obrazki -> 'Atmega8.gif'...
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 =...
Niedawno zacząłem swoją przygodę z AVRami (2 tygodnie). Od tygodnia męczę się z ADC w ATmega8535. Nie potrafię określić źródła problemu, ale znam efekt. Podczas odczytu wartości z dowolnego kanału pojawiają mi się w losowym odstępie "głupie" odczyty. Ponieważ problem występuje w sposób ciągły udało mi się zauważyć że owe "głupie" odczyty różnią się...
Witam Mam problem z zaprogramowaniem ATMEGA8L-8PI Używam tych programatorów i programu Yapp. procek sie niby programuje ale jak dam odczytywanie to tego niema Co robie żle? Używam laptopa z portem LPT pozdro SJZWOJTEK
Kombinuję z programem obsługującym DWA termometry DS18B20. Używam ATmegi8 i programuję pod C. Chodzi o odczytywanie temperatury na dwóch magistralach onewire - dwóch pinach. Przerobiłem standardową, powszechną bibliotekę do obsługi DS18B20 zmieniając to, że normalnie adres bitu portu magistrali 1W jest definiowany jako makro, a ja zrobiłem z tego parametr,...
Witam, mam problem sekwencyjnym odczytem z dwóch potencjometrów podpiętych pod konwertery A/C w ATMega88. Nazwijmy potencjometry odpowiednio POT1 i POT2. Problem polega na tym, że jak odczytuje po kolei POT1 i POT2 w przerwaniu wywoływanym co 1ms to czasami wartość POT2 jest kombinowana, to znaczy zależy zarówno od ustawienia POT1 jak i samego POT2....
zrobilem sobie taki zegarek RTC na I2C i LCD 16x2 na zestawie uruchomieniowym zl2avr jednak nie wiem jak sie zabrac za podlączenie LCD pod I2C myslalem zeby uzyc pcf8574 tylko nie wiem jak podlaczyc LCD do tego ukladu i czy nie trzema jakiejs dodatkowej biblioteki ?? co by to obslugiwala ?? oto moj programik jaki mam do tej pory bez LCD na I2C : $regfile...
Zbudowałem układ, który mierzy temp. z trzech ds18b20 i wyświetla na lcd. Problem zaczyna się gdy włączę przerwania od timera0 (który tylko w tle odmierza sobie odcinki czasu po 8ms), a mianowicie mierzona temperatura jest nie prawidłowa a później zaczyna się krzaczyć lcd. Ma to być sterownik pieca CO więc potrzebuję odliczać krótkie odcinki czasu na...
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. Ostatnio chciałem zacząć programowanie AVRów więc postanowiłem zbudować programator pod USB i wybrałem USBasp. Wszystko zmontowałem z instrukcji na stronie pod adresem: wraz z adapterem. Problem polega na zaprogramowaniu atmega8 zawartego w programatorze. Żeby to zrobić, pożyczyłem programator wyglądający na STK200, całość podłączyłem do adaptera...
ATMega8515 -programujemy I2CProg_Atmega8515 programatorem Funprog... -port LPT - zworki na PR2 i PR1(zasilająca) - jak do Blackard - opis na KSW -Wkładamy karte do slotu i klikamy -Identificar Micro - co powinno skutkować wyświetleniem typu procka - ATMega8515 8kB Flash -klikamy Leer w sekcji Fuses -fusy ustawiamy tak: -Reloj - External XTAL -SUT -...
Witam mam kolejny problem z zaprogramowaniem kostki jest to atmega8515. Podłączam ją bezpośrednio z portem lpt.Czyta signature mogę odczytać flash i to co odczytałem wrzucić spowrotem. Ale przy próbie wgrania innego wsadu wyskakuje:"write error at address 00000000 byte written:10 byte read:FF" do procesora jest dolutowany kwarc 8mhz+2 kondensatory 22pf...
Witam. W dziedzinie mikrokontrolerów jestem początkujący więc proszę o wyrozumiałość. Mam problem zaprogramowaniem Atmega8. Programator zrobilem sobie według schematu z tego posta 'Termometr 4 punktowy DS18b20 $regfile = "m8def.DAT" $crystal = 1000000 'Deklaracja portów od wys'wietlacza LCD Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1...
int odczyt = ((ADCH << 8) | (ADCL)); Ten kod jest bledny bo nie gwarantuje zadnej konkretnej sekwencji odczytu ADCL i ADCH, co jest wymagane przez procesor. Prawidlowo nalezy odczytywac caly 16-bitowy rejestr, kompilator sam sie zatroszczy o wlasciwa kolejnosc odczytow ADCL i ADCH (jest to w kodzie portu gcc na AVR).
Witam Mam problem z odbiorem sygnału rc5 a dokładnie buduję zegar na wyświetlaczu 7-seg w oparciu o atmege8 i układ pcf8583. Jak na razie wszystko mi działa i odczytuje czas i wyświetlam go lecz po dodaniu wierszy kodu programu odpowiedzialnych za odbiór rc5 program się wiesza i nic nie realizuje, a na wyświetlaczu są same zera... Nie mam już pomysłów...
Witam Zmieniłem sposób obsługi wyświetlania. Początkowo miałem tak : [syntax=basic4gl] '************ Zegar 8 wyswietlaczy LED + 74HC595 + PCF8563 $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 32 ' rozmiar stosu programowego $framesize = 32 $baud = 9600 '************ deklaracje portow - 74HC595 Config...
Witam, bardzo proszę o pomoc. Zrobiłem układ na Atmega32 z podłączonymi diodami do całego PortuA, oraz do PortuB Pin2 (PB2) dekoder podczerwieni TSOP31236 (testowałem też na TSOP31238). Wykorzystać chciałem bibliotekę IRMP a w załączniku spakowany cały projekt z plikami biblioteki irmp.
Właściwe to send a nie write bo zapisuje na karcie tylko w kompie a procesor tylko odczytuje. powiedzmy, że wywołuję funkcje z parametrami : sendmmc(0,0); czyli sektor zaczynajacy się w 512 i segmencie 0. int sendmmc(int segment, int sect3) { // send 512 bytes from the MMC via the serial port int i; int sect4; sect4 = 512 * (sect3+1);...
Witam Mam Problem Z Napisaniem Programu Do Atmega8. A Mianowicie Sprawa Wygląda Tak: Każdy ds18b20 Podpięty Do Innego Portu. I Chcę: 1. Zrobić Alarm Po Przekroczeniu Określonej Temperatury: a) W Miejscu Danego Czujnika np. 2 Zamiast Temperatury Wyskoczył Napis "GORĄCO" i Po Chwili Zniknął i Pojawiła Się Temperatura i Znowu Napis "GORĄCO" I tak W Kółko...
Witam. Napisałem program do obsługi woltomierza i pomiaru napięcia na atmega8. Cały układ będzie zamontowany w samochodzie. Po zaprogramowaniu wszystko prawie działa tylko przy samym włączaniu na wyświetlaczu pojawia się że temperatura wynosi 85 stopni a dopiero po ok 4s (drugim odczycie temperatury) podaje właściwą temperaturę. Później wszystko działa...
Nie rozumiem po co dioda LED ukazująca stan nawiewu jest podłączona do osobnego pinu. Nie ma takiej potrzeby, a nawet jest to nie wskazane. Stan wejściowy pinu portu D, nawet kiedy w DDRD jest on ustawiony jako wyjście, można odczytać z rejestru PIND, natomiast wyjściowy z PORTD - tak, ten rejestr można również odczytywać. Nie programuję w Bascom, ale...
Witam. Mam następujący problem z niedziałającym TWI. Mam kod na atmegę w C. /* Czujnik ultradzwiekowy sterowany z magistrali i2c C= 2010 Grzegorz Eliszewski grzegorz(at)eliszewski.pl esio.eu */ #define F_CPU 12000000UL // czestotliwosc kwarcu 12MHz #include <avr/io.h> #include <util/delay.h> // obsluga opoznien #include <compat/twi.h>...
Witam. Ręce opadają. Od wczoraj próbuje zaprogramować uC by badał temp na poszczególnych czujnikach ale w różnych podprogramach. To znaczy włączam uC pokazuje mi czas naciskam przycisk przechodzi do innego ekranu gdzie widnieje temp. i pomiar napięcia. Następnie znów naciskam przycisk i przechodzi do kolejnego ekranu z wynikami pomiaru z dwóch innych...
Witam Zachęcony sukcesami z płytką EVB 4.3 zaprojektowałem i zamówiłem swoją - na początek z AtMega8 w DIP. Do tego pamięć 24C32 oraz układ do RS485. Wszystkie układy mają kondensatory 100 nF ( stabilizator 7805 również + jeden elektrolit ). Całość ze złączem pod wyświetlacz 2*24 ( właściwe 4*12 ) Reset przez rezystor 10 K do +5V AtMega8L ( na 8 MHz...
Tak i nie :) mam tak ustawione TWBR, że nie potrzebuje preskalera. Wymieniam PCF może to da jakiś efekt... Bo tak logicznie mysląc jeżeli by TWI nie działało to by się nie komunikowało z pamięcią. A wiem że pamięć działa bo napisałem szybki programik co zapisuje, a potem odczytuje i wyświetla na LCD. Pozdrawiam o dziwo jak wysyłam do PCF jakąś wartość...
Witam. Odświerzę troszkę temat. AVT wypuściło drugą wersję oprogramowania do tego kitu. Zawiera ono obsługę jednego i dwóch skrzydeł. Wybór dokonywany jest automatycznie poprzez wykrycie obecności przystawki (napięcie na rezystorze po pomiarowym). Niestety program napisany jest w C, o którym nie mam zielonego pojęcia a chciałbym dopisać do niego blokadę...
Witam, Walczę juz z problemem trzeci dzień, prubuje wklejać rózne przykłady bibliotek wyświetlacza i ciągle nic. Przeglądam podobne problemy na google, na elektrona i dalej nic. Brakuje mi już siły. Podam przykład: [syntax=c]/* Plik main.c Wyświetlacz alfanumeryczny LCD 20x4 "QC2004A" układ atmega8 (8MHz) */ #include <avr/io.h> #include <util/delay.h>...
Witam. Wkraczam na nowy stopień - Atmel AVR. Poczytałem o tym na i zamówiłem Atmege8. Jest to ATMega8A-PU. Zapoznałem się z datasheetem, jakie zasilanie, piny. Gdy odebrałem uC, postanowiłem zabrać się za programator. 6 - SCK 7 - MOSI 9 - RST 10 - MISO 20-25 GND Schemat: Mam starszy komputer, z tyłu znajduje się (różowy :P) port LPT. Ustawiłem w BIOSie...
Witam, 3 tygodnie temu postanowiłem poznać zasady programowania mikroprocesorów, aby przygotować inkubator (coś na wzór projektu, który znalazłem na niniejszym forum ATmega8A ustawiony na 2MHz i czujnika DS18B20 . Do tego wyświetlacz LED 3-cyfrowy, 7-segmentowy. Program napisałem w C. Nie da się ukryć, że więcej było w tym "wklejania: niż "pisania",...
Witajcie forumowicze, może nie udzielam się tu zbyt często, ale tym razem potrzebuję pomocy i nie wiem już do kogo mógłbym się zwrócić. Mam 2 x ATmega8. Łączę je między sobą przez SPI. Master posiada dodatkowo UART do rozmawiania z konsolą na PC, slave ma dołożoną jedną diodę do sprawdzania najstarszego bita w przesłanym bajcie (tak w ramach kontroli)....
Witam, Przeszukałem forum i nie znalazłem rozwiązania które by pomogło. Problem wygląda następująco. Komponenty problemu Atmega8a, bascom AVR IDE (2.0.7.5), czujnik DS18B20. Sprawdzone problemy z forum: -Nieprawidłowe podłączenie. Nóżka danych jest podciągnięta przez 4,7k Ohma do 5V -Kable zostały sprawdzone pod względem ciągłości -Sprawdziłem czy jest...
Program AVR LAB go nie wykrywa bo musisz wybrać odpowiedni programator, odpowiedni port com (bo pracujesz w trybie ArduinoISP) i prędkość. Prędkość zależy od tej jaką sobie ustawiłeś w szkicu Arduino ISP. Polecam zamienić na 115200, bo będziesz miał zonk. Pisłem o tym autorowi programu, ale na razie nie wraca do tematu, program i tak jest super. To...
Od kad zmienilem bit CKOPT w fusach dziala bardzo stabilnie A więc wniosek , że program to jedno , a sprzęt to ... drugie :D za kazdym razem dostaje informacje AT+CSQ+CSQ: 19,99OK Czyli telefon wysyła echo. ... Nie rozumiem do konca czemu bez zerowania bufora tez dziala ..ale wstawielm to co podeslales ;) Jeśli odczytasz wszystkie dane w buforze ,...
napisalem taki kod w delphi procedure TForm1.Button1Click(Sender: TObject); var hCOM:THandle; nrWrit:DWORD; nrRead:DWORD; Errors:DWORD; Dcb:TDCB; ComStat:TComStat; buf:array Dodano po 42 DOŁOŻYŁEM PETLE POMIEDZY WYSYŁANIE ZNAKÓW DO BUFORA A ODBIERANIE I WTEDY TO DZIAŁ, ALE CAŁY PROBLEM POLEGA NA TYM ŻE POWINIENEM CHYBA DANE WYSYŁANE Z MIKROKONTROLERA...
Chciałbym zasięgnąć porady co do napisania programu w języku Bascom do mikorkontrolera ATMega8. Zadanie jakie miałby wykonytwać układ polaga na odbieraniu sygnału DMX, jego dekodowaniu i prezentowaniu na 2 warianty. Te dwa wariany to amm na mysli osobne programy. Pierwszy wariant to prezentacja zdekodowanego DMX na 8 portach mikrokontrolera, załóżmy...
Ja to robię tak: // Odczyt STATUS-u LCD u08 READYLCD (void) {char temp = TLCD; cbi (PLCDSTER,RS); sbi (PLCDSTER,R_W); PLCDD = 0; //port jako IN PLCDOUT = 255; //port Pullup while (--temp) sbi (PLCDSTER,E); temp = PLCDIN; cbi (PLCDSTER,E); return temp; } i działa bez problemowo
W helpie opisane jest ze nazwa Alias portc.2 a prwidlowo jest nazwa alias pinc.2 Właśnie. Nie zauważył kolega, że Portc i Pinc to są różne rejestry AVR'a. Znowu nie chodzi o kolorowe tylko o zrozumienie filozofii portów µC. Przypomnę: Portx - rejestr, do którego zapisujemy stan portu jeśli jest zdefiniowany jako wyjścia, lub podłączenie rezystorów...
1) czy jest konieczne stosowanie kondensatorów. Jeśli są potrzebne to jak podłączyć kondensatory, czy równolegle do każdego z przycisków (czyli 64 kondensatorów) czy może jest jakiś inny sposób na to. Moim zdaniem nie ma takiej potrzeby. 2) czy jest konieczne stosowanie rezystorów podciągających. czy przy porcie gdzie wystawiam czy tam gdzie odczytuje....
Witam, niestety nie posiadam takiego gpsa jak wasz, mam model novtel superstarII z allegro, prawdopodobnie tez z tego powodu nie moge miec zapisane przy otwarciu portu"inverted". po podniesieniu zasilania procesora do 5v zaczynam w terminalu odczytywac dane pozycji prawidlowo. niestety mam kolejny problem, jesli chce użyć zmiennej np."gpstxt" w glownej...
Witam prosiłbym o napisanie jak ustawić Fuse bity w mikroprocesorze Atmega8 do programu: :'Piornik02.bas 'Różnica pomiędzy 01: w czasie pisania tekstu pozostaje on cały czas w okienku wyświetlacza 'oraz buzer przepełnienia pamięci jest z własnym generatorem (buzer z Portd.7 do +). 'Program do wyświetlania ściągi. 'Pozwoli zapisać treść w postaci 94...
Witam! Mam taki problem. Poskładałem sobie pilot i odbiornik IR. Oba na ATmega8. Diody IR i odbiornik TSOP1136 (podpięty na INT0) są do siebie dopasowane. Problem mam przy odczytywaniu wartości z odbiornika. Co robię: •ustawiam przerwanie na zboczu opadającym: MCUCR = (1<<ISC01); // zbocze opadające GICR |= (1<<INT0);...
Ja bym na twoim miejscu podłączył LCD w konfiguracji 4-ro bitowej a R/W podłączyć do masy, chyba że chcesz odczytywać z wyświetlacza, to ci zaoszczędzi parę połączeń na płytce i uwolni porty uP. Wentylator jak najbardziej można sterować z portu, ja bym tu użył jakiegoś taniego n-mosfeta. Zauważyłem też błąd w podłączeniu zasilania i kontrastu wyświetlacza,...
Proszę o sprawdzenie schematu. Oraz ewentualne uwagi czy też sugestie dotyczące układu oraz jego pracy. Jest to moja pierwsza praca projektowa dlatego prosze o wyrozumiałość. Układ składaja się z: -mikrokontrolera -lcd 2x16 -sht11 (czujnik temperatury i wilgotności) -led -switch -wentylator 5v (nie ma go jeszcze na ukł. natomiast chce go dołączyć do...
Mam problem z komunikacją z czujnikiem MOBOT- US V2 za pośrednictwem interfejsu i2c z atmega8. Czujnik mam podłączony do zestawu uruchomieniowego zl2avr w ten sposób, ze piny scl i sda (port.c5 i port.c4) do czujnika(pin 7, pin 9 )przez rezystory 4k7, pin Reset czujnika na portc.3 atmegi. Zasilanie idzie oddzielnie. Czujnik zaczyna działać dokonuje...