Wyrzuć te delay'e. Zmienną licznik jak radzili koledzy zmień na volatile. Zmień sei(); na SREG |= (1<<7); Jeśli będzie działać, to zapytam jakiej wersji avr studio używasz? [syntax=cpp] #include <avr/io.h> #include <avr/interrupt.h> volatile uint8_t Count = 0; ISR(TIMER0_OVF_vect) { Count++; TCNT0 = 0; } int main(void) { DDRB = 0xFF;...
No to próbuję: [syntax=c] //* \section OA Original author //* Andy Gayne is the original author of this application note. //*/ //program z noty Atmela 136 //przerobiony na ATMega8, kwarc 11059200 i okrojony program #include <avr/io.h> #include <avr/interrupt.h> //! Pin mappings #define CHMAX 6 // maximum number of PWM channels #define PWMDEFAULT...
https://obrazki.elektroda.pl/2123084800_... Przedstawię tu cztery praktyczne sytuacje w których ChatGPT rzeczywiście pomogło mi w programowaniu. Sytuacje będą obejmować różne języki i tematyki, będzie C i wyświetlacz 7-segmentowy, będzie Javascript, trochę HTML, a również Winsock i wysyłanie żądania HTTP. Nie zapomnę też o prostej...
Poprawiłem Twój kod: Function jakastam(x) Application.Volatile True y = 0 For i = 1 To x y = y + Arkusz1.Cells( i , 1).Value Next i jakastam = y End Function
Witam, Jakiś czas temu na forum pytałem o koncepcję prostownika mikroprocesorowego. Od tamtego czasu zacząłem działać i stworzyłem płytkę, wlutowałem komponenty i zacząłem pisać program i testować układy. Wszystko szło dobrze dopóki nie rozbudowałem programu i zacząłem testy pod obciążeniem. W aplikacji wykorzystuję 3 wejścia ADC do pracy z DMA: pomiar...
Cześć, Od kilku dni próbuję uruchomić obsługę pewnego modułu samochodowego, sterowanego poprzez magistralę CAN. Obsługa tego modułu wymaga wysłania pewnego zapytania, a następnie odebrania 4 ramek CAN odpowiedzi modułu - łącznie trzeba odebrać 32 bity danych. Udało mi się uruchomić nadawanie zapytania oraz odbieranie odpowiedzi, jednakże trzecia ramka...
Nie wiem, czy moja propozycja jest tym, czego oczekiwałeś, bo kryteria filtra można definiować w różny sposób a ich odczytanie nie zawsze jest łatwe. Moja propozycja to taka funkcja UDF: [syntax=vbscript]Function KrytFiltra() As String Application.Volatile With Application.ThisCell.Parent.AutoFilter.F... If .On Then If .Operator = 0 Then KrytFiltra...
Zmieniłem trochę. Punktem odniesienia dla działania całej funkcji jest teraz adres komórki z tekstem "Dni robocze". Function zapas(tydz, wiersz) Application.Volatile 'Excel 2k7 'Application.Volatile = True 'Excel 2k wt = Cells.Find(what:="Dni robocze", lookat:=xlWhole).Row wk = Cells.Find(what:="Dni robocze",...
2 i 3 działają na LOW, 18,19,20 i 21 również na CHANGE. [syntax=c]#include <avr/sleep.h> //dziala z arduino 1.6.12, gorzej ze starszymi np 1.6.9 #define ledPin 13 #define interruptPin 19 //numer pinu przerwania, np. 2,3,18,19,20,21 #define przerwanie 2 volatile boolean flag; void setup() { pinMode(ledPin, OUTPUT); pinMode(interruptPin, INPUT_PULLUP);...
Witam. Próbuję przerobić kod na Atmege808 ale część funkcji nie działa. Np: ClrKeyb( KBD_LOCK) oraz warunek z czasem i f( IsKey( KEY_ENTER ) && KeysTime( ) >= 500 ) . Poniżej fragmenty mojego kodu tam gdzie zmieniałem kod reszta jest nie ruszana: main.c [syntax=c]#define F_CPU 8000000UL #include <atmel_start.h> #include <avr/interrupt.h>...
No normalnie to ładujesz swojego bootloadera do flasha przy pomocy powiedzmy flash magic. A następnie generujesz sobie BIN swojej aplikacji w ofsetem i tego BINa podsuwasz bootloaderowi i on używając IAP powinien to wpisać do flasha. Ok, wszystko się zgadza, ale ja chciałem wgrać to bez użycia bootloadera - z wgraniem już sobie poradziłem. Pojawił...
Hurra, hurra, Napisałem w osobnym proj. tylko main.c: i poszło , poprzednie próby robiłem w 8-mio plikowym projekcie , i nie chciało , ale teraz już dam sobie radę - gdzieś coś się "pokiełbasiło" ps. AVR bez typu 24 bit ? dla mnie nie do zaakceptowania , i tak bym nie darował :D , prędzej wróciłbym do asemblera .
Koledzy, dlaczego zmienna i4 nie jest cyklicznie inkrementowana? Przynajmniej na porcie UART jest wysyłana tylko zwiększona o jeden i dalej już bez zmian. Dioda LED miga poprawnie. Problem pojawił się przy próbie wysyłania tablicy danych. Tablica jako taka jest odbierana na PC poprawnie, ale bez zmian poszczególnych bajtów. Do obsługi UART wspomagam...
Edit: DMA nie działało bowłączałem DMA2 a nie DMA1. Napiszę jak dalej pójdzie :] Cześć, mam pewne problemy z I2C, bazowałem na zmodyfikowanym kodzie od ST (jak mnie pamięć nie myli) najpierw używałem samych przerwań na najwyższym priorytecie jak ST przykazało, niestety od czasu do czasu zdarzało się że RTOS wyłączał wszystkie przerwania i przy odbiorze...
/=======================================... // Copyright (C) 2003 Atmel Corporation // // File: bootldr.c // Compiler: IAR Atmel AVR C/EC++ Compiler // Output Size: // Created: 4-Feb-2003JP (Atmel Finland) // Modified: // // Support Mail:avr(at)atmel.com // // Description:...
A spróbuj taki kod: [syntax=c]#include <avr/io.h> #include <avr/interrupt.h> const uint8_t Out[11] = {0x3F, 0x06, 0x5b, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x79}; uint8_t Val[2] = {0x00, 0x05}; volatile uint8_t Pos = 1; ISR(TIMER0_OVF_vect) { Pos++; if(Pos>2) Pos = 1; } int main(void) { DDRB = 0xFF; DDRD = (1<<PD0)|(1<<PD1)|(1<PD5)...
Witam Ostatnio próbując ustawić timer0 natknąłem się na pewną dziwną sytuację. Jeżeli wywołane zostanie normalne przerwanie (tzn. bez opóźniej wew. funkcji obsługi przerwania) to nie działa. Znaczy się sam program się kompiluje i działa tylko wogóle nie zapala się ale jeśli wprowadzę opóźnienie powyżej 70ms to wszystko jest ok. Nie znam się jeszcze...
Faktycznie, rozwiązanie kwestii działania SPI było dosyć proste i po sprawdzeniu - SPI działa. Odczytuję zapisany wcześniej rejestr poprawnie. Teraz mam inny problem. Poniżej zamieszczam program z pliku main.c, w którym są dodane miejsca wysyłania kolejnych numerów przez UART i program zatrzymuje mi się po wysłaniu numeru 88. Nic więcej się nie dzieje,...
Witam, postanowiłem przenieść swój układ z atmegi na atXmegę. Do tej pory do komunikacji urządzeń po serialu używałem biblioteki SoftwareSerial (Arduino) bo układ miał tylko 1 fizyczny serial. Teraz w Xmedze mam ich 5 :) Wgrałem [url=ten]http://mikrokontrolery.blogspot... programik i wszystko...
Witam! Mam mały problem z konfiguracją licznika ww mikrokontrolerze, siedzę już 3 dzień i jakoś mi nie idzie. W trybie licznika impulsów liczy poprawnie więc sam układ jest sprawny. Kod konfiguracji pisałem według ASF, ale rejestr CCA_Capture ma ciągle wartość zero, a przerwanie się nie wykonuje. Może ktoś z Was wypatrzy gdzie jest błąd. Niżej kod programu:...
Ok walczę dalej. Przepisałem trochę kod. Przerwanie od int0 działa i chyba tylko tyle. Coś chyba nie tak z timer. Niby zrobiłem wg. przykładu powyżej ale działać mnie to nie chce. [syntax=c]#define F_CPU 8000000UL #include <avr/io.h> #include <avr/sleep.h> #include <avr/interrupt.h> #include <util/delay.h> #define STAGE1 PB0...
Szanowni Forumowicze, Mam problem z Virtual Port COM. Używam procesora STM32F103VBT6. Na nim chcę zrobić taki sterownik uniwersalny kilka wejść wyjść oraz USB do wysyłania komend i odczytu stanu wejść i wyjść. Chcę zrobić to tak że np mam wyjście powiedzmy PA0 i jest tam podłączona dioda i po wysłaniu komendy "LEDON" włączy się. Niestety mając do dyspozycji...
Poprawiłem kody. I odbieranie przez Slave działa. Master: [syntax=c]// F_CPU=11059200UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define MOSIPB5 #define SCK PB7 #define SS PB4 #define MISOPB6 void Init_SPI() { DDRB |= ( 1 << MOSI) | ( 1 << SCK ) | (1 << SS); SPCR = ( 1 << SPE )...
Gumis-92: Proszę bardzo :) [syntax=c] #include "LPC11xx.h" #include "uart.h" #include <stdio.h> #define MIN_HALF_BIT 640 // 640 us #define HALF_BIT_TIME 889 // 889 us #define MAX_HALF_BIT 1140 // 1140 us #define MIN_FULL_BIT 1340 // 1340 us #define FULL_BIT_TIME 1778 // 1778 us #define MAX_FULL_BIT 2220 // 2220 us #define RC5_PORT LPC_GPIO3 #define...
Witam, w poniższym programie występują niepożądane resety, sprawdzałem już wartość rejestru MCUCSR i tuż po resecie ma wartość 0 czyli jest to reset programowy. zorientowałem się, że źródłem jest wywołanie instrukcji odpowiadającej za przerwanie komparatora analogowego (w oknie disassembly adres 0x00000020), które jest wyłączone... nie wiem co powoduje...
Programowy PWM jest w nocie Atmela 136. Deklarują że obsłuży do 23 kanałów. Przerobiłem ten program- sterowanie jest z sygnałów serw- czyli sygnał 1-2ms jest przerabiany na PWM. Wklejam- ale ew. przeróbkę to zrób sam- albo "z małą pomocą przyjaciół". Bo ja- to po nowym roku. [syntax=c] /* \section OA Original author Andy Gayne is the original author...
Witam. Dopiero zaczynam programować uC AVR. Zaczynam od ATmega8L, ostatnio mam problem z przerwaniem zewnętrznym INT0, układ wchodzi w stan uśpienia ale nie można go wybudzić. W czasie normalnej pracy przerwanie działa i zmienia licznik. Ogólne prawidłowe działanie programu powinno być takie, że dioda zapala się 10 krotnie po czym uC wchodzi w stan...
witam napisałem program w którym dokonuje pomiar poprzez sonar ultradzwiekowy uzywając komunikacje SPI ale niestety problem polega na tym że nie zależnie od odległości przeszkody silniki cały czas pracują tak samą prędkością. Dodano po 40 Jestem zielony w wskaźnikach i komunikacji SPI .Więc to mogłem jedynie źle zrobić.
Najlepszego w Nowym Roku i w następnch (rokach też). Proszęż uprzejmież : [syntax=c] #ifndef NOUVOTON_SD_CARD_H_INCLUDED #define NOUVOTON_SD_CARD_H_INCLUDED // #include "NouvotonSDCard.h" #define __IO volatile typedef struct { __IO uint8_t CSDStruct; /* CSD structure */ __IO uint8_t SysSpecVersion; /* System specification version */ __IO uint8_t Reserved1;...
Witam, Opracowałem bardzo prosty sterownik diody LED RGB w obudowie 5050. Układ losuje kolor, płynnie przechodzi do niego, wyświetla przez jakiś czas, następnie cykl się powtarza. W celu urozmaicenia układu dodałem diodę led białą, czyli mamy w zasadzie RGBW. Sterowanie odbywa się 4-kanałowym programowym generatorem PWM, z użyciem korekcji jasności....
Dzień dobry, Napisałem sobie program (korzystam z: STM32CubeMX oraz Atolli TrueStudio, mam BluePill STM32F103C8, port szeregowy podłączony za pomocą UART2 oraz konwertera FT232RL (ustawionego na 3,3V - bo w dokumentacji wyczytałem że te wejścia nie tolerują 5V) do portu USB, gdzie łączę się za pomocą BrayTerminal). Na BluePill mam wbudowaną jedną diodę,...
Dokładnie to, co widzisz, czyli NIC. Dziwne pytania zadajesz, w stylu "dlaczego ten program miga czerwoną diodą, a zieloną - nie? Po prostu ktoś tak go napisał i taki jest. Widać były plany na coś więcej, ale nie zostały zrealizowane. Usiądź i napisz program, który robi to, ci Ty chcesz, zamiast zastanawiać się, dlaczego ktoś czegoś nie napisał. Ale...
Witam , Zaczynam z AS6, dotąd używałem 4.18 głownie z asemblerem Pytanie dotyczy możliwego błędu symulacji prostego kodu w AS6, do potrzeb zapytania sprowadzonego do wersji jak niżej : http://obrazki.elektroda.pl/4044092400_1... również wygenerowany kod obsługi jest poprawny http://obrazki.elektroda.pl/7240738500_1...
//definicja początkowej wartości timera #define timer_start 6 Rozumiem, że zależnie jaką wartość wpiszę timer będzie liczył od tej wartości tutaj od 6 do 255? czy definicja "timer_start" jest zawsze tak zapisana? etykiecie timer_start przypisano na stałe liczbę. W zależności gdzie tę etykietę użyjesz, będzie ona miała wartość 6. Jeśli więc używamy...
Cześć, od 2 dni zmagam się z modułami NRF24L01 i dwoma płytkami STM32. Płytki STM32 NUCLEO L053R8 i STM32F103 wykorzystujac biblioteki HAL i cubemx. Niby oba układy zwracają poprawne rejestry : https://obrazki.elektroda.pl/1575646300_... Ale sama komunikacja w sobie nie działa. Nie odbieram żadnych pakietów. PYTANIE - czy w biblioteka...
Jest taka nota Atmela 136. Jest tam opisane jak zrobić wiele kanałów PWM z pomocą jednego timera 8bit. Zrobiłem to na ATMega8- sterowanie sygnałem takim jak dla serw 1-2ms. Plik .c [syntax=c] //* \section OA Original author //* Andy Gayne is the original author of this application note. //*/ //program z noty Atmela 136 //przerobiony na ATMega8, kwarc...
Problem już prawie rozwiązany, gdyż moja lista z projektami świeciła się jak choinka za sprawą tych samych, złych bibliotek. Poprawiłem już prawie wszystko, ale chce się upewnić co do jednego. Czy w kodzie który zamieszczam wystarczy usunąć "||" czy coś tam powinno być? W pliku źródłowym na jakiejś stronie internetowej też tego nie ma, więc nie usunąłem...
Uruchomiłem USARTA3 Działa mi wysyłanie ale ciągle wysyła na terminal tylko śmieci. Mógłby mi ktoś pomóc to naprawić? Poniżej kod programu: [syntax=c]/* Includes */ #include <stddef.h> #include <stdio.h> #include "stm32l1xx.h" //defined USE_STM32L_DISCOVERY #include "discover_board.h" #include "stm32l_discovery_lcd.h" /* Private typedef...
A jaki masz ten chip dokładnie? Jaki ten ekran - R czy C? Kupiłem dokładnie to https://elty.pl/pl/p/Wyswietlacz-LCD-4%2... Panel musi być rezystancyjny skoro FT800 a nie FT801. Układ identyfikuje się jako 0800 0100 w rejestrze 0x0C0000 (nie miałem w #define, 4 bajtowy rejestr identyfikujący...
Szukałem na internecie poradników do terminala UART i udało mi się zrobić coś takiego z kawałków znalezionych w sieci. Problem polega na tym, że mój kompilator wyrzuca błędy a nie pokazuje mi gdzie one są (i tym samym nie mogę ich skompilować) i jeśli ktoś może sprawdzić poprawność kodu w 1. i 2. main.c(są to dwa odzielne programy w dwóch projektach...
Zmieniłem tą konfigurację pinów w GPIO. Tylko teraz w ogóle nie spełnia mi warunku: [syntax=c]while(SPI_I2S_GetFlagStatus(SP... SPI_I2S_FLAG_RXNE) == RESET);[/syntax] A tu cały kod poprawiony. Niestety dalej nie działa. :( Jakieś jeszcze pomysły co może być nie tak? [syntax=c]/* Includes */ #include <stddef.h> #include <stdio.h> #include...
Skorzystałem z CAN example który jest w COIDE: http://obrazki.elektroda.pl/5876838600_1... bit w rejestr MSR nie chce sie wyzerować.
Witam, Próbuję korzystać z biblioteki Peter Fleury do obsługi usart-u, której listing znajduje się poniżej: PLIK uart.c /***************************************... Title: Interrupt UART library with receive/transmit circular buffers Author: Peter Fleury <pfleury(at)gmx.ch> http://jump.to/fleury File:...
Witajcie, w jaki sposób można optymalnie odczytać przesłany (aż do znaku nowej linii / powrotu karetki) ciąg znaków od przerwania otrzymania danych? /* * Sterowanie przez RS232 (main.c) */ #include "defines.h" #include <ctype.h> #include <stdint.h> #include <stdlib.h> #include <stdio.h> #include <avr/interrupt.h>...
kod programu: [syntax=c]/* * zegarmux.c * * Created: 2013-04-16 00:40:46 * Author: R */ const char cyfra[]={0x10, //0 0x11, //1 0x12, //2 0x13, //3 0x14, //4 0x15, //5 0x16, //6 0x17, //7 0x18, //8 0x19}; //9 #include <avr/io.h> #include <avr/interrupt.h> volatile char status=0x00; volatile char spi_bytes=0; volatile char spi_buff[3]={0,0,0};...
Witam! Uczę się programowania i dotarłem do ADC. Problem polega na tym, że program jakby w ogóle nie był wykonywany. Po włączeniu uC jedyne, co obserwuje to po naciśnięciu przycisku LED1 i LED2 zapalają się. http://obrazki.elektroda.pl/2299638600_1... Przewertowałem DataSheet i tutejsze forum, ale wszystkie poprawki (już naniesione)...
/***************************************... Title: Philips RC-5 Remote Control Decoder Author: Peter Fleury <pfleury(at)gmx.ch> http://jump.to/fleury Date: December 2002 Purpose: Decodes RC5-commands Software: AVR-GCC 3.3 Hardware: AT90S8515 at 4 Mhz, IR-Receiver SFH506-36 RC5 data...
Witam! Mam problem. Podłączyłem atmege32 z BTM222 i na komputerze używał programu Realterm do obsługi portu szeregowego. Komputer się ładnie podłączył do BTM-a, to znaczy nawiązał połaczenie wpisałem kod 1234 i w programie Realterm jest napisane że się połączył. Chyba jest problem dalej, to znacyz z USART-em. Gdy wysyłam coś z komputera to uC tego nie...
Witajcie, mam problem z komunikacją na drodze STM32 <-> DS18B/S20. "Hello world!" w tym wypadku to poprawna realizacja funkcji Reset(), niestety nawet tak prosta sprawa mi nie działa. Sprawdziałem na DS18B20 i 2 sztukach DS18S20 aby wykluczyć ew. uszkodzone układy. Co do poprawności działania samego kodu to próbowałem dać odpowiedź DSa wstawiając...
Witam Moja płytka to LPC1769 LPCXpresso board. Używam LpcXpresso do programowania ze względu na to, że na płytce jest LPC-Link. Napisałem już część programu który działa. Program steruje silnikami krokowymi. Pierwszy etap to 2 silniki, każdy ma zrobić różną ilość kroków w tym samym czasie z przyspieszaniem i zwalnianiem. To już działa. W związku z tym,...
volatile przerwać typedef volatile application processmessages
pralka siemens szczotki dokumentacja techniczna zmywarki komputer motorze
hilti udaru pompa ogrzewania podłogowego
Sprężyna płaska – budowa, materiały, zastosowania w Makita, wave spring, kontakty PCB Zamiennik pilota MC Voice HVR-80 – kompatybilne piloty uniwersalne i dedykowane