コーディングの経験はありますが、VBA (Excel 2013) の経験はありません。シリアルポートを介して、1.) リモートデバイスに外部コマンド ("PHOTO") を受け入れるように指示し、2.) 外部コマンドを送信します ("M5" & Chr$(13) )、および 3.) 外部コマンド ("q") を受け入れないようにデバイスに指示します。
Private Sub CommandButton1_Click()
' Use COM2
MSComm21.CommPort = 2
' 9600 baud, no parity, 8 data, and 1 stop bit.
MSComm21.Settings = "9600,N,8,1"
' Open the port.
MSComm21.PortOpen = True
MSComm21.Output = "PHOTO" ' Step 1
MSComm21.Output = "M5" & Chr$(13) ' Step 2
' Do some stuff
MSComm21.Output = "Q" ' Step 3
' Close the port
MSComm21.PortOpen = False
End Sub
私の問題は、ステップ 2 と 3 が機能することを確認できますが、ステップ 1 が機能しないことです。Tera Term でデバイスと通信する場合、「PHOTO」コマンドはすべて大文字で送信する必要がありますが、「M5」および「q」コマンドは大文字と小文字を区別しません。MSComm21.Output コマンドは大文字と小文字を区別しないのでしょうか? これについて具体的に話しているものは見つかりませんでした。そうでない場合、私が見逃していることは明らかですか?
この「単純な」プログラムは私を狂気に駆り立てています。どんな助けでも大歓迎です。