Podaję się, nie mam pojęcie czemu to nie działa: [syntax=c]#define F_CPU (1000000) #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #define LED_DATA PORTD #define ANODY_PORT PORTC #define CA1 (1<<PC0) #define CA2 (1<<PC1) #define...
Witam, Jestem w trakcie budowy komputera pokładowego na procesorze AtMega8 oraz na wyświetlaczu LCD LS020. Program który tworzę ma zrealizować podstawowe funkcję komputera pokładowego, takie rzeczy jak menu i możliwość nastawienia parametrów odpuszczam a jedynie chcę prawidłowo obsłużyć...
Witam. Jestem początkującym programistą AVR ;) Grzebałem i szukałem "trochę" po forum ale nie znalazłem nic co by mi pomogło. Próbuje zbudować obrotomierz do motocykla na układzie Atmega8 który wynik wyświetla na panelu LED a nie jak większość projektów na LCD 2x16. Dodatkowo mam...
Dzień dobry. Na początek zaznaczam, że jestem absolutnie początkującym amatorem bez wykształcenia związanego z prądem Wink. Mam w domu oświetlenie załączane włącznikami bistabilnymi. Niestety nagminnie się sypią więc postanowiłem je wymienić. Urodził się więc pomysł wielokanałowego...
dodam jeszcze, że bazuję na kicie: Jednak nie zamierzam wysyłać mu nic przez RS - wystarczy mi, zeby zaprogramowac go by gral kilka nut Czyli wygląda na to, iż mam odliczać na timerze do pewnej wartości zależnej od nuty, którą chcę uzyskać a następnie wygenerować przerwanie i...
Proszę używać tagu ] do wklejania kodu... /syntax] . Poniższy wpis proszę poprawić. LordBlick Mam 2 pytania odnośnie mojego sterownika RGB z wykorzystaniem PWM - ATmega8 - program w c: - jak ustawić przerwanie INT0 (PD2), ponieważ ten przycisk przełącza program pracy i trwa to...
Np. tak: Ustawiasz zegar na 1Mhz W main() ustawiasz: Zezwolenie na obsługę przerwań Zezwolenie na obsługę przerwań od Timer0 (albo Timer2) Prescaler na 1 Sprawdzenie jakiejś flagi A w obsłudze przerwania ovf od Timer0 (albo 2): Do rejestru Timer0 (albo 2) wpisujesz 156. Wtedy przerwanie...
Witam, mam pewien problem, próbuje przerobić kod do sterowania diody z Attiny 2313, na Atmega8 taktowana wewnętrznym 1MHz z tematu: [url=]Link Kod Oryginalny: [syntax=c]#include <avr/io.h> #define REDout OCR0A #define BLUEout OCR0B #define GREENout OCR1BL void PWMint(void) { ...
Witam. Tak jak w temacie podłączyłem Atmege8.Pod PB0 podpiąłem LED,a do PC0, PC1 i PC2 przyciski zwierające wejście do masy. Układ ma generować miganie diody w następujący sposób: -wciskam PC2 uruchamia się generowanie częstotliwości co widać na diodzie LED -za pomocą przycisków...
Chcę napisać procedurę rozpoznającą sygnał z pilota samsung tv. Na analizatorze stanów logicznych odczytałem przebieg z guzika pilota (wkleję go później). Nie jestem do końca przekonany jak ustawić timer w bascomie. Timer musi być wyzwalany zboczem opadającym. Czy potrzebne są jakieś...
Atmega8 czy atmega8L, ta pierwsza ma zakres napięć od 4,5-5,5V częstotliwość pracy 0-16MHz, ta druga 2,7-5,5V częstotliwość pracy 0-8MHz, pierwsza strona noty. Jeśli używasz wersji zwykłej bez L to masz za małe napięcie. Jeśli chcesz sprawdzić prędkość procka to możesz skonfigurować...
Witam Mam jakiś błąd w programie ale nie mogę dojść gdzie. Przed mian'em mam obsługę przerwania dla SIG_OUTPUT_COMPARE1A która teoretycznie powinna się wywoływać co 1s. Timer1 ustawiony w tryb compare na preskalerze 256, ustawienia timera są na początku maina. SIGNAL(SIG_OUTPUT_COMPARE1A)...
Wracajac do tematu czy moglbym prosic przynajmniej o pseudo kod obslugi przykladowo drgania w przyciskach , wysterowania przekaznika np przez 2s oraz komunikacji 1wire jednym timerem (atmega8 ma az 2 timery wiec pewnie szybko skoncza sie jego mozliwosci chcac napisac kod bez zatrzymywania) Cały...
Jak ustawisz TIMER jako licznik impulsów zewnętrznych z sieci i będzie liczył 18000 (3min) a po 10000 wyłączą sieć to TIMER będzie czekał... i czekał... aż ponownie włączą sieć. Wtedy doliczy brakujące 8000 i da przerwanie. Ale nie po 3min a np. po godzinie. Dodano po 2 W...
Właściwie dwa pytania ale jedno z większym priorytetem ;) Otóż, projektuje odległościomierz. Zamysł jest następujący 1. Załączam tranzystor który steruje napięciem dla nadajnika. 2. Włączam zliczanie czasu 3. Gdy pojawi się sygnał na odbiorniku. Wyłączam naliczenie i prezentuje...
Ok trochę poprawiłem, na coś takiego: [syntax=c]#define F_CPU 8000000L #include <avr/io.h> #include <avr/interrupt.h> //***********... Globalne**************************// ch... Dioda = 1; //************************Funkcja Główna***************************// ...
Witam. Dopiero któryś dzień bawię się uC i stopniowo stawiam sobie nowe cele do zabawy. Ale do rzeczy: Aktualnie chciałbym wygenerować prostokątną falę na jednym z pinów jednocześnie mając do dyspozycji w kodzie łatwą manipulacje jej częstotliwości. Chciałbym zrobić to na timerach...
Witam wszystkich. Mam kod zaczerpnięty z którejś ze stron w internecie. Działał on w pełni na mikrokotrolerze Atmega8 z kwarcem 8Mhz. Mój projekt jednak potrzebuje mniejszego procka i próbuję ten sam program przenieść na Attiny26. Nie mogę zlokalizować ostatniej, tak mi się wydaje że...
Zamiast TIMSK = _BV(TOIE0); TCNT0 = 0x00; TCCR0 = _BV(CS01)|_BV(CS02); powinno być TIMSK |= _BV(TOIE0); TCCR0 |= _BV(CS01) | _BV(CS02); Przede wszystkim to zdajesz sobie sprawę, że ustawiłeś timer na zewnętrzny sygnał...
272 to taka nieciekawa wartość do mnożenia. Ja zrobiłem tak: Przerwania z TIM0 i TIM1 TIM0 zlicza impulsy z wejścia zliczającego, i gdy się przepełni jest króciutkie przerwanie inkrementujące parę 3 rejestrów. TIM1 zgłasza przerwanie równiutko co pół sekundy. Na samym początku obsługi...
Ja bym to zrobił tak: #define F_CPU 1000000UL #include <avr/io.h> #include <avr/interrupt.h> unsigned char tovs; SIGNAL(SIG_OVERFLOW0)... TCNT0 = 1; // timer stop tovs++; // zmiana stanu co 16 przepełnień timera if(tovs % 16 == 0) PORTB...
Przerwania wcale nie są złe tylko dlatego że tobie się na nich nie udało. To trzeba zrobic w assemblerze. Ale nawet przy taktowaniu 16MHz nie podzielisz częstotliwości większej niż powiedzmy 1MHz. Ja bym walną to na Timerze w trybie CTC. I ustawił Timera tak żeby generował sprzętowo...
[syntax=basic4gl]Config Timer0 = Timer , Prescale = 1024 Enable Timer0 : On Timer0 Przerwanie0 Dim Tmp As Word Tmp = 0 Dim Ptimer1 As Word Ptimer1 = 0 Do If Klawisz = 0 Then If Ptimer1 = 0 Then Ptimer1 = 100 End If If Ptimer1 < 95 And Klawisz = 0 Then ...
Proszę o pomoc, co jest źle w tym ustawieniu Timera1 jako CTC Według dokumentacji po ustawieniu Timera jako CTC powinien on liczyć do wartości wpisanej w ORT1A jeśli ustawimy WGM13 na 1 lub, jeśli ustawione na 0 to maksymalna wartość będzie ustawiana w ICR1. Niby wszystko jest ustawione...
Deklaracja portu jest OK. Upewnij się, że nigdzie w przerwaniach, bądź funkcjach przypadkowo nie zmieniasz ustawień portu oraz przyjrzyj się funkcjom alternatywnym dla pinów PB6 i PB7 (XTAL/TOSC) być może złe ustawienie timera powoduje takie anomalie. Btw. spadek o ponad 1V na samej ścieżce...
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...
witam jest proste w asm ale w c też nie powinno być problemu. Przerwania INT0 i INT1 mogą być wyzwalane zmianą stanu napięcia wysokim lub stanem niskim . Odpowiednio ustawić bit w rejestrze MCUCSR. Ustawić bit aktywujący przerwanie w rejestrze GICR. mierzysz czas przez odczyt TIMERa
Siemanko. Uczę się programowania mikroprocków w języku C. Aktualnie jestem na lekcji przerwań i pojawił się dziwny błąd, którego nie potrafię rozgryźć, może bardziej zaawansowani koledzy potrafili by powiedzieć co źle robię bo nie mam już pomysłów. Otóż cały program ma działać...
nie jestem pewien czy do konca zrozumialem ale... uklad formowania sygnalu o ktory sie dopytywalem bedzie synchronizowany z tego samego kwarca co procesor podzielony przez 6 -dzieki temu kazdy stan bedzie trwal 6 taktow. Potrzebny jest ten uklad formujacy zeby odciazyc procesor ktory musialby robic...
Problem tkwil w ustawieniach timer'a. Nalezy go tak skonfigurowac, zeby dla OCR=0 wypelnienie bylo 100%, a dla OCR=255 wypelnienie 0%.
A jak masz ustawiony Timer? Może pokaż ten fragment kodu :P
Wartość wynikowa Z musi być typu word jest podstawiana do ustawień Timera w dalszej części programu i musi pozostać tego typu. Wartość wynikowa Proc ma charakter informacyjny jej rola jest drugoplanowa. W zależności od dwóch zmiennych wejściowych X oraz Y , które określają zakres...
Oto i źródło, może Wy zauważycie coś dziwnego... [syntax=c] // PINY WEJŚCIOWE #define ZIELONA PIND5 #define CZERWONA PIND6 #define DEBUG_PORT PORTD #define DEBUG_DDR DDRD #define ZOLTA PIND3 #define KL_PORT PORTC #define KL_PIN PINC #define KL_DDR DDRC #define...
Witam. Na zlecenie piszę pewien projekt, którego częścią jest dekodowanie sygnału z pilota Rc5. Z początku zrobiłem to na mojej eksperymentalnej płytce z układem ATmega32, gdzie dolutowałem czujnik w powietrzu. Ustawiłem procka na wewnętrzny rezonator 4 MHz, gdyż taki udało mi się znaleźć...
Witam, Dostałem zadanie, aby zaprojektować bezprzewodowy sterownik pieca gazowego, który ma działać w następujący sposób: 1) W momencie kiedy przycisk S1 (na schemacie jest to złącze modułu radiowego - PC2) jest wciśnięty, przekaźnik gazu (G1) i wody (W1) są wysterowane. 2) Gdy...
Witam. Chciałem w celach edukacyjnych zrobić częstotliwościomierz. Ponieważ nie mam za bardzo skąd wziąć zewnętrznych impulsów postanowiłem, że jeden pin procka będzie je generował, a przerwanie int0 będzie liczyć ile tych impulsów było. Do odmierzenia czasu posłużył timer1, który...
Już wszystko jasne - jedyne pytanie zadaję na końcu. Przygodę z PWM zaczynam od sterowania jasnością diody. Atmega8 + diody + rezystorki 330Ω Ćwiczenie polega na cyklicznym rozjaśnianiu i ściemnianiu diody 3 diody podłączone do PB1, PB2, PB3 w założeniu tylko PB1 (OC1A)...
Witajcie, Potrzebuję konfiguracji timera 1 dla atmega8 aby wykonywał funkcję z częstotliwością ~244Hz (zegar 16MHz i preskaler 2^16) . Chciałbym uniknąć używania dodatkowych bibliotek. Będę wdzięczny za przykładowy kod :) jakąś Przy okazji; jeśli użyję do tego celu timera 1,...
Witam mam dwa układy RFM12 i atmega8 oba komunikują się ze sobą problem pojawia się gdy chce zmienić linię nSEL podłączoną do pinu SS na np pin PB0 gdzieś czytałem że linia nSEL nie musi być podpięta do tego konkretnego pinu. Pin PB2 (SS/OC1B) chce wykorzystać do sterowania silnikiem...
Widzę, że przez moją niewiedzę zaraz wybuchnie wojna :-> Postaram się wszystko wyjaśnić dlaczego tak, a nie inaczej i wstawie brakujące elementy. Więc tak. Bartek.k.k napisał: xamrex napisał: Masz rezystor podciągający? Niektórzy o nim zapominają. Dla DS18B20? Jeśli tak...
Hej, miałem problem ze zrozumieniem kodu, który napisałeś, ale Twoja wskazówka znów okazała się cenna. Rozumiem, że przy przerwaniu w reakcji na niskie napięcie wciśnięcie przycisku niesie za sobą nieustanne wywoływanie przerwań, natomiast gdy układ ma reagować na opadające zbocze,...
Witam, chciałbym przerobić projekt z tego linku Mianowicie zostawić odliczanie czasu i wyświetlanie go a dodać do niego funkcję w której o wpisanej "na stałe" godzinie w funkcji załączy przekaźnik. Przekaźnik jest 4 modułowy więc potrzebuje 4 wolnych pinów. Kod, który zmodyfikowałem...
Walczę i walczę z tym programem ale nie daje rady.... :cry: Wrzucam cały kod, jest on zrobiony na bazie jak wspomniałem wcześniej: Projekt powiadomienia o alarmie by Xury wersja 2.0 [syntax=basic4gl] '******************...
Byłby ktoś w stanie mi z tym pomóc? Miałoby to wyglądać tak: * sterowanie wentylatorami czasowo * sterowanie poprzez odczyt temeratury 2 osobne funkcje (działa albo jedno albo drugie). Do tego co mam dołożenie wł/wył czasowego (w zupełności wystarczy najprostsze z możliwych)...
Przerwanie ma być co 800ms. Timer0 prawidłowo generuje to przerwanie: 1/8000000=0,000000125 => 0,000000125*256=0,000032 => 0,000032*250=0,008s => 0,008*100=0,8s i tyle jest odliczane. Dla timera1 rachunek jest analogiczny, ale niestety nie generuje przerwania po tym czasie, tylko kilkakrotnie później....
Próbuję przerobić przykład "Przyklady\LCDAlfa\LCDAlfa-transact-int\... z książki [url=] z ATmega 328 pod ATmega8 i "mam problema". Ponieważ Timer0 w ATmega8 jest uboższy niż w ATmega 328 zastąpiłem go Timerem2. Niestety z marnym skutkiem. Wyświetlacz jest pusty. Oryginalny...
SIGNAL(SIG_INTERRUPT0) { short int a; lcd_xy(0,0); write_text... = 0x40; a = odczytaj_temp(); write_temp... //reset flagi wyst przerwania w pcf GIFR|=_BV(INTF0); lcd_xy...
Napisałem wersję "new core" dla tego projektu. Niestety zajmuje 82 procent flasha w Atmega8 Dlatego w załączniku jest skompilowane archiwum. W przyszłości planuję napisanie programu, który w łatwy sposób pozwalałby edytować dane w EEPROM, czyli zmieniać treść SMS i numery telefonów. [syntax=vb]'***************...
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...
zrób to mniej więcej tak: .INCLUDE "m8def.inc" .cseg ; początek segmentu pamięci programu .org 0 rjmp RESET ; wektor ZEROWY (po resecie) .org OVF0addr ; wektor przerwania od przepełnienia Timera0 rjmp Przerwanie_T0 ; i tu właśnie skok do obsługi tego przerwania RESET: LDI...
Witam prosiłbym o napisanie jak ustawić Fuse bity w mikroprocesorze Atmega8 do programu: :'Piornik02.bas 'Różni... 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...
Zrobilem sobie zegarek binarny... na atmega8. Wszystko napisalem w C i testowalem w programie VMLAB gdzie wszystko spisywalo sie bez problemu. Jednakże po wgraniu softu do ATMEGI nie dzialaja przyciski ... i niestety nie mam pojęcia dlaczego ... Za wszystkie uwagi serdecznie dziękuje.. Oto...
Witam. Mam następujący problem - chciałem użyć timera 2 do pracy asynchronicznej z zewnętrznym rezonatorem kwarcowym (zegarkowym) o częstotliwości 32,768 kHz. Czyli ATmega powinna być taktowana wewnętrznym szybkim oscylatorem, a jedynie ten timer zegarkowym. Kod: #include <avr/io.h> int...
mam jeszce jeden problem, według kodu z linku dondu #include <avr/io.h> #include <avr/interrupt.h> //definicja LED1 (do którego pinu podłączony LED1) #define LED1 PB0 //definicja LED2 (do którego pinu podłączony LED2) #define LED2...
Kilka pytań - bo kto pyta nie błądzi :-) Niby wszystko ładnie liczyło w przerwaniach - ale tylko do momentu kiedy zacząłem wywoływać Sub lub funkcję - wtedy zaczyna się resetować i zaczyna program od początku co sekundę ?? O co chodzi Teraz przestało mi nawet liczyć w przerwaniach....
Witam. Niedawno zaopatrzyłem się w mikrokontroler atmega8, postanowiłem więc trochę się pobawić w rożne projekty. Próbuje zbudować program który jest podobny do systemu automatycznego oświetlenia w domu na czujkach PIR. Otóż, chcę aby przyciski wirtualizowały czujkę w taki sposób...
Problem rozwiązany, zmieniłem tylko przerwanie które muszę włączyć, na compare i wektor do niego. Dzięki za pomoc :) Wstawiam tu kod, jeśli ktoś miałby taki problem jak ja, to może dojdzie co zrobić po kolei aby zadziałało ;) Czas jaki led ma migać ustawiłem programowo na wypełnienie...
Witam. Nie jestem zbyt biegły w programowaniu, więc zwracam się z prośbą o zmodyfikowanie kodu do naświetlarki z projektu [url=www.mirley.firlej.org/timer_fotogra... Chciałbym żeby usunąć z programu tryb podgląd i przycisk wywołujący go, a dodać trzy przyciski do których po dłuższym...
Dzień dobry, chciałbym opisać zegar szachowy mej konstrukcji. Pomysł zbudowania takiego zegara zrodził się w mej głowie, kiedy w okresie zainteresowania mikrokontrolerami chciałem stworzyć coś, co będzie sterowało wyświetlaczem LCD. Nie chcąc kopiować oklepanych pomysłów...
Witam. Potrzebuję W tym liczniku obrotów: [syntax=c]#include <avr/io.h> #include <stdio.h> #include <avr/interrupt.h> #include <util/delay.h> #include "HD44780.h" //tutaj ustaw własne zasady pomiaru #define POMIAR_ILOSC_IMPULSOW_NA_OBROT 4 //ilość...
Dziękuję za odpowiedź koledzy;) Moja wtopa z złym ustawieniem przepełnienia, już poprawiłem na TIMSK |= (1<<TOIE1) ; ale kod dalej nie działa. Na temat if-a to porostu wcześniejszy kod który sprawdzał wartość równą 4 a tak na szybkości ustawiłem na 1 i wygląda to bez sensu. Może...
Witam. Napisałem sobie prosty kod: /** * Timer - test */ #include <avr/io.h> #include <avr/interrupt.h> #define T0_INIT 0xFF //Wartość początkowa timera volatile uint32_t timer; //Odliczanie czasu przez timer /** * Przerwanie przepełnienia timera */ SIGNAL...
Witam, Musisz przeładowywać timer zaraz zgłoszeniu przerwania, wtedy błąd jest najmniejszy. W Twoim przypadku najpierw zmieniasz stan portów, później czekasz i w końcu ładujesz timer - w tym czasie timer też liczy, a więc pomiar czasu jest niedokładny. "Wyższa szkoła jazdy" to odjęcie...
Witaj Twoje obliczenia wyglądają na poprawne jednak wydaje mi się, że to cli() jest w złym miejscu. Z ustawień timera widze, że mierzysz "powolne" sygnały. Zatem twój program może nie zdążyć złapać przerwania od INT lub złapie tylko zbocze opadające, ale narastającego już nie, bo...
Witam! Napisałem program w C do mierzenia napięcia przez ADC w ATmega8, odczytuję z przetwornika wartość bitową od 0 do 1023. I dotąd jest wszystko ok, ale chcę sterować diodą na innym pinie(np PB1) w ten sposób, że gdy wartość odczytana będzie mniejsza od 500 to dioda ma nie świecić,...
Szukałem odpowiedzi na to pytanie, lecz nie znalazłem, wiec postanowiłem rozpocząć nowy temat. Otóż mam problem z liczeniem kanałów DMX, a dokładnie z timerem0 którego używam w tym celu. Mikrokontroler to jak w temacie ATmega8, częstotliwość taktowania 8 MHz, ustawienia sprzętowego UART...
w mainie w funkcji while(1), sprawdzam tylko warunek if(bit_is_clear(PIND,PD2)) rc5decode(); <-- TAK DZIAŁA ! jak wywołać tą funkcję w przerwaniu SIGNAL(SIG_INTERRUPT0) {}, ? probowałem tak: w mainie: GICR |=1<<INT0; w przerwaniu od INTO: SIGNAL(SIG_INTERRUPT0) { GICR...
Witam! Wykonałem układ do włączania silnika AC lecz mam problem przy sterowaniu. Zadaniem układu jest włączanie silnika na czas ustawiony dowolnie w sterowniku. Układ działa bardzo dobrze bez obciążenia, lecz po podłączeniu przekaźnika pod stycznik uruchomiający silnik czasem zdarza...
Witam Od dłuższego czasu pracuję nad własnym sterownikiem bramy przesuwnej. Może ktoś pamięta jak stawiałem pierwsze kroki w tym kierunku ;) W zeszłym roku opracowałem teraźniejszą wersję sterownika - dodałem SOFT-START, SOFT-STOP (wykorzystując PWM). I wszystkie aktualne problemy...
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...
Witam mam problem próbuję zrobić program na uC który będzie migał diodami naprzemiennie i w czasie zmiany ich piszczał z piezo. Zrobiłem już miganie i piszczenie. Wartości są takie na oko ponieważ w tym timerze nie da ustawić górnej granicy więc liczy sobie od zera do 0xFF. Proszę o pomoc,...
Dzień dobry, Nie mogę dojść dlaczego emulator DS2050 działa na wewnętrznym oscylatorze 8Mhz a na kwarcu 8MHz zawiesza się i resetuje gdy tylko chcę odczytać z niego wartości. Kondensatory przy kwarcu 22pF. Fusebity: gdy clock 111101:Ext (czyli kwarc) to nie działa poprawnie. Próbowałem...
Ok dzieki Piotrek. Przypomniales mi o parzystosci juz wszystko gra. male przeoczenie.. Ja stosuje metode uzupelnienia "white char" czyli spacja:P =>> Dar.El to jest moj poczatek :) (az taki laik nie jestem :P) .nolist .include "m8def.inc" .list ;******...
Witam serdecznie. Mam problem z ds1820. Mianowicie po zaprogramowaniu procka "ustawieniu wewnętrznego oscylatora na 8Mhz" programem przedstawionym poniżej wyświetla mi cały czas że "t1=+85.0`C". Proszę o pomoc. Z góry serdecznie dziękuje. #include <mega8.h> // 1 Wire Bus functions #asm ...
Witam! Chciałbym uzyskać przebieg o wypełnieniu 50% i f~33kHz w trybie CTC na pinie PB3 Atmega 8L (OC2). Podpiąłem wyjście OC2 na oscyloskop i ciągle stan wysoki. Pierwszy raz i na szybko potrzebuję wygenerować taki przebieg. Proszę o pomoc. Późno już i coś mnie chyba przyćmiło....
Dzięki za kalkulator i wyjaśnienie Napisałem kod z timer1 do odmierzania odcinków czasu po 10 sekund. 10 sekund świeci led i następne 10 sekund nie świeci i tak w kółko. Oto kod: ...................... Jaki błąd popełniłem w tym kodzie? ............ Ale taki sam efekt. Przecież...
Mam jeszcze jedno pytanie Jak chciał bym zmierzyć prędkość impulsów np: w m/s , to muszę użyć Timera - ale jak... pomożecie? Nie mierzy się prędkości impulsów. Impulsy nie poruszają się, lecz trwają; mozesz zatem zmierzyc czas trwania takiego impulsu (co w tym przypadku...
Witam na wstepie zaznacza, że problem moze dla innych banalny, mnie przyspozył sporo problemów..., siedze juz od południa nad tym i bez rezultatu, program ma dekodowac informacje czasu (DCF77), całosc pracuje w atmedze8, jest to tylko rdzeń odbioru DCF-a, oscylator wewnetrzny 8MHz, pierwsza sprawa,...
Napisalem program obrotomierza. Uklad po spadku obrotow ponizej ustawionej wartosci mial wlaczyc alarm. Uklad ma wspulpracowac z dwoma czujnikami indukcyjnymi (dwa obrotomierze) zrealizowalem to na timer0 i timer1. o ile na timer1 dziala to na timer0 dzieja sie dziwne rzeczy. Jezeli alarm jest ustawiony...
Witam Zrobiłem sobie zegarek na ATmega8. Ustawiłem wewnętrzny "kwarc" na 8Mhz ale sekunda trwa u mnie krócej o kilkanaście ms i po 1 minucie zegarek śpieszy kilka sekund :/ powiedzcie mi co tu jest źle. przecież preskaler jest dobrze ustawiony. #define cbi(add,bit) ((add)...
Nadszedł czas na generowanie dźwięków przez PWM. Czytałem to: i sporo innych tematów na elektrodzie. Chcę przerobić ten temat od podstaw i mam na razie 2 pytania: 1. Który PWM powinienem wybrać by generować dźwięki WAV? czy Wydaje mi się że ten pierwszy...
Spróbuj zrobić od przepełnienia. W proteus'ie też port zmieni raz stan i nic. volatile int flaga; #include <avr/io.h> #include <avr/interrupt.h> int main (void) { DDRC = 0xff; // Ustaw jako wyjście LED TIMSK = 0x04; // Włącz przerwania przepełnienia (1...
Trochę dziwnie napisałeś ten program, pozwoliłem go sobie trochę przerobić. Sprawdź konfigurację portów żebyś nie uwalił sobie procka, i napisz czy poniższy program rozwiązał Twój problem. Kod: [syntax=basic4gl] 'Tester napiecia na AVR ' ' - zegar wewnetrzny 1 MHz ' - górny...
Poczytałem trochę bo właściwie nie wiedziałem nic, na temat timerów i napisałem ich subrutyny. Podczas liczenia prędkości zmienne czas_s/czas_ch będę mnożył przez 0.004 i dzielił przez podaną drogę. Co ty na to? KOD: '***********PROGRAM POMIAR PREDKOSCI************ '***************....
Witam, napisałem program na moja atmege8l który ma za zadanie co 5s zapalać i gasić diodę z wykorzystaniem 16bitowego Timera1 w trybie CTC. Wyliczyłem, że jeśli mam uC taktowany 8MHz to przy zastosowaniu prescalera 256 flaga OCF1A powinna być ustawiana co 1hz, przy ustawieniu rejestru OCR1A...
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...
Dzień dobry. Mam problem z ustawieniem odliczania czasu za pomocą timera w Atmega8. uC taktowane kwarcem 16MHz, preskaler 64, w kalkulatorze otrzymałem wartość 24999 jeżeli pożądane jest 100ms. if zaznaczony slashami odpowiada za odczyt ilości zliczonych impulsów i po przekroczeniu zadanej...
Tak wiem jestem okropny w te klocki. Więc tak, teraz używam timera do przerwania. Mógłbyś mi wytłumaczyć czemu mam nie używać free runu? Floaty zastąpiłem intigerami. Efekty: piksele wyświetlają się na określonych poziomach. Niestety są między nimy spore odstępy. Poza tym gdy są...
Witam, skonstruowalem zegar widmowy, udalo mi sie zaprogramowac napis (wyglada przyzwoicie) ale pojawil sie problem, wyswietla mi sie, tzn gdy wlaczam diody na wyliczonych pozycjach (do 60) jest okej, natomiast gdy probuje wyswietlic cos na wyzszych katach (powyzej 60) jest problem i nie wyswietla sie...
Witam. Mam straszny problem z ATMEGA8 (zresztą podobne rzeczy działy się w ATMEGA16). Mianowicie, robię sobie prosty sterownik. Posiada on m.in. 4 przyciski, zrobione w ten sposób, że są one z jednej strony podłączone do wejść PIND.0 – PIND.3. Wejścia te podłączyłem również...
Po przeczytanie manuala od atmegi8 mam już ustawione przerwanie od int0 aby wykrywało logiczną zmianę (nie jestem pewny czy powinno być tak czy na zbocze opadające lub rosnące). Do układu mam podłączony LCD ale mam także komunikację po rs232 z komputerem więc wysyłam sobie przez uart....
Witam, ostatnio zająłem się pisaniem stosunkowo prostej aplikacji na AVR ATmega8, potrzebnej mi na studia. Na celu miałem też trochę lepsze poznanie AVR. W czym problem : W moim programie chciałem przetestować typowe zachowanie uC, napisałem kilka prostych funkcji, włączyłem przerwania,...
Jak nie radzisz sobie na razie z tym timerem to przynajmniej nie nadużywaj bezpodstawnie Wait. To co Ci zaproponuję nie zwalnia Cię od ogarnięcia timerów! Ustal sobie jakie dopuszczasz maksymalne opóźnienie pętli i użyj go tylko raz np. 10ms. Za rozwiązanie, może nie do końca eleganckie,...
Niedoszły programista już się odzywa. Przerwanie zajmuje 65 cykli ale ponad połowa wykonywana jest co drugie wejście więc średnio trwa ok. 40 cykli. Trochę dużo. Z tymi przekaźnikami to racja. Obecnie nie ma zabezpieczenia na wypadek gdyby ktoś dał maksa od razu, ale chodzi o to że...
Oj coś koledzy krążycie wokół tematu a nie widzę nigdzie pełnej odpowiedzi. Niektóre są za to błędne albo upraszczające. F_CLK_ADC, to tak jak ktoś pisał, tylko częstotliwość taktowania ADC. A że jest to przetwornik typu SAR (z sukcesywną aproksymacją) to konwersja 1 próbki trwa...
Witam serdecznie, jestem początkującym jeśli chodzi o programowanie w c na avr. Celem mojego zadania jest zaprojektowanie termostatu z użyciem czujnika temperatury dwóch diod sygnalizujacych, przycisku do programowania termostatu oraz przekaźnika jako elementu wykonawczego. Poniższy kod napisałem...
Chwila. Timer bez preskalera, częstotliwość procesora nieznana, załóżmy, że 1 MHz (nieistotne). Timer zgłasza przerwanie co 21 cykli zegara, czyli ATmega zajmuje się na okrągło obsługą przerwań timera, nie mając szans obsłużyć żadnych przerwań o niższym priorytecie (ADC). Tak,...
| = (1<<CS00). Jednak ja wciąż polecam użyć Timera1 i jego trybu CTC, wtedy na wyjściu OC1A. Nie potrzeba wtedy obsługiwać żadnego przerwania, ustawiasz wyjście OC1A w tryb TOGGLE ( rejestr TCCR1A ) i będzie ono zmieniało stan w rytm przepełnień timera. A timer będzi liczył (przez...
Witam Wpadłem na niecodzienny sposób zrobienia generatora PLL z użyciem atmegi tylko nie jestem 100% pewien czy tak się da zrobić więc proszę o weryfikację tego dziwnego pomysłu :) Pomysł jest następujący. Potrzebuję zrobić generator na HCT4046 w zakresie około 1MHz. Układ ma w...
Witam, potrzebuje stworzyć prosty układ obsługujący ultradźwiękowy czujnik odległości firmy Mobot. Wynik wyświetlany jest na wyświetlaczu w mm. Korzystam z bibliotek TWI_Master od AVR oraz jakiś ogólnodostępnych hd44780. Dodkowo korzystam z biblioteki dostarczonej przez producenta: Sonar_TWI.c: [syntax=c]/...
Macie panowie racje. Generalnie to dawno temu zaczlem przygode z bascomem wtedy na 89C4051 ale poleglem i dalem sobie spokoj na wiele lat. Teraz wrocilem do tematu. Zaczalem od prostackich programow gdzie np delay 1sekunda sluzyl mi do mrugania ledami itd. Wstawialem takich delai wiele i mi diodki mrugaly...
Faktycznie działa tak samo, ale problem pozostał. Nadal 1. kolumna jest przesunięta na koniec. Dodano po 34 Problem rozwiązany, wystarczyło dodać delay po zmianie stanu na porcie B. Niby 1 us ale wpływa na działanie programu. Najwidoczniej bez opóźnienia nim stan się ustabilizował to...
Witam Jestem w trakcie robienia zagara nixie ze strony Mikrokontrolerem jest Atmega8 a wkład zrobiony na Bascomie. Potrzebuję dodać opcję chwilowego wyłączenia lamp, w celu zabezpieczenia lamp przed zatruciem. Bardzo proszę o pomoc. To kod: '************* Konfiguracja uC ***************** '********************...
.org 0x0000 ; ustawia adres w pamięci programu rjmp reset ; skocz do etykiety ... ; wektor przerwania timer 1 .org 0x0005 rjmp led_off ; skocz do obsługi przerwania ; w tym przykładzie początek programu głównego reset: ; Jako pierwsze ustawienia stosu (w asemblerze jest...
Mam problem bo probuje uruchomic timer w trybie CTC i podczas debugowania widze ze program w ogule nie wchodzi mi do obslugi przerwnia (SIG_OUTPUT_COMPARE1A) moze czegos nie "urchumomilem"?Korzystam z PDF'a tegoz atmela ale nie wiem co jest zle... Genelanie w programie chcialem osiaganac przerwanie...
atmel.com nie działa ? ;-) TOIE0: Timer/Counter0 Overflow Interrupt Enable When the TOIE0 bit is written to one, and the I-bit in the Status Register is set (one), the Timer/Counter0 Overflow interrupt is enabled. The corresponding interrupt is executed if an overflow in Timer/Counter0 occurs,...
Witam, Szukałem po forum jakiejś pomocy, ale w archiwum nic nie znalazłem... Ze strony producenta atmel ściągnełem skrypt do obsługi rc5. Chce poprzez pilota sterować pracą mojego urządzenia, ale na chwile obecną chce zapalac/gasic diode na pinie PB1. Do uC podłączony jest odbiornik...
Witaj, No save spokojnie możesz użyć.... pod warunkiem, że nie korzystasz w obsłudze przerwania z instrukcji Bascoma bo jeśli tak to nie odkładając rejestrów na stos, zgubisz ich wartości i w najlepszym przypadku będą się działy różne rzeczy. Ja bym napisał wstawkę w asemblerze odkładając...
Podczas programowania układu natrafiłem na problem dotyczący sterowaniem PWM przy pomowy wewnętrznego timera. Port wyjściowy timera steruje kluczem tranzystorowym do którego podłączony jest wentylator 12V. Oto moja funkcja ustawiająca rejestry timera. void pwm() { //OC1A...
Niedokładnie przeczytałeś. W zakładce nawigator: Config Timer- uwaga! po ustawieniu prascale licznik natychmiast zaczyna zliczanie. Można użyć start Timerx i stop Timerx Np. Config timerx, prescale 'timer zaczyna liczyć stop Timerx 'timer stoi- ale już coś zliczył Timerx=y 'timer ma...
Witam, zacząłem bawić się trochę uC z rodziny AVR, to pierwsze mikrokontrolery z którymi mam styczność oprócz krótkiej znajomości z ADuC 8051 na zajęciach. Po ogarnięciu podstaw sterownia pinami I/O chciałem zapoznać się z timerami. Timer 0 bez problemów, za wiele tam nie ma. Jednak...
Chciałem zrobić program który po wpisaniu punktu jakiegoś na płaszczyźnie obróci serwo w kierunku tego punktu. Próbowałem użyć biblioteki math i funkcji atan(k), lecz z jakiegoś powodu sposób ten nie działa. PWM i timer są dobrze odpalone, bo przy bezpośrednim sterowaniu wartością...
dejmos , po wgraniu Twojego kodu program działa lepiej, drgania styków jednak dalej występują i raz na jakiś czas serwa nie zawsze zareagują tak jak powinny, szczególnie przy dłuższym przytrzymaniu switcha. pbuhne , o ile Cię dobrze zrozumiałem, kod po przerobieniu z przerwaniami od...
Dobra, skończyłem jak na razie "pracę" nad programem. Więcej było gapienia się w niezrozumiałe funkcje i polecenia ale już prawie program czaje w całości :) Oznaczyłem go jako V.2.2 ^^ Zmiany: *Możliwość ustawienia skrajnych temperatur uruchamiających alarm *kasowanie alarmu poprzez...
Odnośnie sposobu nr 2 - czyli chodzi o takie wykorzystanie: ostatni listing? I wtedy przerwanie, a w ramach obsługi przerwania po prostu odpowiedni interwał czasowy? Nie do końca wiem jak mam użyć przerwań. Póki co, to o ile się orientuje, to aby uzyskać zliczanie impulsów timera co...
Witam, mam zamiar wykonania naświetlarki UV do wykonywania płytek PCB metodą fotochemiczną oraz solder maski. Kupiłem sobie lampę UV taką do lakierów do paznokci i z niej chciałbym wykonać typową naświetlarkę PCB z nową obudową wykonaną z PCV. Jako że świetlówki i układ do zasilania...
Witam Mam problem z komunikacją między dwoma uC. Dane są odbierane, jednak nie zgadzają się z wysyłanymi. Atmega32 - pełni funkcję Mastera #define VUART 38400 #define VUBRR F_CPU/(VUART*16)-1 #define T0_start 1 #include <avr/io.h> #include <util/delay.h> #include...
Witam. Potrzebuję odczytać kod RC5 z wyprowadzenia INT1 (PD3) Atmega8. Tymczasem w znanym Bardzo ważna uwaga: polecenie GETRC5 jest "fabrycznie" przypisane do wejścia INT0 procesora i NIE MOŻE współpracować z jakimkolwiek innym wejściem, nawet jeżeli jest to wejście przerwania sprzętowego....
Witam, proszę o wyjaśnienie zasady działania sygnału PWM [syntax=c]int main(void) { DDRB |= LED1 | LED2; //Wyjścia LED //Inicjalizacja Timer1 (PWM) TCCR1A |= (1<<COM1A1) //Zmiana stanu wyjścia OC1A na niski przy porównaniu A | (1<<COM1B1) //Zmiana stanu...
Davide Gironi skonstruował automatyczną nawijarkę do przystawek gitarowych. Jeśli ktokolwiek z Was wykonywał kiedyś taki pick-up, to wie, jak trudne i jednocześnie, jak ważne jest dobre nawinięcie jego uzwojenia. Zaprezentowana nawijarka CNC pozwala istotnie uprościć ten proces. Układ...
Na razie włącz wewnętrzny oscylator na 8MHz. Jak programujesz a pomocą BASCOMa, to w FuseBitach powinno być ustawione "Internal RC oscillator 1MHz" (w innych środowiskach tez tak będzie ustawione ale nazwane to będzie inaczej). I zmień to na 8MHz. I nic więcej nie ruszaj. W ATMega8 rezonator...
Mam taki problem: chcę w programie wykorzystywać przerwania od przepełnienia dwóch timerów (0 i 1). W timer0 mam obsługę wyśw. LED i opóźnienie dla klawiatury a w timer1, z założenia wywoływanym co 100ms, coś jakby zegar z minutami i sekundami, choć nie jest to najważniejsze bo to program...
Podczas programowania układu natrafiłem na problem dotyczący sterowaniem PWM przy pomowy wewnętrznego timera. Port wyjściowy timera steruje kluczem tranzystorowym do którego podłączony jest wentylator 12V. Oto moja funkcja ustawiająca rejestry timera. void pwm() { //OC1A...
Ostatnio oprogramowałem sobie aparaturę RC dwukanałową proporcjonalną . Zasada działania : Wysyła 4 paczki 8 bitowe niosące informacje o synchronizacji, wybranym potku/serwie, o nastawie potka/serwa, sumę sprawdzającą adres i nastawę potka/serwa Problem zaczyna się w momencie...
Dzięki Panowie za pomoc, poradziłem sobie z konfliktem sygnałów. Zastosowałem 2 przerwania zewnętrzne które odczytują wartość licznika, oraz 1 przerwanie od przepełnienia w którym inkrementuję odliczanie sekundy. Pozostało jeszcze wysłać zebrane dane do jakieś pamięci np. karta SD....
TCCR0 = _BV(x<<CS00); Źle użyłeś makra _BV. _BV(x) jest równoznaczne z ( 1 << x ), czyli w Twoim przypadku próbujesz wykonać podwójnie przesunięcie bitowe. Jeżeli x = 3 (CS00=0): _BV(3<<CS00) = _BV(3) = (1<<3) = 0b00001000 czyli TCCR0 będzie...
Dziwne, jeśli wyłączysz przerwania to procesor Ci do żadnego nie wejdzie. Zgadza się, wyświetla się tylko tekst bez odświeżania. Druga sprawa konfigurujesz timer 1 a wektor przerwania masz od timera 0. Chodzi o ten fragment? /* ustawienie TIMER0 dla F_CPU=11,0592MHz */ Jeżeli...
Hej, bawilem sie timerem w CTC i ustawilem preskalar na 64, procek jedzie na 1MHz wew. zegarze. Fusebity ma ustawione na l:E1 h: D9. Mimo ustawien procek rozjezdza sie z zegarkiem 10s na kaze ~30m :/ Czy cos zle ustawilem ? [syntax=c] #ifndef F_CPU #define F_CPU 1000000 // 1 MHz #endif #include...
Witam, ponieważ jestem można powiedzieć, że laikiem w temacie programowania Avr-ów w C, to mam taki problem z którym nie mogę sobie poradzić (a kombinowałem na różne sposoby), mianowicie: Konstruuje sobie sterownik LCD2USB wstępnie na płytce stykowej i on działa. Skonstruowany jest według...
1. Układ wygląda tak; -jest 7 przełączników, 3 przyciski, -10 diod, które; *1-3, 5-7 mają po prostu gasnąć po przełączeniu hebla i na określony czas ustawiać PWM na konkretom wartość - przypisaną dla każdego przełącznika (tutaj PWM ma się ustawić tylko raz, a potem jak już dioda...
Witam wszystkich, rzadko pisze bo zwykle jakoś sobie radzę, ale po trzech dniach walki jestem zdesperowany i zaczynam szukać pomocy u Was. Zrobiłem emulację odbierania RS232 na nóżce INT0. Zbocze opadające oznacza że mamy bit startu. Tak startuje odbieranie: [syntax=c] ISR(INT0_vect){...
Witam... "Guru" nie jestem ale powiem ci, że nie musisz wykożystywać dwóch niezależnych timerów... Można ustawić jeden timer i dwa wyjścia (OC1A i OC1B)... Każde wyjście może być odmiennie skonfigurowane w obrębie jednego timera... Tzn. jeden np OC1B może być odwrócony względem...
Zumek zaproponował nam prace timera w trybie CTC (Clear Timer on Compare match) - zerowanie licznika (i wywołanie przerwania OC1A) po wykryciu zgodności rejestru TCNTn z OCRn. Można w ten sposób "skrócić" timer do potrzebnej wielkości. Odpowiada to mniej więcej "skracaniu" zakresu liczenia timera...
Jeśli potrzebujesz krótkich czasów to wystarczy timer 8-mio bitowy do dłuższych czasów 16-to bitowy. No zgadza się - małe wartości można przechowywać na 8-bitach. Taktowanie masz z tego co sobie ustawisz jako źródło zegara w fusebitach. Może to być kwarc podpięty pod uC, zewnętrzny...
Hm.. nie do końca jestem przekonany, czy byłoby to sensowne, Brak możlwości ustawienia wyzwalania... Skąd kolega wie, czy wyzwalał by się zboczem/poziomem? (Data sheet milczy), poza tym, brak tam jest bloku usuwającego zakłócenia jak w pozostałych timerach... Jest to dość ciekawe i jak ktoś...
Witam Mam problem z ultradźwiękowym miernikiem odległości na atmedze8. Generacja częstotliwości przebiega prawidłowo, na odbiorniku za torem wzmacniaczy otrzymuję widoczny syglał odbity od przeszkody. Błędy pojawiają się przy komparacji sygnału z napięciem referencyjnym. Wynik jest...
t2 może pracować taktowany z CLKio (AS2 w ASSR skasowany) lub zegarem pochodzącym z pinu TOSC1 (który pracuje łącznie z TOSC2). Asynchroniczość polega na tym, że oscylator na TOSC może pracować na innej częstotliwości niż zegar procesora. Np procesor może iść na zegarze 8MHz (wew.RC),...
witam ponownie zrobiłem tak aby program w timerze był jak najkrótszy wszystko fajnie działa tylko że jak nastawiam godziny lub minuty to tylko do 8 później się zacina i nie da się nic zrobić. Czy mógłby ktoś zerknąć na mój kod i powiedzieć co ma źle. $regfile = "m8def.dat"...
Razem z procedurą odbioru uruchamiasz timer ustawiony na okres na np 2-3 czas transmisji. Jeśli odebrałeś prawidłowe dane zatrzymujesz timer w innym przypadku timer zgłosi przerwanie i masz informację o błędzie.
Próbowałem ustawić prescale timera 1 na 8 co powinno dać przerwanie co 32,768ms i w przerwaniu zwiększałem liczniki mikro\milisekund co eliminowałoby opóźnienie przed zmianą wartości licznka. Wynik bez większych zmian - również około 1s\2h, może minimalnie mniej. Przerw: Timer1...
nie wiem czy dobrze rozumiem, czyli przy takiej konfiguracji jak podałem w pierwszym poście uC bedzie cały czas generowal sygnał 36kHz na nóżke PB1(OC1A). i podczas wysyłania RC5 jeśli będę musiał wysłać stan niski, to na tą chwilę potrzebuje wyłączyć timer, tak? po drugie, jak...
Dodaj mu pare funkcjonalnosci i bedzie fajny - np. pomiar temperatury w piekarniku, mozliwosc wlaczania urzadzenia o okreslonej porze, wyswietlanie czasu. Mam taki timer fabryczny w piekarniku elektrycznym, niestety jakis niezbyt rozgarniety inzynier go robil, bo pomimo 4 przyciskow trzeba miec co najmniej...
kilka dni temu powróciłem do pisania tego programu, oczywiście elektronika dział niezwykle pomocne był wskazówki janbernat'a i oczywiście została powiększona o moduł kluczujący silniczek (tranzystor i rezystor :D) kod programu: #include <avr/io.h> // dostęp do...
a możesz jakiś najprostszy przykład podać odmierzenia za pomocą timera np. 1 sekundy, próbuje odmierzyć 1 sekundę ale nie bardzo umiem posłużyć się timerem ustawiłem timer0 tak: Config Timer0 = Timer , Prescale = 256 ale dalej nic nie wymyśliłem
Problem pewnie leży w procedurze. therm_read_temperature(temp); Tam zapewne masz jakiegoś delay-a ustawionego (na czas potrzebny na konwersje temperatury przez DS-a). Musiał byś pokombinować, żeby przebudować tą funkcję a delay-a wbudować najlepiej w obsługę przerwań z timera z...
przeczytaj mój post dotyczący jak korzystać z manuala: przeczytaj go proszę, zajrzyj do manuala i postaraj się sprawdzić jak poustawiać bity. Aby użyć timera jako licznika impulsów podawanych np z przycisku czy czegokolwiek innego, należy go podpiąć pod odpowiedni pin (sprawdź...
Oddzielam temat od poprzedniego ze względu na inną naturę problemu. Master generuje przerwanie od Timera2 co 1.15ms. Transmisja SPI ustawiona jest na CLK/4 co przy ośmiu bitach daje czas transmisji równy 0.004ms. Co jedno tyknięcie timera wysyłany jest jeden bajt - zatem 0.004ms co 1.15ms....
Witam, tworzę menu dla mojego termometru z wykorzystaniem 3 przycisków. Sęk w tym, że nie chcę to za bardzo działać i nie wiem za bardzo co powoduję, że nie mogę kontynuować programu. Sprawa wygląda tak, że mamy teoretycznie jak na razie zdefiniowane 2 ekrany, które wyświetlają temperaturę...
Bo nie tak się używa przerwań zewnętrznych. Można po pojawieniu się przerwania od zbocza narastającego wystartować timer, w przerwaniu zmienić na zbocze opadające i gdy pojawi się zbocze opadające zatrzymać timer, odczytać jego stan do zmiennej volatile wykasować i ponownie ustawić na...
NIe mam innego kwarcu, będę musiał kupić. Sprawdziałem jeszcze ustawienie na wewn kwarcu ( to co mi podałeś 1 Mhz nie zadziałało, nic się w konsoli nie pokazywało) uznałem że to może być przez to że ta liczba nie dzieli się całkowicie przez Baud i 16. Ustawiłem kwarc wewn na 8 Mhx...