Witam, Moje pytanie jak w tytule : w jakim standardzie przesyłane są dane (odczyt pozycji kursora) z monitorów touch-screen ? Monitor, który mam w firmie ma 2 złacza: DVI-D oraz typu D Canon 8 stykowy (tak jak serial port). Chciałbym podłaczyć mysz zamiast korzystać z touch-screena. Uprzedzam odpowiedzi: monitor NIE JEST podłączony do PC !! ani innego...
Poniżej zamieszczam pierwszą, jeszcze bardzo nieudolna wersje programu. Nie myślałem że całość będzie aż tak skomplikowana, pomimo kilku godzin pracy zbyt wiele nie osiągnąłem. Na ta chwile podstawowe problemy to: - kłopot z orientacją na płaszczycie, ponieważ funkcja którą zastosowałem do odczytu pozycji kursora odczytuje współrzędne na ekranie a nie...
Możesz przypisać cały obiekt Memo1.CaretPos := Point(x, y); Następnie przypisując do SelText wstawisz w to miejsce tekst (SelLength ustawione na 0 oczywiście, bo inaczej nadpiszesz). Wprost do X i Y nie przypiszesz, bo odczyt CaretPos jest tylko getterem zwracającym TPoint, a nie bezpośrednim dostępem do jakiś właściwości.
Jest to chyba ten sam rozkaz, co odczyt flagi zajętości, bity od 0 do 6 są adresem kursora... Warunkiem jest chyba, aby ostatnim wyborem adresu był RAM od danych wyświetlania, a nie od definicji znaków. Innym rozwiązaniem jest wyliczanie adresu bezpośrednio w procedurze wysyłającej.
na początek, możesz spróbować przed ukryciem kursora i sprawdzaniem pixela poczekać na vertical retrace. Sprowadza się to do pętli sprawdzającej stan portu 3DAh A co do problemu z przesuwaniem kursora: na czym testujesz ten program? Na maszynie z dosem czy pod jakimś emulatorem? Jeśli chodzi o labirynt: może lepiej by było składać labirynt z prostokątów...
Nie mogę znaleźć błędu ;) Po ustawieniu kursora, gdy sprawdzam gdzie się znajduję dostaję wartość -1. Linie raczej dobrze liczy. [syntax=cpp]#include<iostream> #include<fstream> #include<string> using namespace std; void main(void) { int rozmiar=2800000; cout<<"Rozpoczecie rezerwacji pamieci.\n"; int *indeks = new int[rozmiar];...
plan1:tab; {pamiec planszy komputera} plan2:tab; {pamiec planszy gracza} etapy_gry:tab3; {przechowuje kolejnosc etapow gry} pamiec:tab; {*tutaj komputer zapamietuje sobie pozycje zatopionych statkow*} procedure zapisz; var plik:text; i,n:byte; plan1,plan2,etapy_gry,pamiec,pamiec_grac...
Może to jeszcze nie myszka a jedynie jej kursor. Ale może takie rozwiązanie kogoś zainspiruje do napisania programu z wykorzystaniem kursora. UUU widzę piękny COBRA OS na CP/M. Te kafelki idealnie sprawdzą się w gęstym trybie graficznym w roli skrótów do programów na dysku... A może nawet taki player PT3 by zrobić, gdzie kolejne muzyczki to takie kafelki.......
RECT rc; GetWindowRect(hwnd, &rc); // zwraca pozycję i rozmiar okna WINDOWPLACEMENT wpl; wpl.length = sizeof(wpl); GetWindowPlacement(hwnd, &wpl); // jak wyżej, plus stan okna(normal/min/maximized), oraz pozycję okna w stanie min/maximized. POINT pt; GetCursorPos(&pt); // odczyta wsp. kursora względem lew.gór....
W jakim trybie podłączone są Dallasy? Dwoma, czy trzema przewodami? Nie miałem w domu czterech DS`ów luzem, więc na zdjęciu tylko dwa. http://obrazki.elektroda.pl/9677520400_1... Ten kod zajmuje ponad 50% mniej niż Twój i na nic nie czeka. [syntax=basic4gl]'### TERMOMETR 4xDS18B20 ### $regfile = "m8def.dat" $crystal = 8000000 $hwstack...
Ja bym spróbował Image.canvas.pixels , ale tego nie testowałem. ta medota odczytasz kolor piksla ale to polowa sukcesu parametry X,Y chce okresic za pomoca najechanei kursorem na te pozycje i tu jest problem ... :/ A ten kod co napisałeś wyżej to nie działa?
Twoja funkcja do odczytu stanu przycisków powinna wyglądać mniej więcej tak: lcd_goto to pokaż jak ona wygląda. Ogólnie makro: menu_set_xy powinno ustawić kursor w odpowiedniej pozycji gdzie x jest z zakresu to 0 ...15 a y 0 ...1.
Nie. Jesli ustawisz za duzy kontrast to caly zrobi sie czarny. jedna polowa zrobi sie czarna gdy bedziesz mial prawidlowy kontrast i wysliesz komende Display ON do jednej polowki. Niesty tak jest zbudowany ten wyswietlacz ze jest logicznie podzielony na dwa wyswietlacze 64x64. Sygnaly CS1 i CS2 sluza do wybierania polowki do ktorej wpisujesz/odczytujesz....
procedure TForm1.Timer1Timer(Sender: TObject); var pozycja :tpoint; begin getcursorpos (pozycja); label1.caption :=inttostr(pozycja.x); label2.caption :=inttostr(pozycja.y); end;
Wszystkie sygnały okresowe można opisać w kategoriach amplitudy i fazy. Jest to wiedza przekazywana na podstawowych zajęciach z teorii obwodów. Przypomina się to za każdym razem, gdy obserwuje się wiele zjawisk w układach elektronicznych, chociażby niektóre rodzaje wzmacniaczy, które odwracają fazę sygnałów itp. Pomiar fazy sygnału wydawać może się...
Problem polega na tym, że odczytujesz wartość ADC z uC zamiast z DS18xxx. Brakuje ci obsługi DS18B20. Poniżej fragment kodu działającego u mnie. [syntax=vbnet] Config 1wire = Portb.0 '0,1,2 NOP 3,4,5,6,7 works good ON MY Equipment Do 1wreset 'reset 1wwrite &HCC 'jedna kostka, więc wykorzystujemy rozkaz SKIP ROM 1wwrite &H44 'dokonaj konwersji Waitms...
Szanowni koledzy. Po wielkich mękach naniosłem zmiany i wyprodukowałem to. Config 1wire = Portc.3 Const Zwieksz = 1 Const Zmniejsz = &HFF Const Row = 1 Declare Sub Odswiez_ldc(byval Index As Byte) Rem **** dołożony sub ***************** Declare Sub Od_ldc Rem *********************************** Declare Sub Modyfikuj_polbajt(byval Zwiekszzmniejsz...
Ad 2) Tak, można (i tak jest). Co do odczytu/zapisu z/do pliku to każda funkcja fscanf czy fprintf dopisuje tam gdzie zakończyła operację poprzednia funkcja czytająca czy zapisująca. Dotyczy to również funkcyj fgetc, getc, fputc, putc, fgets, fputs i innych. Każda, powtarzam każda funkcja zapisująca do pliku czy to fprintf, czy fputc, czy fputs czy...
Witam, mam podlaczona ATmege z wyswietlaczem alfanumerycznym w trybie 4-bitowym z odczytem flagi zajętości. Uzywam biblioteki ze strony http://radzio.dxp.pl/hd44780/ Inicjalizacja wyswietlacza przebiega tak jak powinna, kursor (ktory wlaczylem sobie) pojawia sie na pierwszej pozycji. Ale niestety jakakolwiek proba wyswietlenia znaku (LCD_WriteData()...
Algorytmy, algorytmy, algorytmy... Wszystko zależy od inwencji :) . Ja mam u siebie ostro podzielone, i potem jest łatwo wymieniać moduły i zmieniać funkcjonalność. Przede wszystkim wymiary lcd musisz przechowywać, proponuję zmienne, żeby była łatwość wymiany lcd. Poza tym przechowujesz pozycję kursora i przy każdym znaku ją aktualizujesz - nie musisz...
Dawno, dawno temu, gdy urodziła się Amiga 500, zobaczyłem co to jest myszka. Wówczas pracowałem ostro na ZX Spectrum+ (dzisiaj też). Pomyślałem sobie, że mi się też przyda myszka, więc zacząłem prząść program. Najpierw zrobiłem ruchomą strzałkę sterowaną klawiszami komputerka, a potem rozebrałem myszkę z amigi i okazało się że jest zrobiona na LM 339!...
http://obrazki.elektroda.pl/5924959500_1... Witam ponownie! Kilka dni temu chwaliłem się projektem "PALM v1.0 BETA Atmega128", a dziś chciałbym przedstawić komputerek do motoru lub roweru jaki zrealizowałem już jakiś czas temu na zamówienie. Urządzenie miało zastąpić oryginalne psujne, mechaniczne zegary. Funkcje i założenia: *Wyświetlanie...
Zero w ASCII ma kod #48 bodajze wiec mimo wszystko przy wypisywaniu 105 nie zakonczy na 1 (ktora ma kod #49). Co do meritum. Z LCD bywa ciezko na poczatek. Moze najpierw LED ;) Ja przy uruchamianiu LCD z gotowca spedzilem 3 dni. Bledow nalozylo sie kilka. Wybralem np. nozki procesora co byly przeznaczone do I2C i one nie dawaly stanu wysokiego (potrzebne...
Panowie, szanowni koledzy.... Powiem szczerze chyba ktoś mnie, źle rozumie... Tą klawiaturke znam i właściwie w swoim działającym układzie wykorzystuję jeden PCF więc sama klawiaturka ograniczona jest do 8 przycisków. Ona działa i ma się dobrze. Mnie chodzi o coś takiego... podłączam do jednego portu procesorka układ np DS2405 i odczytuję jego adres...
(at)tmf Oczywiście jak zawsze przy analogowych odczytach - ale to oczywiste. Wytłumaczenie zwiększeniem powierzchni - być może. Ma to jednak ten nieprzyjemny efekt tłumacząc obrazowi, że naciskając mocniej - kursor "odpływa" o kilka - kilkanaście pikseli, a odpuszczając wraca do swojej pozycji. Wyeliminowane jest to zupełnie w bibliotece segger-a (tej...
(at)hevet na razie próbuję dorobić obsługę wyszukiwania sieci WiFi i zapisania hasła do niej, aktualnie listuję znalezione sieci z mocą sygnału na OLED z możliwością przewijania wyboru, ale trochę utknąłem na zrobieniu obsługi wybierania znaków na pozycji kursora, muszę znaleźć przyczynę złej pracy enkodera w tej funkcji, a potem zapisać hasło w eeprom...
Witam na potrzeby szkolne stworzyłem termometr na układach Attiny 2313 i Dallas 20b18 Interesuje mnie w jaki sposób odbywa się odczyt temp. z czujnika Dołączam program z bascomAVR $regfile "2313def.dat" *Nazwa pliku doobsługi programu $crystal = 1000000 *Częstotliwosc taktowania 1Mhz z dokumentacji układu Config Lcd = 16 * 1a *Deklaracja LCD...
ja używałem DelphiX do obsługi DirectX'a pod Delphim i tam był taki komponent TInput, obsługiwał Myszke(nawet z wibracjami), Klawiatrue i Joy'a. i tam odczyt pozycji myszki był inny niż w standardowym trybie, tzn nie podawał współrzędnych tylko podawał przesunięcie w osiach X i Y w stosunku do ostatniego odczytu, czyli trzeba było zrobić odczyt położenia...
Pomyśl trochę nad "sprytem" kodu :D Chodzi mi o to że kiedy widzisz powtarzające się linijki kodu to powinieneś pomyśleć "czym one się różnią" i tylko te różnice napisać osobno a wszystkie powtarzające się sprawy napisać tylko raz. Po co tyle tych Locate 1,1 . Przeciez i tak i tak będziesz tę linijkę rysował od 1,1 zawsze, chyba że inaczej podejdziesz...
Hey czyli problem jest w instrukcji Ss = Format(ss , " 0.0") wrzuć ten program i powiedz czy wszystko gra jeżeli tak będę pisał co zrobiłem. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza...
Witam wszystkich: Mam mały problem z programem arduino do sterowania zgrzewarką punktową. Chodzi o to, że nie uzyskuję czasu deklarowanego przez program. Program pochodzi z netu z małymi modyfikacjami z mojej strony. int odczytanaWartosc = 0; int czas = 0; #include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2);...
Proponuję lekturę status_check: ;szyna danych LCD - jako wejście clr R17 out DANE_LCD_DDR, R17 ;DDRB sbi STER_LCD, C_D ; C/D = 1 sbi STER_LCD, WR ; WR = 1 cbi STER_LCD, RD ; RD = 0 ldi r16, 0x03 ; STA0 = 1 , STA1 = 1 status_loop1: cbi STER_LCD, CE nop ; opóźnienie na ustawienie danych przez LCD in R17,DANE_LCD_PIN andi R17, 0x03 sbi STER_LCD,...
Witam, wiem ze to jest trochę utarty temat potrzebuje pomocy w programowaniu czterech termometrów ds18B20 a meczę sie już dłuższy czas. Poniżej mój kod. (narazie jeden termometr. bez sprawdzania błędów i stanu podłączenia) 1. jak odczytać i wyświetlić temperaturę (z mojej konfiguracji) nie musi być dokładna do 0.1 stopnia!(narazie nawet same pełne stopnie)...
Nie mam zdefiniowanego co ile ma być odczyt temperatury Tutaj jest fragment kodu: #include <DallasTemperature.h> //biblioteka czujnika temp #include <OneWire.h> //biblioteka interfejsu #include <LiquidCrystal_I2C.h> //biblioteka wyświetlacza 2004 #define ONE_WIRE_BUS2 //definiowanie pinu ONE-WIRE OneWire oneWire(ONE_WIRE_BUS); DallasTemperature...
Tryb jest 4 bitowy(chyba),bo korzystam z programu powyżej kolegi sp3uqw piny ma mam podłączone nastepująco PD0->D0.....PD7->D7(atmega8) to chyba nie nie przeszkadza że mam podłączone wszystkie 8 pinów w trybie 4 bitowym?? a mój program wygląda tak: #include <avr/io.h> #include "funkcje.c" #define RS_ON sbi(DDRC,PC5);sbi(PORTC,PC5) #define...
http://obrazki.elektroda.pl/4730371500_1... XM-scope 3 - miniaturowy 2-kanałowy oscyloskop cyfrowy dla każdego. Witam. Przedstawiam dziś kolejną, trzecią już wersję oscyloskopu cyfrowego na procesorze z rodziny AVR. Tym razem urządzenie jest bardziej rozbudowane, dodane jest wiele ciekawych i przydatnych funkcji oraz przede wszystkim dodających...
Witam, Mam problem do zapisu do konkretnej linii w pliku tekstowym. Zacznę od działania programu. Mój program ma działać na zasadzie, że tworzę plik tekstowym gdzie w pierwszym wierszu jest umieszczona liczba wierszy w tym pliku natomiast pozostałe wiersze to liczby od 1 do podanej liczby wierszy. Rzecz jasna każda liczba jest w nowej linii. Chcę zapisać...
TMP36 widzę że są nie stabilne chyba że da się to jakoś skonfigurować. Zacząłem więc działać z DS18B20. Trochę poczytałem w sieci i udało mi się zrobić coś takiego: 1.Udało się zainstalować bibliotekę OneWire i DallasTemperature oraz odczytuje temperaturę i numer czujki z portu szeregowego. 2.Udało się również podłączyć wyświetlacz, który podłączyłem...
To sobie narobiłeś. 1. Nie ma podziały na dobre i złe ustawienia względem BIOSu. 2. Nie zmienia się rzeczy, które nie wiesz co znaczą. 3. Ustawienia są po to by je zmieniać, a tym samym uzyskać jak nalepszą stabilność i wydajność względem konkretnego komputera. 4. Nie ma takiej opcji, że wykrywa Ci mniej pamięci, niż realnie masz włożone. Lepiej wyciągnij...
Witam od dłuższego czasu nie mogę sobie poradzić z kodem a mianowicie kiedy zostaje przekroczona temperatura włącza się alarm do tego momentu wszytko jest ok, problem jest w tym że nie wiem jak to zrobić tak żeby po wciśnięciu przycisku (mono stabilnego) i podaniu stanu wysokiego na pin 6 ,alarm się wyłączył naokoło 10 min ,ale tak żeby stan temperatury...
Sukces. Udało się zrobić termometr oto kod programu: #include<OneWire.h> #include<DallasTemperature.h> int one_wire = 16; //Transmisja 1-Wire na pinie 16 OneWire oneWire(one_wire); //wywołujemy transmisję 1-Wire na pinie 10 DallasTemperature sensors(&oneWire); //informujemy Arduino, ze przy pomocy 1-Wire //chcemy komunikowac sie z czujnikie...
Witam, mam problem z wyświetlaczem LCD 2x16 na sterowniku HD44780. Otóż, jak widać na załączonym obrazku, nie wyświetla on dwóch pierwszych znaków w dwóch pierwszych liniach. Szczerze mówiąc nie pierwszy raz stykam się z wyświetlaczem na tym sterowniku, do tej pory korzystałem z wylutowanego 1x16 ze starego skanera. Teraz zachciało mi się kupić coś...
Szukam tego o czym napisałem w temacie. Przydałby sie moduł z dodatkowymi funkcjami odczytującymi pozycję i wciśnięte klawisze myszki itp. Może jakiś link do strony gdzie to napisali? Zamykam. - arnoldziq
[syntax=c]//Dodawanie bibliotek #include <DHT.h> #include <DHT_U.h> #include <Wire.h> #include <OneWire.h> #include <BMP180.h> #include <LiquidCrystal_I2C.h> #include "DS3231.h" #include <DallasTemperature.h> //DHT dht21(3, DHT21);//utworz instancje dht dla czujnika DHT11 podlaczonego do pinu 3. #define DHTPIN...
Witam, chciałem przetestować porty ADC wyświetlając wynik na LCD. Korzystam z kodu przedstawionego tutaj: http://obrazki.elektroda.pl/3988361600_1... [syntax=c]#include <avr/io.h> #include <util/delay.h> #include "HD44780.h" #include "HD44780.c" #include <stdio.h> //definicja napięcia referencyjnego #define VREF 5.0...
Witam, W jaki sposób miałoby zostać zrealizowane klikanie? Jeżeli chodzi o joystick, to przychodzi mi do głowy budowa czegoś w rodzaju wahadła o 2 stopniach swobody pozycjonowanego na środku za pomocą lekkich sprężyn/gumek. Odczyt z wahadła następowałby za pomocą enkoderów optycznych, które nie wprowadzają żadnego oporu. Inną opcją jest użycie akcelerometru....
Poprawiłem to tak jka mi podpowiedziałes, i chyba znowu gdzies musze robic bład bo nic mi nie wyswietla samo zczytywanie wyglada teraz tak: setb lcd_rs ;rs=1 setb lcd_rw ;rw=1 call delay setb lcd_en ;e=1 call delay mov A,p1 clr lcd_en ;e=0 call delay swap A anl A,#11110000b mov B,A setb lcd_en ;e=1 call delay mov A,p1 clr lcd_en e=0 call delay clr lcd_rw...
$crystal = 4000000 'deklaracja częstotliwości pracy kwarcu $regfile "attiny2313.dat" 'model procesora dla którego jest ten program Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32 ' definicja znaki stopnia Config 1wire = Portd.5 ' konfiguracja portu PD.5 jako wejścia magistrali 1-wire Dim Odczyt(2) As Byte , A As Byte , Licznik...
Witam, mam mały problem z uruchomieniem menu wyboru. Chciałbym podpiąć do ATmega8A wyświetlacz LCD a następnie dwa przyciski i 5 diod. Przyciski były by do przewijania w górę lub w dół menu a którym znajduje się odpowiednia lista. W zależności co pokazuje wyświetlacz (ma ustawione, w zależności od wartości zmiennej którą inkrementuje/dekrementuje przyciskami)...
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();...
http://obrazki.elektroda.net/44_12749499... Witam serdecznie! Projekt ten jest moim pierwszym projektem który był tworzony nie tylko z chęci nauczenia się czegoś, czy wykorzystania jakichś elementów, lecz ze względów czysto praktycznych i użytkowych. Cele: Ograniczenie ilości pinów wykorzystywanych przez wyświetlacz graficzny LCD Opis układu:...
Witam, problem mam nastepujacy: Kupilem wyswietlacz 2x16, kontroler zgodny z HD44780. Napisalem (przepisalem z 8052.com) procedury obslugi i zaprogramowalem proca (89s52) zeby wyswietlal przykladowy tekst. Zamiast wyswietlic jeden wyraz w 1 lini (od 3go miejsca) a drugi w drugiej (od 5tego), oba zostaly wyswietlone w 1 od 0go - nadpisanie. Napis powinien...
http://obrazki.elektroda.pl/5335012100_1... Mister Gloves to bezprzewodowy interfejs USB, pozwalający poprzez intuicyjne ruchy ręki i palców sterować komputerem. Rękawica noszona na prawej dłoni umożliwia użytkownikowi kontrolę ruchu kursora, wykonywanie skrótów klawiaturowych oraz symulowanie kliknięć przyciskami myszy, poprzez zginanie...
Witam, chciałem zrobić cykliczny odczyt wartości napięcia na mikrokontrolerze ATmega32. Kod PRAWIE działa, aby odświeżyć pomiar muszę wgrać panownie program do ATmegi. Gdzie może być problem? [syntax=c]#include<avr/io.h> #include<util/delay.h> #include"HD44780.h" volatile int a=0; volatile float wynikV=0; volatile int calosc=0; volatile...
Alfanumeryczne wyświetlacze LCD ze sterownikiem HD44780 Obecnie ze względu na swoją niską cenę, alfanumeryczne wyświetlacze LCD są bardzo często stosowane w układach opartych na mikrokontrolerach. Chciałbym przedstawić tutaj sposób sterowania takim wyświetlaczem. Sterowanie wyświetlaczem alfanumerycznym wyposażonym we sterownik HD44780 odbywa się na...
Declare Sub Read1820 'deklaracja podprogramu Declare Sub Temperature 'deklaracja podprogramu Dim Bd(9) As Byte 'deklaracja tablicy zmiennych Dim I As Byte , Tmp As Byte 'deklaracja zmiennych używanych przez program Dim T As Integer , T1 As Integer 'deklaracja zmiennych używanych przez program 'Dim X As Byte 'deklaracja zmiennych używanych przez program...
Tu masz prosty programik, który kiedyś pisałem. Przedstawia obsługę zarówno wersji B jak i S. [syntax=basic4gl] $regfile = "m8def.dat" 'deklaracja procesora $crystal = 8000000 'deklaracja czestotliwosci taktowania Config Lcd = 16 * 2 'typ wyswietlacza i konfiguracja pinow Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5...
[syntax=basic4gl] $regfile = "m8def.dat" 'deklaracja procesora $crystal = 8000000 'deklaracja czestotliwosci taktowania Config Lcd = 16 * 2 'typ wyswietlacza i konfiguracja pinow Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 Deflcdchar 0 , 7 , 5 , 7 , 32 , 32 , 32 , 32 , 32 'definicja...
Zmodyfikowałem nieco kod, to co zmieniłem umieszczone jest między liniami złożonymi z -. Reszta w komentarzach w kodzie. [syntax=c]#include <reg51.h> #include <absacc.h> #define dataport P2 //definiowanie nazwy portu P2 jako dataport #define port P1// definiowanie nazwy portu P1 jako port sbit reset = port^0; //przydzielanie nazw do numerów...
https://obrazki.elektroda.pl/9365002800_... W poprzedniej części opisałem zasadę działania i podstawy sterowania wyświetlaczy VFD, w tej części przejdę do praktycznych działań :D które większość z Was pewnie bardziej zainteresuje. Nowe wyświetlacze są stosunkowo kosztowne w zakupie i nie równoważy tego fakt że przeważnie zawierają...
Tutaj masz działający kod do termometru. Na 2 DSy ale sobie przerobisz :) Wytnij tylko deklaracje zmiennych od napięcia i ADC bo oryginalnie mierzył jeszcze napięcie. [syntax=basic4gl] $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 8000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja...
http://obrazki.elektroda.pl/6007624100_1... Od czasu opisu ponizej mocno się zmieniło :) Staram się pisać kolejne posty na dole :) Stał sie dość złożony - tak że porządna instrukcja obsługi by się przydała :) http://obrazki.elektroda.pl/1225555800_1... http://obrazki.elektroda.pl/9096174000_1... To taki...
Jęsli jeszcze potrzebne:) LCD masz połączony przez dekoder adresu. Wystarczy dane podać na adres 0xFF05 – rejestr danych, a instrukcje na 0xFF04 – rejestr instrukcji. Przyklad ( sprawdzany na ATMEGA128 EVB503 - wtedy mam inne adresy danych i instrukcji. W przykładzie zmieniłem na te które są Ci potrzebne w EVB03) #define LCD_instrukcje (*(unsigned...
........ Dodatkowo ekran LCD wyświetlający napis z nazwą używanego programu zachowuje się jak tester dla epileptyków. ................. Przestaje to już rozumieć - zastanawiam się nad podłączeniem LCD przez kondensator, choć w sumie nie wiem czego się po tym spodziewać. Zazwyczaj program pracuje tak jak jest napisany. Niżej masz gotowy, względnie pracujący...
Witam. Napisałem program do obsługi woltomierza i pomiaru napięcia na atmega8. Cały układ będzie zamontowany w samochodzie. Po zaprogramowaniu wszystko prawie działa tylko przy samym włączaniu na wyświetlaczu pojawia się że temperatura wynosi 85 stopni a dopiero po ok 4s (drugim odczycie temperatury) podaje właściwą temperaturę. Później wszystko działa...
Dopisz na wszelki wypadek pod predkoscią rezonatora i typem procesora Zamiast Set i Reset spróbuj Portb.0 = 1 Możesz też spróbować dodać nową zmienną jak poniżej dla testu. http://obrazki.elektroda.pl/2865435800_1... [syntax=basic4gl]'### TERMOMETR 4xDS18B20 ### $regfile = "m328pdef.dat" $crystal = 8000000 $hwstack = 128 $swstack = 64...
Ok wszystko działa, tylko nie mam pojęcia jak wykonać procedurę edytuj. Coś tam napisałem ale mi to nie działa. Prosiłbym o wyjaśnienie dlaczego ta procedura nie działa tak jak powinna. A powinna wczytać numer identyfikatora rekordu który ma być edytowany, po czym powinna usunąć ten rekord, a następnie powinna dać możliwość wpisania nowego rekordu w...
Spróbuj tego - u mnie chodzi bez problema...! Declare Sub Read1820 'deklaracja podprogramu Declare Sub Temperature 'deklaracja podprogramu Dim Bd(9) As Byte 'deklaracja tablicy zmiennych Dim I As Byte , Tmp As Byte 'deklaracja zmiennych używanych przez program Dim T As Integer , T1 As Integer 'deklaracja zmiennych używanych przez program 'Dim X As Byte...
Po przeczytaniu wielu postów napisałem program który ma wyświetlać na wyświetlaczu LCD Napięcie , prąd oraz temp. Chciałem to wykorzystać do zasilacza, którego właśnie buduje. jednak po zaprogramowaniu procka wyświetlacz mi się nie inicjuje (zaświecają się kwadraty w pierwszej lini). Czy jest jakiś błąd w moim programie ? Proszę o sprawdzenie. $regfile...
Witam ponownie posklejałem taki kod ale cały czas wyświetla temperaturę 0°C. Mógłby ktoś mi pomóc napisać lub naprowadzić na błąd który popełniam od razu mówię że nie miałem nigdy nic wspólnego z mikrokontrolerami. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy...
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...
If I3 > 0 Then .Nie wiem właśnie, w którym miejscu robię błąd, bo w sumie przepisuje wynik pomiaru do I3 i procedure If, then, else, end if.
witam wszystkich, Mam moduł MMnet03, który zawiera atmege128, mam problem z uruchomieniem LCD w interfejsie 8bitowym, chce to zrobic jak jak jest w dokumentacji rys18 http://www.propox.com/download/docs/MMne... Tzn, tak jak podłącze sie bezpośrednio do portów uC które są wyprowadzone na płycie,to wyświetlacz w interfejsie 4bitowym mi działa odpowiednio...
Witam na wstępie chciałem powiedzieć, że nie jestem dobry w programowaniu, bo dopiero zaczynam i mnie to powoli wciąga. Mam parę pytań i postanowiłem napisać. Chce zrobić sobie taki mini komputer pokładowy do Fiata Cinquecento 700. Ten mały układ ma wskazywać temperaturę w środku samochodu i na zewnątrz a tak, że będzie pokazywać napięcie, jakim jest...
Witam, Jestem w trakcie przerabiania kursu z EdW http://sklep.avt.pl/photo/product_info/c... Pracuje na zestawie startowym ZL3AVR http://obrazki.elektroda.pl/1437402200_1... Zamieszczam kod programu: ////////////////////////////////////////... // main.c - testowanie...
Można... $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza LCD Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5 Config Lcd...
Ostatnio dostałem jeszcze trzy takie wyświetlacze i podjąłem próby ich uruchomienia. Co już wiem : - Do modułu wyświetlacza podłączone są 3 diody LED (pin1-3) oraz 9 przycisków (piny 5-13) jako iż całość (płytka z klawiaturą i LED oraz wyświetlacz) stanowi kompletny panel kontrolny drukarki HP LaserJet 4000) - Moduł wyświetlacza komunikuje się z płytą...
Znalazłem poniższy kod na "Elektrodzie" załadowałem do procesora, pomiar napięcia jest zrealizowany zgodnie z przykładem z książki o Bascomie, niestety coś jest nie tak, ponieważ mimo że do ADC1 nie przykładam żadnego napięcia na wyświetlaczu pokazuje napięcie 1,96-2,03 V, po przyłożeniu napięcia 5V wskazanie wyświetlacza jest prawidłowe. [syntax=basic4gl]...
Kolego kwarc mam 12MHz. Fuski oczywiście dobrze ustawione. Sprawdziłem też na wewnętrznym 1MHz i 8MHz - też nie działa. (Oczywiście we właściwościach projektu też zmieniłem) Hehe, dopiero teraz zauważyłem, że sprawdzam flagę zajętości we funkcji do jej sprawdzania ;) To też poprawiłem, ale dalej nie działa. EDIT. OK, wiem już co było nie tak. Dodanie...
Program źle napisany ale działa. Temat do zamknięcia. #define F_CPU16000000UL//16MHz zegar procesora #include <avr/io.h> #include <util/delay.h> #include <string.h> #include <stdlib.h> #include <avr\interrupt.h> /***************************************... //*Definicje makr zmieniająćych stany bitów w rejestrach*//...
ok tadzik juz dziala :D Pomogles znaczy doradziles z tymi fusebitami Nalaeza ci sie te pkt ale jak bys jeszcze pomogl mi w polaczeniu tych kodow : $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'linia PB2 jako wejściowa Config Lcd = 16 * 1a 'konfiguracja typu wyświetlacza...
Witam. Postanowiłem zbudować kolejny gamepad na mikrokontrolerze atmega, tym razem miałby on posiadać 10 przycisków. Ze strony http://www.raphnet.net/electronique/usb_... pobrałem więc kod źródłowy 8 przyciskowego gamepada i zacząłem go przerabiać po swojemu. Najważniejsze zmiany jakich dokonałem to W pliku Twelve.c: Dodałem jeden bajt...
Cześć Z tego co widziałem w sieci, jest bardzo mało materiałów dotyczących MSP430 (na elektrodzie może ze 2 wątki). Napisałem funkcje umozliwiające sprzętowe wykorzystanie I2C, głównie na potrzeby komunikacji z układem PCF8574, który z kolei wykorzystuję do sterowania LCD 2x16 (HD44780). Poniżej procedury do obsługi I2C: [syntax=c]#include "msp430.h"...
Mam ten program podany w asemblerz do programowania w DSM- 51, a potrzebuje przerobić go na język C wygląda to tak: ORG13H ;obsługa przerwania z wejścia INT1 PUSHACC ;przechowanie akumulatora PUSHPSW ;i rejestru stanu na stosie MOVR1,#CSIC;odczyt ze sterownika przerwań MOVXA,(at)R1 ;numeru przerwania ANLA,#03H MOVX(at)R1,A ;skasowanie przerwania CJNEA,#3,INT_NO3;inne...
Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
[syntax=basic4gl] $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) 'Deklaracja portów od wyświetlacza LCD Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5 Config Lcd = 16 *...
wrzucam całośc, co do Twojego rozwiązania sprawdzze jutro. Wcześniej nie wywoływałem funkcji w przerwaniu to pojawiały się 'krzaki' na LCD - przerwanie od T0 przerywało chyba funkcję wyświetl() dlatego dałem w przerwaniu. /*======================================... WinAvR wersja WinAVR-20050214 **Program obsługujący woltomierz/generator...
Naprawione. [syntax=basic4gl]$regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności wystarcza) Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.4 , Rs = Portb.5 Config Lcd = 16 * 2 'ustawiamy typ wyświetlacza...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...
Witam! Jako że zaczynam dopiero z bascomem mam mały problem z napisaniem sensownego kodu do termometru. Na tą chwilę z materiałów znalezionych w internecie udało mi się zlepić coś takiego: $regfile = "m8def.DAT" 'deklaracja procesora, w tym wypadku Atmega8 $crystal = 1000000 'deklaracja cześtotlwiości pracy (wew oscylator 1MHz w zupełności...
Oto ostatni moj kod, ktory probowalem zaimplementowac. To bylo na Mega8 z obsluga 1-wire - wycialem to. // Definicje dotyczace LCD #define RS 0 // wybor rejestru #define RW 1 // 1 - odczyt; 0 - zapis #define E 2 // sygnal zezwalajacy (enable) #define PORTLCD PORTA // port z podlaczanym LCD #define DDRLCD DDRA // port z podlaczanym LCD #define...
To jest 20x4 znaki bo nie upewniłem się? Jakies problemy z nim miałem, poniżej działający kod (biblioteki IIC nie załaczyłem) [syntax=c] LcdDOGM204Init(); //LcdDOGM204Charset( 1 ); LcdDOGM204Kontrast( 35 ); //LcdDOGM204view( 1 ); // Negatyw/pozytyw //======================================... void LcdDOGM204Init() { WriteLcdIIC(...
Witam, właśnie jestem na etapie łączenia kodu zegarka z termometrem wykorzystując przerwania. Tak mi się przynajmniej wydaje. Czy moglibyście rzucić okiem na poniższy kod i wskazać mi jak zmusić odświeżanie odczytu np. temp. co sekundę. Kodu zegarka tam jeszcze nie ma ale myślę że poradzę sobie na podstawie Waszych podpowiedzi dotyczących temp. Z góry...
to znaczy, chodzi ci o jakiś kod w C który obsługuje LCD 2x16 znaków? kod znaleziony na elektrodzie i trochę przeze mnie przerobiony #define F_CPU 1000000UL #include <avr/io.h> #include <avr/delay.h> // Definicje dotyczace LCD #define LCD PORTD //port z LCD #define RS 0 // wybor rejestru #define RW 2 // 1 - odczyt; 0 - zapis #define E 3...
Próbowałem z tą komendą.Niestety mam błąd "no more space for bit" "invalid data type".A jeżeli daję samo cls, to wtedy nie mam abo jednego napisu ,ani drugiego. Wstawiam cały kod: [syntax=basic4gl] $regfile = "m32def.dat" $crystal = 16000000 $hwstack = 32 $swstack = 50 $framesize = 40 Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1...
Może nie umie wstawiać? $regfile = "m88def.dat" $crystal = 1000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4 Config Portd = &B00001111 'portd 0 1 2 3 jako wyjscia portd 4 jako 1wire 5 6 7 jako wejscia Portd.5 = 1 Portd.6 = 1 Portd.7 = 1 Portd.3 =...
problem polega na tym ze wyswietla sie "- 0.1" stopnia czy jest czujnik czy go nie ma jesli odejme 4,7k od +5 to jest "0.0"stopnia program wyglada tak. co jest nie tak? $crystal = 4000000 $regfile "attiny2313.dat" Deflcdchar 1 , 14 , 17 , 17 , 14 , 32 , 32 , 32 , 32 Set Portd.6 Config 1wire = Portd.5 Set Portd.6 Dim Odczyt(2) As Byte...
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...
Program podany przez kolegę arktik1 za który bardzo dziękuję działa świetnie. Mam jeszcze jedno pytanie. Mam tu program obsługi termometru autorstwa naszego forumowego kolegi Ducha.Oczywiście jest on trochę okrojony bo pierwotnie obsługiwał 4 czujniki: 'Termometr 4 punktowy DS18b20 by Duch na podstawie materiałów znalezionych w sieci 'Kontakt duszkowski(at)o2.pl...
odczyt pozycja serwo kółko kursor znikający kursor
pozostałe silniki spalinowe cechowanie układów lumel amperomierz
rower elektryczny romet posnet thermal
Instrukcja obsługi zmywarki Triathlon 45_1 DBL 04 Kod błędu EH 258 w Buderus i Worcester Bosch