Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Probleme bei Datenübertragung CC2-Unit direkt nach Excel mit RSAPI !!! > ===================================================== > > Seit 2 Monaten arbeite ich mit der CC2-Unit. Ich will eine Wetterstation bauen und möchte > in einem EEPROM gespeicherte Daten direkt nach Excel schreiben. > > > Seit 3 Tagen nun versuche ich anhand des Buches "Messen, Steuern, Regeln mit Word und Excel" > und durch Verwendung der RSAPI.DLL Daten über die Serielle Schnittstelle von der CC2-Unit > direkt nach Excel zu bekommen. > > Bisher aber gelingt nur eine Übertragung von Daten über die COM vom PC in die CC2-Unit. > > Beim Übertragen von der CC2-Unit in den PC steigt der Lesebefehl READBYTE in Excel > jedes Mal aus. > > Ein Zusammenspiel der CC2 mit einem Hyperterminal funktioniert jedoch einwandfrei. > Bei Eingabe einer '27' gibt sie die Zahl 165 aus. > > Wer kann mir helfen? Danke schon mal im Voraus. > > Gruß von Georg > > > > Zur Info: Die TxD-Lampe auf einem COM-Schnittstellen-Monitor flackert nicht beim > Übertragungsversuch nach Excel. > > Beim Zusammenspiel der CC2-Station mit dem Terminalprogramm flackert sie jedoch. > > > > Hier der CC2-Code: > ============== > > int kommando; > string s ; > > thread main > { > hwcom.init(); > hwcom.setspeed(2); > > lcd.init(); > s = "k= "; > kommando = 99; > str.putint(s,kommando); > lcd.clear(); > if lcd.ready() lcd.printlength (s,5); > > wait hwcom.rxd(); > if hwcom.rxd() kommando = hwcom.get(); > // Test auf Empfang, wenn ja Beschreiben von kommando mit empfangenen Byte > > if kommando == 27 > { > s = "k= "; > str.putint(s,kommando); > lcd.clear(); > if lcd.ready() lcd.printlength (s,5); > // Ausgeben der 27, wenn Empfang geklappt hat > > hwcom.put(165); // Senden von 165 > } > sleep(2000); > quit -1; > > > } // end thread main > > > > > Visual Basic Code: > ============== > > Declare Function OPENCOM Lib "RSAPI.DLL" (ByVal ComParameter$) As Integer > Declare Sub INIT Lib "RSAPI.DLL" (ByVal COM%) > Declare Sub CLOSECOM Lib "RSAPI.DLL" () > Declare Sub TIMEINIT Lib "RSAPI.DLL" () > Declare Function TIMEREAD Lib "RSAPI.DLL" () As Long > Declare Sub READSTRING Lib "RSAPI.DLL" (ByVal S As String) > Declare Function READBYTE Lib "RSAPI.DLL" () As Integer > Declare Sub SENDBYTE Lib "RSAPI.DLL" (ByVal B%) > Declare Sub STRLENGTH Lib "RSAPI.DLL" (ByVal B%) > Declare Sub TIMEOUT Lib "RSAPI.DLL" (ByVal ms%) > Declare Sub DELAY Lib "RSAPI.DLL" (ByVal ms%) > > > > Sub Dmm3650() > i = OPENCOM("COM2:1200,N,8,1") > > Cells(17, 6).Value = i > SENDBYTE (27) > Cells(19, 6).Value = i > TIMEOUT (1000) > e = READBYTE > Cells(1, 10).Value = e > CLOSECOM > End Sub > > > > >