Ale niestety też trzeba się bawić w konwersję liczb, te to bardziej do string. Nie potrzebne są żadne stringi, konwersje itp. . Do wyświetlenia na wyświetlaczu siedmiosegmentowym potrzeba jedynie informacji co ma być wyświetlane na każdej pozycji. Jaka cyfra od 0 do 9. Owszem można użyć konwersji liczby int na string i z tego wyciągnąć wartości poszczególnych...
Zbędne spacje usuniesz np. w ten sposób : function TrimSpaces(tekst : widestring):widestring; begin result:=tekst; while (pos(' ',result)<>0) do delete(result,pos(' ',result),1); end; [...] RichEdit1.Text:=TrimSpaces(RichE... A działający kod, który wykonuje to zadanie...
Poczytałem ale... dalej nic z tego nie rozumiem:( Na to niestety , nie mam wpływu :| chyba tylko gotowy przyklad mi pomorze. Ok. Dim Liczba As String * 4 , Cyfra As String * 1 Dim Tysiace As Byte , Setki As Byte , Dziesiatki As Byte , Jednosci As Byte Liczba = "2007" Cyfra = Mid(liczba , 1 , 1) Tysiace = Val(cyfra) Cyfra =...
Nie odkrywajmy koła od nowa ;) Kod dla takiego wyświetlacza jak na obrazku. https://obrazki.elektroda.pl/2987586400_... Wyciąłem go z kodu który w minute można znaleźć w DuckDuckGo :P Jeśli ktoś ma inaczej podłączone segmenty to musi tylko edytować tablicę Data. [syntax=vbnet]$regfile = "m328pdef.dat" $Crystal=16000000 $hwstack=32 $swstack=8...
[syntax=vbscript]Public Function Slownie(L) As String Dim C As Currency, S As String, G As String, Liczba000 As String Dim i As Byte, Wynik As String, L1 As Byte, L10 As Byte, L100 As Byte If Not IsNumeric(L) Then Wynik = "???" ElseIf L > 999999999999# Then Wynik = "+++" ElseIf L < -999999999999# Then Wynik = "---" Else C = CCur(L) Wynik = Switch(C...
Łap bo jak zaczniesz z tym Multimaster to się nigdy z tego nie wygrzebiesz a odkrywasz tu koło na nowo :D Po pierwsze nie zauważyłem wcześniej, że już skonfigurowałeś Serial in 0. Błędem natomiast jest jest używanie Serial out 0 a potem zamiast to wrzucić do bufora to wycinasz po jednej literce ze stringa i nadajesz pojedynczo... Po prostu napisz Print...
Zamieszczam jeszcze raz listing funkcji ze szczegółowym komentarzem [syntax=vbscript]Function Osobno(x As String) Dim ch As String 'znak w ciągu tekstowym Dim list 'formalna deklaracja zmiennej typu Variant 'która będzie pełnić funkcję tablicy wynikowej ReDim list(1 To Len(x) + 5) As String 'określenie rozmiaru i typu danych w tablicy 'tablica jest...
Ze względu na "zaszumione" dane zrobienie formuły jest dosyć dużym wyzwaniem, ale można kombinować z makro: [syntax=vbnet]Function Wyjmij(r As Range, n As Integer) As String Const minLen = 5 Wyjmij = "" Dim x, tmp, tmp2 As String Dim v, cn, cg As Integer tmp = "" For Each x In r tmp = tmp & x tmp = tmp & "%" Next x tmp2 = "" cn = 0 cg = 0 For...
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ą...
https://obrazki.elektroda.pl/9337556500_... Pewna wyjątkowa osoba zasługiwała na równie wyjątkowy prezent, a że nie jestem fanem kupowania niespodzianek, postanowiłem "zrobić" coś własnym rękami. 1. Wstęp, motywacja 2. Zarys konstrukcji 3. Płytka z diodami - projekt (łączenie diod) 4. Płytka z diodami - projekt (zatrzaski) 5. Eagle...
https://obrazki.elektroda.pl/7238862200_... Niedawno w dziale DIY pojawił się Hardware Hardware jest tak banalne, że nie odważyłem się zaprezentować niniejszego artykułu jako DIY :). Od pewnego czasu wykorzystuję SONOFFy jako bazę projektów opartych o ESP8266. Sonoff zapewnia mi ESP, zasilanie i obudowę. Jedyne co mi pozostało to dodanie...
https://obrazki.elektroda.pl/5220229400_... Witajcie, przedstawię tu od 0 rozpoznanie wyprowadzeń, podłączenie, zaprogramowanie i uruchomienie z Arduino wyświetlacza LCD z elektrośmieci. Omawiany tu wyświetlacz pochodzi z pralki Amica AWSN12DA i posiada sterownik BL55066 do którego nie znalazłem biblioteki, tylko samą notę katalogową....
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ą...
Jest to makro czyli program napisany w języku Visual Basic. [syntax=vbscript] Function kwota_slownie(kwota As Double) As String Dim do_konwersji As String, kwota_groszy As String Dim zlote As String, cala_kwota As String cala_kwota = Application.WorksheetFunction.Text(kwota... "#####0.00") Select Case Len(cala_kwota) Case 4 If Left(cala_kwota, 1) = "0"...
Witam wszystkich, zainteresowałem się tym wyświetlaczem dzięki znalezionym filmikom na Youtubie Autora tematu, chciałem zrobić coś podobnego jak w odcinku 18 z termometrem DS18B20. Jest tam taki moment w którym ustawia się klawiaturę numeryczna pod pole tekstowe, kiedy otwieram debuger po podłączeniu do arduino wyświetlona klawiatura miga i znikają...
https://obrazki.elektroda.pl/8287704400_... Witajcie moi drodzy Przedstawię tutaj mój projekt zewnętrznego wyświetlacza temperatury procesora z komputera. Wyświetlacz pokazuje temperatury od 0 do 99C, jednocześnie odpowiednio dobierając swój kolor. Wyświetlacz zrobiony jest samodzielnie od 0 w oparciu o diody WS2812B, sterowany jest...
Ok poradziłem sobie dzięki pomocy innego forum Kod wygląda tak [syntax=c]void loop() { char customKey = customKeypad.getKey(); if ( x == 0) { digitalWrite(posow, HIGH ); Serial.println("wprowadz ilosc1"); lcd.setCursor(0, 1); lcd.print("Podaj ilosc"); delay(1000); while (l == 0) { String string = String(); Serial.print("C1"); char customKey = customKeypad.getKey();...
Mid i val ;) Dim Liczba As String * 4 , Cyfra As String * 1 Dim pierwsza As Byte , druga As Byte , trzecia As Byte , czwarta As Byte liczba = 1234 Cyfra = Mid(liczba , 1 , 1) pierwsza= Val(cyfra) Cyfra = Mid(liczba , 2 , 1) druga = Val(cyfra) Cyfra = Mid(liczba , 3 , 1) trzecia = Val(cyfra) Cyfra = Mid(liczba...
Nie wiem jak rozwiazać rozkładanie napisu na poszczególne litery. Miało by to działać jak przedstawiam poniżej. Dim Cyfra As String * 4 Dim P1 As String * 1 Dim P2 As String * 1 Dim P3 As String * 1 Dim P4 As String * 1 Cyfra = "1234" P1 = Cyfra(1) P2 = Cyfra(2) P3 = Cyfra(3) P4 = Cyfra(4) Dziekuje.
Proponuję Ci, abyś na początek napisał jedną funkcję do ustawiania godziny, minuty i sekund. Jako wejściowy parametr, funkcja pobierałaby maksymalną dozwoloną wartość i zwracała wartość poprawną dla ustawienia. W dalszej części będzie łatwiej poprawić błąd już tylko w jednym miejscu, a nie trzech ;) Ponadto zmienne b,c,d lepiej zadeklarować jako byte...
Mały przykład: Dim Liczba As String * 5 , Cyfra As String * 1 Dim Pierwsza As Byte , Druga As Byte , Trzecia As Byte , Czwarta As Byte ... Liczba = "21.58" Cyfra = Mid(liczba , 1 , 1) Pierwsza = Val(cyfra) Cyfra = Mid(liczba , 2 , 1) Druga = Val(cyfra) Cyfra = Mid(liczba , 4 , 1) Trzecia = Val(cyfra)...
Przyjrzałem się funkcji "strtok2()" i wniosek mam taki, Bardzo Ci dziękuję za zaangażowanie w moim temacie. Oczywiście jetem wdzięczny każdemu za każdą odpowiedź. Wczoraj do późnej godziny pracowałem nad tym programem, napisałem bardzo dużo kodu od początku, nie patrząc wcale wstecz na to co i jak pierwotnie wykonałem. Oto część kodu, który tworzę....
Piszę w bascomie. Tam jest gotowa biblioteka do tego wyświetlacza. Wyświetlacz podłączony bezpośrednio do pinów mikrokontrolera, który też jest zasilany z +3,3V. A oto testowy kod: [syntax=vbnet] $regfile = "m1284pdef.dat" '$crystal = 18432000 $crystal = 8000000 $hwstack = 64 $swstack = 64 $framesize = 64 $lib "glcdeadogm128x6.lib" '$lib "glcd-ST7567.lib"...
W przykładzie wbudowanym w Arduino jest SerialEvent, w nim dowiesz się jak odebrać linię tekstu, czyli zakończenie w terminalu ma być znakiem końca linii i początek wiersza (standardowo). Taką linię tekstu parsujesz, zamiast tak jak jest w przykładzie odesłać odebrany tekst z powrotem. Deklarujesz dwie zmienne, przypisujesz do nich wynik parsowania,...
Właśnie dowiedziałem się że na tym forum nie wolno nikogo "prosić o pomoc" więc nie proszę. Potrzebuję napisać funkcję która zamienia string lub liczbę dziesiętną na oddzielne cyfry zapisane w hex : jednostki, dziesiątki, setki, tysiące, 10tysięcy. Przykład 1239 -> a = "pierwsza cyfra hex" b = "druga cyfra hex" itd. Przeszukałem już trochę internet...
Każde zadanie ma wiele rozwiązań, najtrudniej wybrać to o które chodzi. Reszta z dzielenia przez 10 to ostania cyfra dziesiętna. Taki algorytm może działać poprawnie, ale inaczej niż wynika z treści, masz chyba porównywać zgodnie z definicją od najstarszej. Najprościej to zamienić liczbę na string i przeanalizować cyfry jak zechcesz. Zadanie staje się...
Na wstępie chciałbym powiedzieć że piszę w BASCOM-ie AVR. Buduję urządzenie które ma wyświetlać wynik na wyświetlaczu 7-mio segmentowym (podyktowane warunkami środowiskowymi i widocznością). Napisałem program który działa (listing poniżej) ale dręczy mnie pytanie czy nie da się tego zrobić prościej tzn pobierać poszczególne cyfry bezpośrednio ze zmiennej...
https://obrazki.elektroda.pl/6483751800_... Witam, PROJEKT ostatecznie ukończony :D wersja ostateczna programów dla płytek MASTER Arduino Mega2560 i SLAVE ESP8266-12E Testowałem urządzenie przez kilka dni, w międzyczasie dokonałem kilku przeróbek, jak w kodzie tak i w połączeniach PIN itp. Usunięte zostały wykryte błędy, najważniejsze to...
Jest taka fajna funkcja MID tyle że działa na łańcuchach tekstowych. Czyli Twoją zmienną liczbę trzeba zamienić na zmienną tekstową. A następnie rozebrać na poszczególne kolejne pojedyncze cyfry. Przedstawia to poniższy program w Bascom'ie: Dim A As Integer Dim C As String * 1 Dim D As String * 1 Dim E As String * 1 Dim F As String * 1 Dim Z As String...
Witam! Dziś walczę z komunikacją rs232. Posiadam dwie Atmegi jedna 32, druga 16 - odbiornik. W nadajniku nadaję string 001100.110011.001100.110011.001100.11001... przez Do Print "001100" Waitms 500 Print "110011" Waitms 500 loop Odbieram to: a) przez komputer - transmisja idealna 001100.110011.001100.110011.001100.11001...
Nie pokazałeś jak są zadeklarowane te zmienne, ale podejrzewam że Prąd to Single? Nie to mnie jednak ciekawi tylko z obliczeń wynika: 10/0.0123= 813 czyli na wejściu ADC musiałbyś mieć 3,97V żeby w ogóle zobaczyć coś powyżej 10. Masz tam takie stany na wejściu? Tak "prad" to zmienna Single. Coś źle Liczysz dopiero sprawdzałem i przy wskazaniu 4,5A...
Witam, Otóż jestem początkującym w tej dziedzinie nie mogę przejść pewnej bariery którą jest utworzenie zgodnego kodu. Chciałem stworzyć własny kalkulator, wszystko było dobrze dopóki nie zacząłem pisać kodu, który ma zadziałać. Prawdopodobnie źle formułuję polecenia które podkreśla mi na czerwono.. Tutaj podkreśliłem te błędy. Oto ten kod: Private...
Witam ! Jeśli chcesz to zrobić w c++ to jest nawet taka gotowa funkcja ktora to robi "itoa" integer to asci. A jeśli chodzi tobie o ideę jak się to robi to dzielisz swoją liczbę raz przez 10 a reszta z dzielenia to cyfra jedności to co zosstało dzielisz znowu przez 10 i teraz reszta z dzielenia to cyfra dziesiatek i tak dalej. Pozdrawiam
Witam! Mam problem z pomiarem z adc a dokladnie z tym ze wynik pomiaru skacze na lcd przy napieciu 12V w zakresie od 8V do nawet 12V. Probowalem dawac opoznienie w odczycie a takze dodalem po 2 kondensatory 100nF na kazde wejscie adc ale nic to nie dalo. Dodam jeszce ze jak mierze napiecie z modułu uruchomieniowego w ktorym mam regulowane napiecie od...
Wyszło mi coś takiego: Public Class ISSN Dim NrISSN As String Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click Close() End Sub Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click NrISSN = InputBox("Podaj numer ISSN...
Witam wszystkich forumowiczow. Mam problem z termometrem dwu punktowym na DS1820. Problem polega na tym ze jesli temp jest dodatnia to wszystko jest ok ale problem mam z ujemnymi. Rozdzielczosc jest do 0.1 stopnia. Jezeli temperatura spadnie ponizej zera to jej wartosc wynosi 0.1 czyli -1 stopien. Wydzielilem z 0.1 jedynke i jest Ok ale jezeli temp...
Napisałem program w bascomie który mierzy 16 razy napięcie na wejściu przetwornika AC, później uśrednia wynik i pokazuje na trzech wyświetlaczach 7 segment i program ten pokazuje głupoty, na wyświetlaczu wartości cały czas bardzo szybko się zmieniają. Gdy usunę część odpowiedzialną za uśrednianie wyniku jest ok. Może ktoś zerknąć na kod i powiedzieć...
Podaje kod w bascomie jaki użyłem do komunikacji się tych modułów. Może gdzieś popełniłem błąd. Podczas testów moduły były w odległości 5cm na jednej płytce stykowej z jednym zasilaniem. Nadajnik: $regfile = "m8def.dat" $crystal = 16000000 $baud = 9600 $hwstack = 32 $swstack = 10 $framesize = 40 Xon Alias &H11 Xoff Alias &H13 Ppb1 Alias Pinb.1...
Witam, Mam pytanie odnośnie języka C. Chciałbym stworzyć string czy też tablice znaków, która będzie się składała z 3 części char t[] = "A B C"; A - tekst wpisany na sztywno [char] B - cyfra wpisywana z klawiatury [int] C - tekst wpisany na sztywno. [char] Problem w tym że nie bardzo wiem jak tego dokonać. początkowo wyglądało to tak: [syntax=C] int...
Poprawiłem nieco kod i wygląda tak :[syntax=vbnet] $regfile = "m16adef.dat" $crystal = 80000000 $hwstack = 40 $swstack = 16 $framesize = 32 Config Porta = Input 'port A jako wejścia Config Portb = Output 'port B jako wyjścia ' Config Portd = Input 'Port D Jako Wejścia Config Portc = Output 'port C jako wejścia Config Sda = Portc.1 'konfiguracja pinu...
Rozumiem więc czego trzeba wyłączyć błędy (nie da się z litery stworzyć liczby). To ja bym to przerobił aby nie było możliwości błędu. Czyli dopiero wtedy zastosować funkcję CInt() kiedy znak jest na pewno cyfrą - dopiero wtedy zamienić na liczbę - Wtedy nie będzie błędu "type mismatch" Sub proba() Dim a As String, b As String, c As String Dim...
Koledzy zapalanie zera potem 1 przy przejściu z 9 na 10 było spowodowane złym ustawieniem Timer0 tera wszystko działa jak chciałem . ........... mam nadzieję że ktoś się wypowie składni programu lub optymalizacji . Mimo że program ten wydaje sie byc poprawny , bo jakoś tam pracuje, ma jednak kilka błędów. Na pierwszy rzut: 1.Deklarujesz zmienne ‘E’...
Jakby to było takie proste to nie pisałbym tematu. Wlaśnie jest tak że jak w str to int pojawi się cokolwiek innego niż cyfra to mi wywala błąd. Nie działa takie coś: StrToInt('45AB5"); Ale doszedłem do tego. Robi się to zwykłym strtoint ale musi być $ na początku. Wtedy można wpisywać A,B,C,D,E,F. Użyłem coś takiego StrToInt('$' + edit1.text);
Niestety nie mogę dalej sobie z tym tematem poradzić dlatego opiszę swój problem dokładniej. Pracuję na aplikacji okienkowej w VS 2008 na C++. Mam do obliczenia silnię. Wszystko jest jedynie mam kłopot ze zrobieniem zabezpieczenia na wypadek wprowadzania liter i znaków interpunkcyjnych. Muszą być jedynie cyfry a dokładnie liczny całkowite od 0 do 10....
Podstawy się kłaniają ale do rzeczy. Ustawiłeś zmienna X jako bajt : Dim X As Byte a za chwilę robisz cos takiego: X = "141" Zmienna typu byte może zawierać wartości liczbowe z zakresu od 0 do 255 a nie jakiś teskt!!! Do tego celu służy zmienna typu string którą deklarujesz tak: Dim X As String * 3 Cyfra 3 informuje ile znaków będzie mogła...
Kod jest dosyć długawy. Wstawię tylko początek na razie: $regfile = "m16def.dat" $crystal = 4050000 Config Kbd = Portd Config Lcd = 16 * 1a Cursor Off Deflcdchar 1 , 32 , 32 , 32 , 32 , 32 , 10 , 10 , 4 ' v Cls Deflcdchar 2 , 32 , 32 , 32 , 4 , 12 , 4 , 4 , 5 '1 Cls Deflcdchar 3 , 32 , 32 , 32 , 6 , 9 , 2 , 4 , 15 '2 Cls Dim Key As Byte Dim...
Mam skrypt ściągnięty z netu do konwersji w ekcelu słownie kwoty , niestety z błędem ( autor nie odpowiada). Błędnie konwertuje nst. liczby: 1000 - jeden tysięcy, 12000 - dwanaście tysiące, 13000 - trzynaście tysiące, 14000 - czternaście tysiące ( to samo z milionami, bilionami itp). Załączam skrypt i proszę szanowne forum o poprawienie i udostepnienie...
Dim Wynik As Long Dim Cyfra As Byte Dim Tymcz As Long Dim Tymcz2 As Long Dim Dzielnik1 As Long Dim Dzielnik2 As Long Dim Z As Byte Wynik = 956360 Dzielnik1 = 1000000 Dzielnik2 = Dzielnik1 / 10 For Z = 1 To 6 Tymcz = Wynik Tymcz2 = Wynik / Dzielnik1 Tymcz2 = Tymcz2 * Dzielnik1 Tymcz = Tymcz - Tymcz2 Tymcz = Tymcz / Dzielnik2 Cyfra = Tymcz Print Cyfra...
Witam. Jestem bardzo początkującym w dziedzinie programowania, co powoduje, że moje "programy" są bardzo karkołomne ? Chyba mogę to tak nazwać i osoby znające się choć trochę na pisaniu programów w języku C++, na widok mojego kodu mogą dostać ataku serca, więc z góry uprzedzam! Chcę prosić osoby chętne do pomocy, aby dały mi wskazówki jak poprawić mój...
Fakt ale to mój błąd, po ostatnim elemencie jest spacja a ja tego nie napisałem w poprzednim poście. Więc tak zostawiłem: [syntax=csharp] using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO.Ports; using...
growat string łańcuch string attiny string
passat klocki formatowanie seagate expansion samsung firmware updater
rfm12 rfm22 ciągłe napełnianie krups
Przyczyny niskiego napięcia w prądnicy samowzbudnej Czy BMS zrównoważy ogniwa LiFePO4 w banku energii?