Visual Basic & Binary

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

Visual Basic & Binary

Inlägg av Mawrik »

Håller på med ett program i V.B. Tankar upp data(2*8 bitar) via rs232 från en pic. Har tänkt annvänt en matris med maskade text.box för att skriva ett nummer (8 bitar). Men det som kommer från pic-en är binära nummer. För att hitta rätt textbox måste den heta lika som det nummer som kommer från pic-en. Har provat &h (hex) men det funkar inte (Property value is not valid). Eller är jag ute i dimman. Brukar Visual Basic 2005(senaste).

Maw...
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Du får två värden, det ena är "namnet" på den textbox där det andra värdet ska skrivas ut ?

Vilka intervall har de två värderna ? Eller är det 256 olika textboxar ?
Det finns sätt att kombinera objekt och ge dom olika index (som bör vara numeriskt).
Hur ser koden ut som tar emot värderna och hur är variablerna definierade ?

Sen finns det flera olika funktioner för konv melan ascii och olika num format.

Generelt sätt är det bättre att visa den faktiska koden än att försöka
beskriva vad man har gjort.

> Men det som kommer från pic-en är binära nummer.

Mja, det är det ju *alltid*. Sen kan *vissa* binära nummer representera
olika "ASCII tecken" och kan då kallas "text". :-)
Men de är i princip fortfarande binära...
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

kod

Inlägg av Mawrik »

Pic läser tid i 16-bit.Sänder 2*8bit till pc.Lagra dessa som byte (Ti_H å Ti_L).
Använder: array.Find(nummer på cell,matrisnamn)
Vill inte använda en databas utan en enkel matris med ca:300 celler
Maw...
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Vilket är det ?
Textboxar eller en matris ??

Jag har läst hjälpen till Array.Find men förstår inte vad du gör.
"Använder: array.Find(nummer på cell,matrisnamn)" stämmer inte
överens med hjälpen för Array.Find...

Dags att komma ut ur dimman och förklara vad du gör... :-)
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

Matris

Inlägg av Mawrik »

Eftersom jag vill ha 300 celler. 1 cell = en textbox. 300 celler = en matris. .Varför text.box därför att jag vill skriva in en siffra 0-100 som jag vill skicka till pic-en .Array.Find letar upp rätt cell.

Maw...
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Nyss skulle du *läsa* data, nu ska du *skriva* data...

> Array.Find letar upp rätt cell.

Jo, men i hjälpen till VB ser inte argumenten ut så som du beskriver det.

Men skit samma, jag hoppar av tråden...
Lycka till !
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

Inlägg av Mawrik »

Sodjan: läsa å skriva data????
Jo men frågan var om å döpa en textbox.
Men men, håller på å kollar om det inte löser sig.
Maw...
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Ah, så problemet är inte i sig att du får binära värden, utan att du
vill ge textboxarna "binära" namn, om man säger så. Ja ja...
Posta gärna din lösning, det är alltid kul att se vad som
hände med det man har varit och "petat" i... :-)
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

Cod

Inlägg av Mawrik »

Sodjan: varit med å petat i??????????

Dim Matris (0 to 65536) as integer
Matris(3478) = MaskedTextBox.Mask

Array.Find(3478,Matris)

Förstår du nu hur array.find fungerar
MVH Mawrik
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Förstår du nu hur array.find fungerar

Nej.

Dokumentationen säger "Array.Find(array, match)"

Så jag skulle förvänta mig "Matris" som första parameter, inte "3478"...

Skit samma, fungerar det för dig så är det väl bra !
Jag får "uppgradera" från VB6 till VB2005 någon annan gång. :-)
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

cod

Inlägg av Mawrik »

Kan nog vara fel men tänkte du skulle förstå hur det fungerade.

MVH Mawrik
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Kan nog vara fel...

Vad kan vara fel ?
Användarvisningsbild
anlamotte
Inlägg: 859
Blev medlem: 5 augusti 2003, 15:54:34
Ort: Stockholm
Kontakt:

Inlägg av anlamotte »

hmm.. Jag förstår absolut ingenting av vad du försöker göra.
Du får alltså 2 värden från din PIC. Det första värdet motsvarar vilken
textbox som den andra värdet ska hamna i...right?

Sen använder du

Kod: Markera allt

Matris(3478) = MaskedTextBox.Mask
MaskedTextBox.Mask styr vilka godkända tecken användaren
kan skriva in i textboxen. Varför villl du spara denna mask i matrisen??

Sedan kommer vi till

Kod: Markera allt


 Array.Find(3478,Matris) 
Funktionen Array.Find(array, match) söker igenom en matris och lämnar
index tillbaka på hittat element t.ex

Kod: Markera allt

 Dim Matris(10) As String, Index as Integer
 
 Matris(1) = "japp"
 Matris(2) = "ok"
 Matris(3) = "blabla"
 Matris(4) = "fulukorv"
 
 index = Array.Find(Matris, "blabla")

Index skulle här bli 4:a alltså

Om du nu vill använda 300 textboxer är nog det enklasta ett placera dessa textboxar i en matris.

Sedan räcker det med att du tar emot det första värdet, kontrollerar att
det är ok och placerar det i rätt textbox något sånt här:

Kod: Markera allt


  Dim tIndex as Integer
  Dim tValue as Integer
  
  Do
    DoEvents
  Loop Until MsComm1.InputLen > 0

  tIndex = Asc(MsComm1.Input)

  Do
    DoEvents
  Loop Until MsComm1.InputLen > 0

  tValue = Asc(MsComm1.Input)

  Text1(tIndex).Text = CStr(tValue)
Nu skulle jag nog inte rekommendera att använda 300 textboxar.. Bättre måste vara att använda någon typ av ListControl eller göra ett VBA Makro i EXCEL!
sodjan
EF Sponsor
Inlägg: 43247
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Tack anlamotte, ungefär vad jag menade, men orkade inte skriva lika mycket... :-)
Mawrik
Inlägg: 20
Blev medlem: 31 juli 2006, 23:10:21
Ort: Gefle

Tack alamotte

Inlägg av Mawrik »

Precis!!
Hm! Låser textboxen för nummer genom mask.
Vill inte använda exel.

Tackar!!
Maw...
Skriv svar