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 # # # # # # # #...
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) //--------------------------------------...
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.
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...
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ć....
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 ....
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> /***************************************...
można zrzutować całość na float a nie tylko licznik temp = (float)((temp1 + (temp2 *256))/16);
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>....
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...
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();...
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
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...
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...
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...
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...
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 uruchomiłem układ z czujnikiem ciśnienia MPX4115AP i ADS1100. Komunikacja z ADS przebiega prawidłowo ,problem mam z przeliczeniem otrzymanych wartości na ciśnienie i wyświetleniem wyniku obliczeń na LCD . Kod obecnie wygląda następująco: #define F_CPU 1000000 /* pod którym portem jest szyna danych */ #define HD44780_DATA_GPIO C /* jak ˛ a cz˛e´s´c...
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...
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:...
(at)kamyczek - czy jest sens pisać obsługę ENC28J60 czy DS18B20 w asm? To, że można to jedna sprawa... inna jaki jest z tego zysk. W tym momencie nie widzę żadnego. Czy w ASM nie można sobie określonych procedur wyciągnąć do osobnych .S i potem "linkować" i podpinać pod odpowiednie symbole rejestry io w danym procku? Ano można ;) Więc czym się to różni...
[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);...
Witam, Napisałem sobie kod dla woltomierza na ADS1110 i chciałbym go wyświetlić na ekranie jednak brakuje mi może 100bajtów w pamięci - używam Atmega48, kod wynikowy zajmuje 4224 bytes (103.1% Full) Czyli za dużo. Da się coś z tym zrobić? Używam 4 dzielników napięć przełączanych przekaźnikami i stąd te mnożniki w programie. Kod działa jeśli usunę mnożniki...
mam tak: char data0[8] = {0x0E, 0x11, 0x11, 0x11, 0x0A, 0x0A, 0x1B, 0x00}; //ohm numer 0 char data1[8] = {0x02, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00}; //stopien numer 1 char data2[8] = {0x00, 0x04, 0x15, 0x0E, 0x15, 0x04, 0x00, 0x00}; // gwiazdka char znak[8] = {0x0C, 0x04, 0x06,...
zaokrąglać float float konwersja przecinek float
esl67070r electrolux kable wyciągarki silnik fazowy buczeć
pośrednia 465khz pioneer vsx423
Schemat elektryczny agregatu Daewoo GDA 2600i Jak ustawić HDMI w telewizorach Pioneer PDP?