Hallo Leute,
ich habe ein Problem..... :))
Ich habe mir einen ADXL202 Beschleunigungssensor eingelesen und er gibt
mir dan sugzesiv die zeiten aus. Jetzt da ich die in einer Array matrix
gespeichert habe muss ich die mit dem Hyperterminal einlesen und dann
vom Hyperterminal in einer Textdatei aufzeichnen, die Datei dann in
Excel implemetieren und aus dem Diagramm machen. Meine Frage ist jetzt,
ob jemand ne Idee hat wie ich das machen kann das meine Daten direkt in
eine Excel tabelle gelanden oder direkt in ein Diagramm (noch besser)
damit ich eine automatische Abarbeitung realisiere.
Ich habe einen 80C535 µC und Arbeite mit dem µVision 2 Paket von Keil.
Wenn jemand mir helfen kann danke ich schon im voraus....
Andy
Die Daten sendest du ja anscheinend jetzt schon über einen UART an den
PC. Dann kannst du dir in Excel mit VBA ein Makro / Programm (wie man
das nennen möchte) schreiben, das die Daten direkt in eine Tabelle
einliest. Über VBA hast du Zugriff auf die serielle Schnittstelle (war
jedenfalls bei VBA 6 so, danach nix mehr damit gemacht)
Ist ne ewigkeit her, das ich mit VBA was gemacht habe. War noch VBA 6,
jetzt ist da ja VBA.net drin. Kannst du denn was Basic bzw. Visual
Basic? Denn dann sollte es eigentlich relativ einfach sein.
Ich weiß, deine Frage war ganz speziell auf excel ausgerichtet und nicht
nach Alternativen, dennoch würde ich dir Matlab vorschlagen, wenn du
darauf Zugriff hast (Student, Uni, FH,...)
Gruß
Tom
Excel mit VBA Makros geht ganz gut um mit der UART zu arbeiten.
Die Com-Schnitstelle kannst Du mit einem Commandshell Aufruf
konfigurieren, zum Beispiel:
RetVal = Shell("mode.com com1 baud=" + br$ + " parity=n data=8 stop=1
to=on xon=on dtr=on rts=on")
Dann kannst kannst Du die Schnitstelle öffnen, lesen und schreiben, wie
auf irgend eine andere Datei, nur statt des Dateinamen verwendest Du die
entsprechende Schnittstellenbezeichnung, zB "Com1", "Com2" oder "LPT"
etc...
In VBA könnte das in etwa so aussehen:
Ups, da hatte es noch Fehler, u.a. hab vergessen den nächsten (bzw die
nächsten chars) zu lesen:
Sub Send_and_Read()
'--------------------------------------------------------
cmnd$ = "Hello World" 'A string to send
'--------------------------------------------------------
Open "COM1" For Binary Access Read Write As #1
cmnd$ = cmnd$ + Chr(13) 'add [CR] to command string
Put #1, , cmnd$ 'write string to interface
'--------------------------------------------------------
answer = "" 'clear response string
char = Input(1, #1) 'get first character
While (char <> Chr(13)) 'loop until [CR]
If (char > Chr(31)) Then
answer = answer + char 'add, if printable char
Else
' Do what ever you like
End If
char = Input(1, #1) 'get the next character
Wend
Close #1
'--------------------------------------------------------
Cells(1, 1) = answer 'put response in cell("A1")
End Sub
Super schrieb:> 7 Jahre alt, und immer noch super
Wenn Du schon erkennst, daß das Thema uralt ist, warum buddelst Du es
dann wieder aus?
Bist Du auf die Gravedigger-Award scharf?
Oliver R. schrieb:> Super schrieb:>> 7 Jahre alt, und immer noch super> Wenn Du schon erkennst, daß das Thema uralt ist, warum buddelst Du es> dann wieder aus?
Ich würde sagen, dass es hier sogar sinnvoll ist, einen einzigen
"RS232-Excel" Thread zu haben. Aber jetzt hat der Thread einen leichten
Trend nach OT...