INFO - FAQ - CC2-Forum - CCPro-Forum |
Hallo Martin , Hallo Marcel, ich habe das Buch MSR mit Word und Excel. Die RSAPI.Dll habe ich auch installiert. Ich versuche hier mal mein BASIC-Programm und das VisualBasic hier rein zu kriegen. Bitte nicht auslachen, es sind wahrscheinlich erhebliche Fehler darin. Ein Grund dafür ist sicherlich auch das viele Probieren und Ändern. Danke für die angebotene Hilfe Hermann Sattler Hier das VB Attribute VB_Name = "Modul1" ' ' Makro1 Makro ' Makro am 07.03.04 von Sattler Hermann aufgezeichnet Declare Sub INITCCONTROL Lib "RSAPI.DLL" (ByVal COM%) Declare Sub OPENCOM Lib "RSAPI.DLL" (ByVal Parameter$) Declare Sub TIMEINIT Lib "RSAPI.DLL" () Declare Function TIMEREAD Lib "RSAPI.DLL" () As Long Declare Function READBYTE Lib "RSAPI.DLL" () As Integer Declare Sub STRREAD Lib "RSAPI.DLL" (ByVal S As String) Declare Function AIN Lib "RSAPI.DLL" (ByVal Ein%) Declare Sub FINDHARD Lib "RSAPI.DLL" (ByVal Meldung%) Sub Makro1() INITCCONTROL 1 OPENCOM "COM1:9600,N,8,1" FINDHARD 1 Sheets("Tabelle1").Activate 'Blatt aktivieren Range("A1").Select Columns("A:C").ClearContents 'Spalten löschen ix = Cells(10, 8).Value Messdauer = Cells(ix, 8).Value * 1000 ix = Cells(10, 9).Value Intervall = Cells(ix, 9).Value * 1000 TIMEINIT t = 0: Zeile = 1 Do e = READBYTE Cells(Zeile, 1).Value = TIMEREAD / 1000 Cells(Zeile, 2).Value = e Calculate While TIMEREAD < t + Intervall Wend t = TIMEREAD Zeile = Zeile + 1 Loop Until t >= Messdauer End Sub Hier da Basic '******************************************************************** ' ' ' C-Control/BASIC Temp3-4zeilen-senden-versuch.BAS ' ' ' ' Systemvoraussetzungen: ' ' ' ' - Experimentier Board ' ' ' ' Schwerpunkt: ' ' ' ' Temperaturmess-System ' ' Drehzahlerfassung ' ' ' ' Senden der Daten an Excel Verschiedene Sendebefehle ' ' PUT oder PRINT ' '******************************************************************** '*** Variablen-Definition *** define dr word define dr1 word define temp word define temp1 word define s1 word define s2 word define s3 word define s4 word define s5 word define r1 byte define r2 byte define r3 byte define r4 byte define r5 byte define taster2 byte define i byte define Sensnr byte define Ausgang byteport [1] define Eingang byteport [2] define Kommando byte define weis port [2] '*** Hauptprogramm *** #anfang taster2 = 1 #start if weis = 0 then taster2 = 0 if taster2 = 0 then goto M1 goto start end 'Unterprogramme #AUSGABEDR1 'Umrechnung Zahlenwert in String 'Drehzahl 1 s1 = dr/10 r1 = dr mod 10 s2 = s1/10 r2 = s1 mod 10 s3 = s2/10 r3 = s2 mod 10 s4 = s3/10 r4 = s3 mod 10 s5 = s4/10 r5 = s4 mod 10 dr1 = r5 dr1 = r4 'Drehzahl 1 wird nicht zum Testen dr1 = r3 'verwendet. dr1 = r2 dr1 = r1 return #AUSGABEDR2 'Umrechnung Zahlenwert in String 'Drehzahl 2 s1 = dr/10 r1 = dr mod 10 s2 = s1/10 r2 = s1 mod 10 s3 = s2/10 r3 = s2 mod 10 s4 = s3/10 r4 = s3 mod 10 s5 = s4/10 r5 = s4 mod 10 dr1 = r5 dr1 = r4 dr1 = r3 dr1 = r2 dr1 = r1 'print dr, ' hier änderbar put oder print put dr return #M1 pause 4 'beliebige Pause setzen define sens1 ad [1] if taster2 = 0 then temp = sens1 'Temperatur 1 temp = temp*102/43 gosub ausgabe put temp 'Neu Temperatur 1 in put geändert 'senden an Hyperterminal if taster2 = 0 then dr = freq2*60 gosub ausgabedr2 goto M1 end 'Unterprogramme #AUSGABE 'Umrechnung Zahlenwert in String s1 = temp/10 r1 = temp mod 10 s2 = s1/10 r2 = s1 mod 10 s3 = s2/10 r3 = s2 mod 10 temp1 = r3 temp1 = r2 temp1 = r1 return Hallo, > es gibt ein Buch mit dem Titel "Messen, Steuern und Regeln mit Word und Excel" (Franzis Verlag), > bei welchem sich auf der mitgelieferten CD eine Datei namens RSAPI.DLL befindet. Diese enthält > verschieden Routinen für die serielle Schnittstelle, z.B. kann man damit den C-Control Speicher direkt > in eine Excel Tabelle einlesen. Vielleicht ist sie auch für Deinen Bedarf geeignet. > > Gruß, > Martin T. > > > Hallo Hermann, > > > > eigentlich dürfte das kein Problem sein... > > Ich habe mal was ähnliches gebaut (Datenerfassung in Access - siehe Downloadbereich meiner HP). Und das funktioniert einwandfrei. > > Poste doch mal deinen Code (bzw. den Teil, wo du die Daten übergiebst) und den entsprechen > > Code-Teil von deinem VB/VBA-Proggie. > > > > mfg, > > Marcel > > > > > Hallo Leute, > > > ich bin neu hier. Mein Name Hermann Sattler. > > > > > > Ich habe erhebliche Schwierigkeiten bei der Datenübertragung nach Excel 97. > > > > > > Ich habe mit der M-unit einen Datalogger (8 Temperaturen 0-600°C; 2 Drehzahlmessungen mit Freq1/2) > > > selbst entwickelt. Der Logger bzw. das Programm funktioniert einwandfrei. Es werden alle Daten in > > > einem Display 4x20 dargestellt. Auch funktioniert die Übergabe der Daten z.B. nach Hyperterminal von > > > Windows einwandfrei. Auch andere Terminals werden einwandfrei angesteuert. > > > > > > Jetzt hätte ich den Wunsch gehabt, online während einer Messung die Daten direkt nach Excel zu > > > senden , die Daten in die Excelzellen zu schreiben und gleichzeitig den Graphen online mitlaufen > > > zu lassen. > > > > > > Ich habe mich schon über Tage mit Excel und Visual Basic und dem Editor etc. auseinandergesetzt. > > > Also simultan funktioniert Excel mit dem Onlinegraphen einwandfrei. Also auch die Makros sollten > > > stimmen. Nur mit dem Logger klappt es nicht. > > > > > > Ich muß noch erwähnen, daß ich das Ganze mit einem abgespeckten Programm probiere. 1Drehzahl > > > bzw. 1Temperatur und KEINE Ansteuerung des Displays. Keine Datenspeicherung im EEPROM. > > > > > > > > > ABER wenn ich nun Daten senden will, so kommt lauter Mist heraus. Ich habe schon so viel geprüft > > > und finde den Fehler nicht. > > > > > > Es wird auch die geöffnete Schnittstelle erkannt. > > > > > > Ich habe schon versucht die Daten mit PUT bzw. mit PRINT zu senden, aber da ist überhaupt kein > > > Unterschied. > > > > > > Wenn ich mir das Senden in einem anderen Terminal ansehe, da sehe ich daß Bytes bzw Text > > > gesendet wird. Die Bytes kann ich nicht kontrollieren, der Text ist einwandfrei in Ordnung. > > > Zum Schluß muß ich noch sagen, daß ich Maschinenbauer bin also kein Elektroniker oder Rechner- > > > profi. > > > > > > Hat da jemand Ahnung. Bitte um Hilfe. > > > > > > Mit freundlichem Gruß > > > > > > Hermann Sattler > > > Tel/Fax 09426802790 > > > E-mail h-sattler@t-online.de |
Antwort schreiben |