Nie szukałem jeszcze jak się konwertuje float do string'a, ale jak nic nie znajdziesz możesz skorzystać z pomysłu flapo213... Z tym, że w programie możesz sobie w każdej chwili rzutować dane na int. Jest to jednak bardzo obliczeniożerne, dlatego pewnie pracownicy microchipa nie poszerzyli printf o float'y. Więc możesz zrobić tak: float liczba=12.4;...
Mam dobrą i złą wiadomość ;) Dobra to jest taka, że udało mi się przerobić kod z postu #3 do współpracy z bitbay.net. Zła jest taka, że to dość dużo zmian. W kodzie zakomentowałem odwołania do LCD - wyniki wyświetlają się w monitorze portu szeregowego Arduino IDE. Zachowałem oryginalne włoskie komentarze :) Korzystałem z informacji zawartych w tym linku:...
To jest przyklad tego jak mozna obsluzyc DS1820 przez mega 8 ale jest tam tez obsluga wyswietlacza w C.Moze sie pryda.Sam to dostalem od jednego kolegi z forum:-) wiec mam nadzieje ze sie nie obrazi...mnie interesowal DS. Pozdrawiam Maciek! #include <avr/io.h> #include <avr/pgmspace.h> #include <stdlib.h> #include <ctype.h> #include...
Moja funkcja lcd_str to to samo co u Ciebie LCD_WriteText. Wstawiłem ją tylko po to by można było się zorientować co ona robi a nie byś ją stosował.
ECLIPSE problemy z kompilacją programu , brakowało plików typu h ,więc dodałem je do katalogu ale nadal błąd nie wiem już co jest grane w sieci nic na ten temat nie ma , jak napiszę prosty program np. miganie diodą kompilacja przechodzi bez problemu. Może macie jakiś pomysł , Eclipse mam skonfigurowany zgodnie z tutorialem z Atnela. Poniżej kod programu...
/* File: main.cpp Version: 1.0 - first version Date: April 7, 2015 License:GPL v2 Digital Bench Power supply http://www.pocketmagic.net/digital-b... ****************************************... Copyright (C) 2015 Radu Motisan <radu.motisan(at)gmail.com> http://www.pocketmagic.net...
Ponieważ ostatnio zostałem posądzony że nic nie wnoszę do forum tylko a, tylko korzystam więc „pochwale się moim projektem” chociaż pochwalić to w tym przypadku za duże słowo bo nie ma czym, gdyż projekt jest w wersji roboczej, ale DZIAŁA był testowany w firmie przez 3 miesiące i wszystko jest ok więc prezentuje. To jest moja pierwsza przygoda...
Więc, czy to jest poprawnie zdefiniowane? [syntax=c]//****************************... SEGGER Microcontroller GmbH * //* The Embedded Experts * //************************************... układ LCD HD44780 oraz układ klawiatury // # key_1 # key_5 // LCD linia 1 # # # # # # # #...
Przyznam szczerze że mam problem z ogarnięciem tych rozmiarów danych zwracanych itd.. i nie bardzo wiem jak zmienić to wszystko tak, jak powinno być. Generalnie znowu mam problem. Na wyświetlaczu chce wyświetlić temperaturę z termometru DS18B20 - magistrala 1-wire zasilany zewnętrznie. Po dodaniu kodu odpowiadającego za obsługę tego termometru wyświetlacz...
Mój ma takie oznaczenie i nie działa. Dalej szukam. Jak znajdę błąd to dam znać. Dalej nie mam rozwiązania. Wymieniłem wyświetlacz na inny, który już kiedyś używałem i działał. Może podejść do sprawy inaczej. Jeśli ktoś byłby tak miły i spojrzał w program to może wypatrzył by błąd. Podłączenie wyświetlacza: pin 1 - masa pin 2 - +5V pin 3 - kontrast...
Dzięki za tak ekspresową odpowiedź. Jeszcze takie jedno pytanie: Czy jest taka funkcja, która zaokrągla do 0,01? Nie. A to problem napisać taką? Od razu podpowiem o float raczej zapomnij.
Wszystkie Timery będą wykorzystane do innych celów dlatego nice chcę wykorzysta któregokolwiek timera do przetwarzania ADC [syntax=c] #define F_CPU16000000UL//16MHz zegar procesora #include <avr/io.h> #include <util/delay.h> #include <string.h> #include <stdlib.h> #include <avr\interrupt.h> /***************************************...
Witam Mam problem. Potrzebuje skompilować plik CPP ,ale gdy otwieram go za pomocą Visual Studio 2022 , 2013 , lub AVR Studio nie podświetla mi się KOMPILUJ. Druga sprawa: gdzie i jak wgrać biblioteki io.h ,delay.h oraz aux.h ,pwm.h. Poniżej podaje kod i prosiłbym o pomoc, gdyż zaczynam z programowaniem i czytam różne kursy, lecz nic to nie wniosło ....
Ok. Już podaje: #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <stdlib.h > //makra DS18B20 #define WE 2 #define PORT_1Wire PINC #define SET_1Wire DDRC&=~_BV(WE) #define CLEAR_1Wire DDRC|=_BV(WE) //--------------------------------------...
Szanowni. Ostatnimi czasy wpadło mi w ręce rozszerzenie do płytek arduino z wyświetlaczem LCD 2x16. Zapewnia ono możliwość komunikacji w trybie 4-bit z pinem R/W podłączonym na stałe do masy. Postanowiłem go uruchomić na płytce Nucleo z procesorem STM32F103RB. Wyprowadzenia wyświetlacza połączone są następująco: Wyświetlacz uC RS PA9 E PC7 DB4 PB5 DB5...
USB zasilane jest z power banku, przy korzystaniu z tej skrzynki nie polecam dotykać sie do przewodów przy włączonym PTT. Cały kod programu (jak to bywa, taki mały bałagan - nie planowałem się nikomu chwalić): [syntax=c]#define TWI_FREQ 100000L #include <Wire.h> #include <hd44780.h> // main hd44780 header #include <hd44780ioClass/hd44780_I2Cexp.h>....
Program bez przetwornika ADC. Program działa prawidłowo Dodano po 42 Od kiedy praca dyplomowa jest tajna? Pytam z ciekawości- kiedyś była jawna na całym etapie pisania. Dlaczego w pętli głównej blokujesz przerwania- potem wykonujesz sporo obliczeń- a potem odblokowujesz? A co będzie jak w tym czasie pojawią się dwa przerwania? Jedno pójdzie się kochać....
W tej chwili mam takie coś: [syntax=c] #include <avr/io.h> #include <stdlib.h> #include <util/delay.h> #include <math.h> #include <stdio.h> #include "HD44780.h" //definicja ADCIN (wejście ADC) #define ADCIN PF0 int main(void) { float pomiar; char str[8]; DDRF = (1<<ADCIN); //Ustawienie Wejścia ADC LCD_Initalize();...
Witam serdecznie - jestem początkujący i próbuję uruchomić termometr na atmedze8 Atmega ma podłączony wyświetlacz alfanumeryczny 2x16 znaków DS podłączony normalnie - nie pasożytniczo pisząc program opierałem się na: http://ds5.agh.edu.pl/~czaro/naukowo/avr... oraz chwilkę później ponieważ pierwsze rozwiązanie nie działało: http://www.elportal.pl/forum/viewtopic.p...
jesli chodzi o ustawienie float dla printf przy robieniu Makefile to ustwione. Rano z braku pomysłów odwróciłem czujnik i teraz mam: 1 5V 2 do procesora i do 5v przez rezystor 3 do masy wczesniej miałem podłączone wg noty katalogowei i nie działało, nie rozumiem dlaczego
Cześć, Ponieważ udało mi się poprawnie odczytać temperaturę z termometru cyfrowego DS18B20 na module prototypowym eXtrino XL z AtXmega128a3u na pokładzie - pragnę się podzielić tym minikodem z początkującymi osobami. Myślę, że informacje zawarte w tym przykładzie, pozwolą osobom początkującym (czyli takim co już potrafią migać diodą) na zrozumienie...
niedawno stworzyłem sobie programik do przetestowania programu na pc zanim wgram go do avr. i masz tu go zmodyfikowanego (dev c++) #include <cstdlib> #include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; //------------------------------------- int main(int argc, char *argv[]) { int...
Witam wszystkich. Zmagam się cały czas z pewnym wyzwaniem jakie sobie postawiłem, mianowicie: stworzyć własny termometr pokojowy z wyświetlaniem aktualnego czasu. Do tego projektu wykorzystałem Arduino Uno oraz podstawowe elementy zawarte w tzw. Starter Kit + wyświetlacz LCD 2x16. Chciałbym zadać pytanie, prosić o skromną pomoc w dwóch kwestiach, ponieważ...
Witam serdecznie. Nie znalazłem podobnego tematu, a próbując rozwiązać mój problem, próbowałem porad z forum i poza nim. Przejdę od razu do tematu. Próbuję zaprogramować wyświetlacz HD44780 ze ekspanderem PCF8574T. Używam kodu który kiedyś znalazłem gdzieś w internecie. Kiedyś tj na początku maja. Ekspander na I2C podłączony jest do MSP430G2553 na port...
Witam, dopiero zaczynam przygodę z mikrokontrolerami i za pierwszy "projekt" wziąłem sobie za zadanie napisanie prostego termometra. Pracuję na atmedze 328p-pu, w Atmel Studio 7.0. Kod na działanie czujnika znalazłem w internecie jednak cały czas na wyświetlaczu pojawia mi się znak zapytania. Gdy na wyświetlaczu chcę wyświetlić same chary to działa...
Witam, czy ktoś mógłby rzucić okiem na kod? funkcja lcd.print("hello world") działa tylko w void setup() i nie wiem dlaczego. Kiedyś już to robiłem i działało w void loop(), jeśli usune linijkę [syntax=cpp] Ethernet.begin(mac, ip);[/syntax] to działa. [syntax=cpp] #include <SPI.h> #include <String.h> #include <Ethernet.h> #include...
Czyli wyczyszczenie magistrali następuje w pierwszej linijce tej funkcji, tak? Mam cały program i coś jest nie tak. Temperaturę z MCP9700 odczytuje prawidłowo, a z dallasa mam ciągle "cisza". Poza tym wszystko działa bardzo wolno i jak wyjmę kondensator filtrujący spomiędzy pinów MCP9700 to nie reaguje na zmianę napięcia. Procesor to ATmega8 i jest...
Witam, chciałem zaoszczędzić kilka pinów PIC16F1459 i zamiast bezpośrednio podpinać LCD HD44780 pod ten uC, chciałem użyć sprzętowej komunikacji I2C tego uC ( piny RB4 i RB6 - PCF8574T widocznej poniżej, a kupionej u chińczyków. Sprawdziłem jak poprowadzone są piny w tej przejściówce z chin i są następujące: LCD_EN = P2 (pin P2 PCF8574T) LCD_RW = P1...
Dzięki za odpowiedzi. Przerobiłem trochę kod, zerknijcie proszę, czy teraz ma to sens. obługa LCD #include <avr/io.h> #include <avr/interrupt.h> #include <avr/Signal.h> #include <util/delay.h> #define VREF 5 #define LCD PORTC #define CONTROL PORTB #define E 2 //3 #define RW 3 #define RS 4 //2 #define SET_E CONTROL |= _BV(E)...
Witam Pisząc program pod mikrokontroler Atmega8 napotkałem problem. Ogólnie program ma pokazywać tylko temperaturę odczytaną z czujnika DS18B20 Obsługa LCD działa, układ programuję się prawidłowo, ale na wyświetlaczu dostaje tylko komunikat, że czujnik jest niedostępny. Czujnik temperatury podłączony jest pod port PD0. I zasilany jest z tego samego...
Witam Po wielu próbach dalej nic nie działa Znalazłem nową wersje artykułu z którego korzystałem (w załączniku) 1-wire.h [syntax=c] /* * _1_Wire.h * * Created: 2011-10-23 02:08:12 * Author: Darek */ //#ifndef 1-WIRE_H_ //#define 1-WIRE_H_ //#endif /* 1-WIRE_H_ */ #include <avr/io.h> #define PIN_1WIRE 0 #define PORT_1WIRE PIND #defineOUT_1WIRE_LOWPORT_1WIRE&=~(1&...
Witam, próbuję odczytać temperaturę z mojego czujnika jednak wynosi ona ciągle -0.1, a gdy próbuje pobrać odczytać ID wyświetla mi puste miejsca lub krzaczki. Przy próbie podłączania za pierwszym razem niestety źle spojrzałem na schemat i odwrotnie podłączyłem zasilanie więc teraz nie wiem czy to wina kodu czy może jednak układu. Chociaż jakby coś z...
Mam pytanie dotyczące łączenia instrukcji programów w całość . Chodzi mi o to że robię sobie termometr w którym odczytam sobie temperaturę wewnętrzną ,zewnętrzną a także napięcie swojego akumulatora i czas,datę z układu DS1307.W jaki sposób połączyć kilka plików to ze sobą w sposób profesjonalny? Czy wszystko ująć w jednej pętli "while"?.ale wtedy są...
Dzięki tmf z odpowiedź. Mam pytanie dotyczące łączenia instrukcji programów w całość . Chodzi mi o to że robię sobie termometr w którym odczytam sobie temperaturę wewnętrzną ,zewnętrzną a także napięcie swojego akumulatora i czas,datę z układu DS1307.W jaki sposób połączyć kilka plików to ze sobą w sposób profesjonalny? Czy wszystko ująć w jednej pętli...
Nie wiem czy też prawidłowe to jest że na module enc28j60 pali się cały czas czerwona dioda. Ja też nie wiem, bo nie wiem co znaczy "czerwona dioda". Jeśli to dioda sygnalizująca połączenie (link) - to poprawnie. Powinna być normalnie zgaszona i zapalać się po włożeniu kabla podpiętego do switch'a. Tyle, że bez schematu i bez konfiguracji z plików...
Funkcje do obsługi wyświetlacza pochodzą z gotowej biblioteki, którą znalazłem za pośrednictwem elektrody. Oto funkcja do wrzucania tekstu na lcd z flash procesora. Co do pamięci - avrstudio pokazuje mi że używam około 12kB flash i 300bajtów sram więc ok. Co do double i float to nie wiedziałem, że to to samo... A jakie są tego konsekwencje? Funkcja...
#include <stdio.h> . . . unsigned char bufor [10]; unsigned char dana sprintf (bufor, "%d", dana); WriteLCD(bufor); Poczytaj o formatowaniu stringow funkcja sprintf (printf) a wszystkiego sie dowiesz: jak wyswietlac w postaci hex, jak wyswietlac float, stringi etc. pozdrawiam BF
Hej, W moim Clio III Ph1 jest oryginalny wyświetlacz i nieoryginalne radio. Na wyświetlaczu znajduje się godzina i temperatura. Początkowo chciałem wykorzystać literki, którymi zarządzało fabryczne radio, ale trafiłem na sufit w postaci wyświetlacza sterowanego przez CAN i braku bibliotek do tego. Uznałem, że usunę wyświetlacz fabryczny i wstawię generyczny...
Umieszczam kod ze strony radzia. HD44780.c [syntax=c] //--------------------------------------... // Wyświetlacz alfanumeryczny ze sterownikiem HD44780 // Sterowanie w trybie 4-bitowym bez odczytu flagi zajętości // z dowolnym przypisaniem sygnałów sterujących // Plik : HD44780.c // Mikrokontroler...
Kod działa dla zainteresowanych Link do schematu płytek: http://www.elektroda.pl/rtvforum/topic15... Kod (wartość wyświetlana w kPa) #define F_CPU 1000000 /* pod którym portem jest szyna danych */ #define HD44780_DATA_GPIO C /* jak ˛ a cz˛e´s´c portu zajmuje szyna danych: * true: DB4 = bit 4, DB5 = bit 5, DB6 = bit 6, DB7 = bit 7 * false:...
Witam Przerzucam się z Bascom na C. Niestety jest to odrobinę bolesne. O ile LCD już ogarnąłem, to kłopot sprawia mi DS18b20. Zaraz po uruchomieniu układu, temperatura wyświetla się w miarę dokładnie. Niestety po kilkudziesięciu sekundach wyświetlana jest temperatura ujemna (!). Czyli najpierw pokazuje ok 22-23 st. i nagle przeskakuje na -8st. Wygląda...
Witam. Mam problem z kodem. Wszystko się kompiluje ale zawartość funkcji void wyswietlwynik(float dana) nie uruchamia się. Jeśli zawartość tej funkcji jest w pętli while(1) wszystko jest ok [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include "HD44780.h" #include "HD44780.c" float adc; void inicjalizacjatimerow()...
Plik main.c: #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> #include "StringsConv.h" #include "hd44780.h" float val; char tab_out[20]; uint16_t pomiar(uint8_t kanal) { ADMUX = (ADMUX & ~0x07) | (kanal & 0x07); // ustaw kanal ADCSRA |= _BV(ADSC);...
Witam. Odczyt z jednego kanału ADC nie stanowi problemu, postanowiłem zrobić odczyt z dwóch kanałów i pojawiają się błędy, gdyż to co odczytuje na drugim przedostaje się na odczyt z pierwszego kanału. Co napisałem nie tak i jak to poprawić? W 1 odczycie odczytuje temperaturę z czujnika LM35 a w drugim kanale jest zwykły potencjometr tylko. uC to Atmega32...
Odkopuję temat, ponieważ mój problem również tyczy się przerwania od przycisku, przy użyciu tych nieszczęsnych bibliotek :) Wydaje mi się, że wszystko jest włączone i zainicjowane jak należy... Dokładnie przeszedłem przez UM, oraz posiłkowałem się tematami na 'stackoverflow'. Przerwanie następuje, ale trwałe, tzn wszystko się zatrzymuje migająca dioda...
Tak z itoa też próbowałem, ale itoa działa mi tylko dla typu int, dla typu long int, long long int, też nic nie wyświetla. Wyświetla natomiast dla typu unsigned int, ale zakres jest jak dla zwykłego int. :| Tutaj drugi przykład: [syntax=c]#define F_CPU 1000000l #include <avr/io.h> #include <util/delay.h> #include "HD44780.h" #include <stdio.h>...
Napisałem taki program, na celu ma on wyświetlenie na LCD liczby w formacie XX.XX Wykorzystując funkcję "sprintf": [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <stdio.h> #include "HD44780.h" #include "keyb.h" char buf[32]; volatile float a=22.12; int main(void) { DDRD= 0b00111100; PORTD=0b11101100; LCD_Initalize();...
Aha, rozumiem, rozwiązania ciekawe więc wypróbuję oba w takim razie, natomiast w drugim przypadku nie mam kontroli nad liczbą miejsc po przecinku w zmiennych liczbowych, tak? // Już wiem, zapomniałem jak działa printf w C :P Ale co ten snprintf przyjmuje jako 'format'? :P Aha, i mam problem z wyświetleniem zmiennej float :P Czy to nie było coś typu:...
wyświetlenie temperatury w *F ( czyli *C + 273 ) To raczej temperatura w Kelvinach :) Dalej biblioteka jakaś dziwna... Skorzystaj z biblioteki http://radzio.dxp.pl/hd44780/hd44780_avr... Twój kod powinien w teorii działać, za to przedmówcy zdecydowanie nie... Problemem może być stosowanie zmiennych float i dtostrf. Zamiast tego pomyśl...
[syntax=c]/*#include <stdio.h> #include <stdlib.h> #include <avr/io.h> #include "HD44780.h" void init_adc(void); int main(void) { init_adc(); LCD_Initialize(); char temp[10]; while (1) { float i = ADC; //float v = (x*4.67)/255; float vt = (i * 4.67)/1024; float temperatura = vt * 298.15 - 273.15; dtostrf(temperatura, 10, 2, temp);...
zaokrąglanie float wyświetlać float string float
obliczyc winisd manual power sagemcom dsi83 dekoder
hyundai kasowanie błędów hyundai kasowanie błędów
Przepalenie rezystora dmuchawy a brak prądu Usuwanie nadmiarowych spacji w pliku txt Pythonem