Usiadłem przy Atmedze328P i uruchomiłem SPWM dla Twojego przykładu. Zdefiniowałem następujące wyjścia sygnałów: - PD0 - sterowanie lewym dolnym MOSFETem mostka H - PD1 - sterowanie prawym dolnym MOSFETem mostka H - PD5 - sterowanie lewym górnym MOSFETem mostka H - PD6 - sterowanie prawym górnym MOSFETem mostka H Wyjścia PD5 i PD6 są niezmienialne, ze...
Przeanalizowałem działanie układu timera 4541 według informacji dostępnych z katalogu, a ponieważ dalej miałem pewne wątpliwości, to jeszcze dla pewności zrobiłem próbę, bo akurat miałem ten układ. Nie pamiętam dokładnie co Ci odpisałem na PW, ale mogę teraz powiedzieć, że schemat zamieszczony przez Ciebie w tym wątku jest poprawny (z wyjątkiem uwag...
A może wyłumaczyć mi ktoś tak jaśniej niż whelpie bascoma ;) co to jest ten prescaler i co on dzieli. Może tak po kolei jak twój program widnieje: 1. Jeżeli PORTB jest przeznaczony do obsługi LCD to nie konfiguruj go w ogóle w stylu jaki podałeś w pierwszym poście. Config Portb = &B11111111 : Portb = &B11111111 ===> źle!!! Może to powodowac zakłócenia...
https://obrazki.elektroda.pl/2553827400_... Cześć, pod tą niecodzienną nazwą tematu prezentuję projekt małego, automatycznego odtwarzacza muzyki do umilania posiedzeń na toalecie. Oczywiście to jedno zastosowanie, w innych sytuacjach pewnie też może się przydać ;) Głównym założeniem była niewielka złożoność, banalny interfejs, bezobsługowość...
Mało danych. Chcesz, żeby dioda migała na przerwaniach? Czyli przerwanie włącza, następne wyłącza - tak to zrozumiałem. Co do obsługi T0 musisz zrobić obsługę przerwania od adresu 0x0BH (czyli wyzwalanie przez flagę TF0). Wstaw coś takiego po LJMP start na początku: [syntax=text]ORG 0Bh ; start przerwania CLR TF0 CPL P1.4 ; zmiana stanu wyjścia sterującego...
https://obrazki.elektroda.pl/4868547700_... Dzisiaj zrealizuję projekt na malutkim, ośmionóżkowym mikrokontrolerze PIC w obudowie DIP8 oferującym skromne 3.5kB pamięci Flash. Co więcej, do komunikacjami z peryferiami użyję tylko dwóch pinów - całość opierać się będzie o I2C. W oparciu o nie uruchomię kontroler wyświetlacza/klawiatury oraz...
http://obrazki.elektroda.pl/3643677800_1... Witam wszystkich. Przedstawiam moją pierwszą w życiu autonomiczną maszynę-robota typu "linefollower", którego nazwałem "ERROR 1". Mimo kilku ewidentnych słabości jestem z niego naprawdę zadowolony. Elektronika składa się z dwóch płytek: - Płytka z sensorami, zasilaniem diod i rezystorami podciągającymi....
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
https://obrazki.elektroda.pl/3753373600_... Mikrokontrolery, zwłaszcza ośmiobitowe, wydają się być generalnie łatwymi w użyciu układami. Mamy bowiem do dyspozycji prosty komputer i garść zwykle mało skomplikowanych peryferiów. Wystarczy napisać odpowiedni program i tyle. Ale nawet te proste z natury układy mają funkcje i możliwości,...
https://obrazki.elektroda.pl/1570592100_... Witajcie, zapraszam na relację z konstrukcji zegara na PIC18F2550 napisaną w formie tutoriala, wszystko krok po kroku. Pokażę tu jak i z czego tworzyłem prosty projekt DIY na prośbę jednego z czytelników. Wykorzystamy tu wyświetlacze 7-segmentowe, rejestr przesuwny, obsłużymy przyciski a...
http://obrazki.elektroda.pl/9079980500_1... Na wstępie chciałbym przybliżyć, skąd taka a nie inna nazwa nadana przeze mnie temu projektowi. Prace rozpoczęły się w momencie zapotrzebowania na minimum dwa zsynchronizowane generatory małej częstotliwości. Ponieważ zakres przestrajania jaki mnie zadowalał ograniczał się do 100Hz przy rozdzielczości...
http://obrazki.elektroda.pl/9303655200_1... Witam, Tu: http://www.elektroda.pl/rtvforum/topic33... znajduje się opis powielacza czasu automatu schodowego. Obiecałem tam, że na bazie tamtego układu opracuję „inteligentny” automat schodowy, i oto jest :). Jego „inteligentność” jest zawarta w założeniach...
http://obrazki.elektroda.pl/2126980700_1... System monitorowania środowiska, oparty o interfejs LoRa IoT składa się z stacji bazowej zbudowanej z wykorzystaniem modułu Arduino Mega z bramką LoRa oraz zdalnych stacji opartych na Arduino Feather, które łączą się z stacją bazową poprzez radiowy interfejs LoRa. System pozwala na monitorowanie...
http://obrazki.elektroda.pl/5613819300_1... Witam, Chciałbym przedstawić swoją konstrukcję, która była tematem mojej pracy na studiach inżynierskich. W dzisiejszych czasach prawie nikt już nie bawi się bramkami logicznymi, licznikami, rejestrami, które zostały wyparte przez sterowniki PLC. Urządzenia te wykorzystujemy do wykonywania...
Czy jest możliwe że ilość impulsów na wyjściu 2Y w ciągu sekundy wynosi 60? Jeżeli nie to co należałoby zmienić na schemacie aby ilość impulsów przy zastosowanym rezonatorze wynosiła 60? Wprowadzenie Dziękuję za kolejne pytanie dotyczące możliwości uzyskania dokładnie 60 impulsów na wyjściu 2Y w analizowanym układzie. Obecnie układ CD4060 taktowany...
(at)ElektrodaBot moduł CBU z BK7231N przechodzi w stan uśpienia po 6 sekundach. za mało czasu aby połączyć się z siecią WiFi. Jak go odzyskać? Wstępna ocena dostępnych informacji . Z udostępnionych szczegółów i przykładowych odpowiedzi wynika, że moduł CBU oparty na platformie BK7231N przechodzi w stan niskiego poboru mocy (głębokiego uśpienia) około...
Po kilku godzinach program odpaliłem ..... podświetlanie się załącza dopiero po naciśnięciu kilka razy klawisza, monitor pokazuje start i numery naciśnietych klawiszy i to nie za każdym naciśnięciem. nie wiem jak "zatrzymać" dany ekran menu żeby zrealizować inna funkcje np; zmiana stanu wyjścia /* * sterownik który wykończy mnie i innych ..............
Dobra światełka w końcu działają po 2 wybuchach złości na biurko, na razie tylko 2 tryby i bez generatora liczb losowych, ale raczej to rozwinę... po jakimś czasie: Kod bez błędów: [syntax=c]/* * main.c * * Created on: 14 wrz 2023 * Author: Dzieci */ unsigned char jasnosc = 32; //określa jasnośc diod #include <avr/io.h> #include <util/delay.h>...
(at)tomatos_st ... Faktycznie, zautomatyzowany system obsługi repozytoriów na stronie internetowej nie aktualizował prawidłowo opisu wersji, stąd owa "niespodzianka". A co z rozwaleniem ustawień przez nową wersję oprogramowania ? Czy to tylko u mnie ? Moduł zarządzania użytkownikami w programie PRiMAtool (bo zakładam że o takiej formie zarządzania...
Co ty opowiadasz... Mamy enkoder, który generuje max kilka impulsów na sekundę i to ma być problem? No właśnie zależy od enkodera. Dlatego zapytałem się w pierwszym moim poście. Ja kiedyś trafiłem na taki enkoder z jakiejś wieży albo wzmacniacza, że miał bardzo dużo impulsów na obrót. To miało chyba symulować 'analogowosc'. Jak zrobiłem odczytując...
Kiedyś zrobiłem projekt odtwarzacza dzwonków z nokii na tiny26. Użyłem timera i wyjścia PWM. Zmiana częstoliwości następowała przez przekonfigurowanie timera odpowiedzialnego za PWM. Trzeba było tylko zrobić mechanizm anty glitch żeby nie było stuków w głośniczku prze zmianie częstotliwości.
Czy zamiast dwóch układów 555 - jednego w roli mostka Shmidta i jednego w roli timera można to zrobić na jednym układzie 555? Nie. Tu jeśli chcesz zachować topologię układu to zastosuj 556 (dwa 555 w jednej obudowie). Jeśli zostanę przy dwóch 555 to użyje tandemu 556 - dziekuje. Nie wiem, co rozumiesz przez "mostek Shmidta" - jest " Tak chodzi o przerzutnik...
Par wrócił ponownie na warsztat do poprawek. Największa bolączka to niestety efekt stroboskopu przy sterowaniu dźwiękiem. Poprawione / dodane zostało: - PWM, - sterowanie dźwiękiem, - zmiana kolorów timerem, - dodany kolor biały, - ograniczenie powtarzalności sekwencji. PWM Przy poprzednich próbach nie zwróciłem uwagi na wyjście przy poziomie 255. Efekt...
Witam Napisałem poniższy prosty program który po 6 zmianach stanu na nóżce int0 (PB2) wykonuje przerwanie. include "tn15def.inc" .def acc = r16 ;nadanie rejestrowi r16 nazwy symbolicznej .def licz1 = r20 .def licz2 = r21 .def licz3 = r22 .org 0x00 rjmp pocz .org 0x06 rjmp timer0 .org 0x0B ; -- POCZĄTKOWE USTAWIENIA SPRZĘTOWE -- pocz: ldi...
Wielkie dzięki za tę odpowiedź, chyba tego potrzebowałem. Czy mogę zrobić tak, że przycisk z timera będzie jednocześnie przyciskiem z tego układu ? Pozdrawiam. Można to zrobić np.tak: http://obrazki.elektroda.pl/7680550100_1... Wejście CP przerzutnika 4013 można wyzwalać z jednego z trzech wyjść (WY1÷WY3). Użycie WY3 zmienia stan przerzutnika...
Mam "drobny" kłopot ze sterowaniem wyjść w INT-IORS polegający na chwilowym wyłączaniu stanu wysokiego na wyjściu przy zapisie danych do pamięci FALSH centrali z programu DLOADX. Centrala i DLOADX w wersjach 1.17. Na INT-IORS są obok siebie dwa wyjścia sterowane przez Wskaźnik czuwania. Niedawno jedno z tych wyjść "przewlokłem" przez dodatkową logikę...
[syntax=csharp]#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 PB1 //definicja początkowej wartości timera #define timer_start 6 //zmienna pomocnicza-licznik używana w przerwaniu volatile uint8_t cnt=0; void...
ok, próbowałem odpalić timer0 i wielkie nico mi z tego wyszło :) Może ktoś znajdzie błąd w kodzie. Sprawdzałem pod symulatorem AVR Simulator i w ogóle zegar nie startuje. #include <avr/io.h> #include <avr/interrupt.h> #define TIMER0_INIT0x00 unsigned char flag; int main(void) { DDRB = 0x04; //PIN 2 portu B na output TCNT0 =...
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 main (void) { DDRD |= (1 << 0);...
System event może dla timera robić dwie rzeczy - być źródłem zegara - to już zrobiłeś, ale oprócz tego każdy timer ma rejestr (CTRLD), w którym można powiązać kanał zdarzeń z akcją, jedną z dozwolonych akcji jest zmiana kierunku zliczania góra/dół (UPDOWN). Zresztą już to musiałeś wykorzystać, bo jedną z akcji jest QDEC, czyli dekoder kwadraturowy....
Witam! Mam problem z timerami w języku C (w moim projekcie) dlatego zwracam się do Was o pomoc. Napiszę od początku, żeby przedstawić o co mi chodzi. Zbudowałem kiedyś sterownik taśmy led RGB oparty na mikroprocesorze attiny2313, w którym za pomocą jednego przycisku zmieniam podstawowe kolory na pasku ledowym (czerwony, zielony, niebieski) oraz ich...
Gotowca nie dostaniesz bo zaraz zaczną krzyczeć. Zasada jest prosta PWM to modulacja szerokości impulsów. W Atmega8 szerokość impulsu jest regulowana za pomocą wartości w rejestrze OCRn. Po włączeniu trybu PWM timer zaczyna liczyć gdy wartość rejestru TCNTn (licznika) przekroczy wartość zapisaną w rejestrze wtedy na wyjściu PWM OCn nastąpi zmiana ze...
Witam. Mam problem na który sensownej odpowiedzi nie znalazłem, w nocie katalogowej także nie ma opisanego takiego przypadku za to jest kilka innych które mi średnio pasują do czegokolwiek. Mianowicie potrzebuje produkować przebieg o niezależnie programowalnej częstotliwości i czasie trwania stanu wysokiego. Parametry tego przebiegu to częstotliwość...
8051 ma 0kB (zero) pamięci programu :P A poważnie, to ma tyle, ile się do niego podłączy pamięci zewnętrznej, max. 64kB To już archaizm - pierwsze procki z rodziny '51 Wtedy słowo Flash kojarzyło się z niejakim Gordonem Flashem :d Przed 8051 były jeszcze 8031, a przed nimi był chaos :D A chcesz te wyjścia wykorzystać jak wyjścia normalnego licznika?...
:arrow: robię mały projekt: jeden słupek potrójnej sygnalizacji świetlnej, z przyciskiem, który będzie służył do zmiany długości cyklu świateł (jeden z pięciu predefiniowanych). :arrow: na chwilę obecną mam działające światełka, dodałem przerwanie przycisku (będąc świadomym jego prymitywności/braku poprawności działania), teraz chciałem dodać timer...
Witam, Chciałbym napisać program do sterownika 8 kanałowego, w którym na raz 4 diody płynnie się zapalały, i w tym samym czasie 4 kolejne płynnie gasiły. Projekt jest wykonany na mikrokontrolerze attiny2313, częstotliwość kwarc-a 1MHz. Poniżej przedstawiam moduł wykonawczy sterownika. http://obrazki.elektroda.pl/1844319400_1... [syntax=c]/*...
Wyłączyłeś przerwania za pomocą disable interrupts, a włączyłeś je jakoś później ? Zadeklarowałeś timer na początku programu i co dalej z nim ? Wykorzystujesz go jakoś ? Dajesz jakieś opóźnienie dla czujnika temperatury ? Samo przełączanie zmiennej chyba nie wystarczy. Domyślam się, ze chciałeś użyć timera do tego ? tak , jest błąd w kodzie , dodałem...
Początki trudne. Posiłkowałem się teraz tym, sei(); Mam natomiast inne pytanie. Dlaczego inicjując wyjścia w taki sposób: [syntax=c] // ****** inicjalizacja ********* DDRD |= (1<<LED1_PIN); // kierunek pinu PD6 – wyjściowy PORTD |= (1<<LED1_PIN); // stan wysoki DDRB |= (1<<LED2_PIN); // kierunek pinu PB0 – wyjściowy PORTB...
Witam. Napisałem taki program .............. W moim programie po kolei załączają się rożne tryby migania diody a ja chciałbym żeby wciskając raz switcha załączał się pierwszy tryb później po wciśnięciu załączał się drugi tryb i aż tak do czwartego trybu. Pozdrawiam, Masz prawdopdobnie zadanie zmieniać tryby migania (4 tryby) jednej diody z użyciem...
Witam męczę się już od dawna z przerwaniem od timera 0. Wymyśliłem sobie że po przepełnieniu licznika 0 ma nastąpić przerwanie. Licznik 0 liczy od 0-255 chciałem miec kontrolę na częstotliwością wywoływania przerwania więc gdy przerwanie jest wykonywane wpisuję od razu do licznika konkretną liczbę tak by miał on mniej do zliczania. Problem polega na...
Jaśniej ? :-) Po włożeniu oporniczna i kondensatorka do [4] wyjścia NE555 nic się nie zmieniło, czyli układ w dalszym ciągu przy załączaniu zasilania zachowywał się tak, jakby dostał impuls. Więc usunąłem te dwa elementy. Następnie zmniejszyłem wskazany przez Kolegę rezystorek z 10k do 1k. Efekt jest taki, że rzeczywiście nic się nie dzieje automatycznie,...
Oto reszta kodu. Jak policzyłeś dokładność? Tzn. jak uzasadnić to, że dla 4 impulsów mam 25% dokładności? Rozumiem, że 4 impulsy to w sumie 100%, ale nie rozumiem źródła tej niepewności. Gwoli wyjaśnienia - kilku zmiennych nie używam, to pozostałości po starych kodach (wiem, że powinienem je skasować :) ) a przetwornik ADC jest po to, że uruchamiam...
Witam! Zrobiłem prosty projekt wysokościomierza ciśnieniowego. Wszystko działa w jak najlepszym porządku. Teraz muszę go przekonwertować aby działał na mniejszej płytce zasilanej z baterii. Z tego powodu postanowiłem użyć funkcji sleep i przerwań. Program ma działać tak: - w funkcji setup następuje inicjalizacja karty i czujnika, jeśli wszystko działa,...
Witam, Nadal nie do końca rozumiem zasadę działania tego układu - być może dlatego, iż patrzę na to ze "złej" strony. Bramki U5C i U5B służą generalnie do kluczowania sygnału taktującego otrzymywanego z Timera Timer1. To jasne. Sygnał z wyjścia bramki U5B kluczuje wejścia WE pamięci i LE zatrzasku pozwalając na "pewny" zapis w trakcie którego dane na...
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) powinna świecić zgodnie z PWM. Ustawiłem tryb Fast PWM 8bit Kod: #include...
Potrzebuję generatorowa wzorcowego do pewnego projektu. Siedzę nad tym już trochę i nie mam pomysłu na to jak go wykonać. O ile ze stroną sprzętową nie miałem problemu to, co do programu, co chwile się potykam. Zakres pracy generatora na szczęście nie będzie duży od 0 do 500Hz z przeskokiem, co 1Hz. Problemem jest to, że nie tylko musze regulować częstotliwość,...
Witam ponownie, Nie pokazałem całego kodu nie ze względu na to że ktoś mi go może ukraść jak to napisał kolega ale właśnie z racji tego że jest on napisany przez amatora. Jest to mój pierwszy projekt z mikro kontrolerem oraz językiem C. Wcześniej trochę bawiłem się z PHP oraz HTML i nić po za tym. Dlatego nie chciałem abyście po mnie pojechali... Wracając...
Z zainteresowaniem przeczytałem [url=http://mirekk36.blogspot.com/2012/0... Kolegi Mirka odnośnie stosowania buforowania zapisu do LCD alfanumerycznego. Skąd wzięło się moje zainteresowanie? Już tłumaczę. Często zdarza się, że po dłuższej pracy urządzenia pod wpływem...
http://obrazki.elektroda.pl/7046979400_1... Jednym z istotnych cech zrealizowanego urządzenia jest przejrzystość pracy. To oznacza, że urządzenia znajdujące się z różnych stron przedłużacza będą się ze sobą tak samo komunikować jakby były połączone dwoma zwykłymi przewodami. Jest tu jednak pewne ograniczenie, które polega na tym, że...
http://obrazki.elektroda.pl/5849326500_1... Opisany projekt jest raczej eksperymentem, mającym na celu sprawdzenie sposobu odbioru wzorca czasu WWVB i jego wykorzystania. Część sprzętowa: http://obrazki.elektroda.pl/3285928900_1... http://obrazki.elektroda.pl/4378658900_1... Schemat urządzenia jest bardzo...
zmiana portu timera zmiana impedancji wyjścia zmiana nazwy wyjścia
zasila cewka nagrzewnica ariston blokada drzwi pralki sprawdzić światło równoległe
utrata pakietów nagrzewnica master
Instrukcja po polsku do radia Pioneer DEH-S320BT Niskie obroty wirowania pralki - przyczyny i rozwiązania