tag:blogger.com,1999:blog-8516057646005806683.post441857089326511214..comments2023-04-07T18:39:50.976+08:00Comments on Cooper Maa: Talk with Arduino using C# and FirmataCooper Maahttp://www.blogger.com/profile/14597993167511073460noreply@blogger.comBlogger15125tag:blogger.com,1999:blog-8516057646005806683.post-67266891731078525942012-09-20T14:13:09.609+08:002012-09-20T14:13:09.609+08:00沒錯,Arduino Library 裝好之後,必須重開 Arduino 軟體才能使用 Librar...沒錯,Arduino Library 裝好之後,必須重開 Arduino 軟體才能使用 Library。<br /><br />問題都解決了,恭禧您!<br />You're welcome.Cooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-85642909977832830252012-09-20T13:18:29.984+08:002012-09-20T13:18:29.984+08:00你好:
我下載的IR Library似乎是您已經改過可相容於1.0的版本,目前問題解決了,IR部...你好:<br /> 我下載的IR Library似乎是您已經改過可相容於1.0的版本,目前問題解決了,IR部分似乎是要重開機或重開軟體並由IDE自動引入標頭檔才行,而C#的問題則是因為我開了serial monitor,關掉就OK了,謝謝cooper撥空回答,如有問題再請教你。PENhttps://www.blogger.com/profile/09447837278505420836noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-26971194347059654862012-09-20T10:13:53.959+08:002012-09-20T10:13:53.959+08:00COM Port 不能讓多個程式同時開啟喔
你用 C# 程式開 COM Port 時,有沒有關掉 A...COM Port 不能讓多個程式同時開啟喔<br />你用 C# 程式開 COM Port 時,有沒有關掉 Arduino 的 Serial Monitor 或超級終端機之類的程式? 或者記憶體裏有沒有殘留的 C# 程式?<br /><br />你是用 IRRemote Library 嗎?<br />#include 編譯過不了關,有可能跟 Arduino 軟體版本有關,因為 Arduino 1.0 的 #include 檔有改過名字,可以參考一下這篇:<br />http://coopermaa2nd.blogspot.tw/2011/12/irremote-arduino-10.htmlCooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-84466132108392699082012-09-19T20:29:33.715+08:002012-09-19T20:29:33.715+08:00你好:
上面的問題解決了,我是使用uno的版子,作業系統為win7,目前遇到兩個問題,一個是IR...你好:<br /> 上面的問題解決了,我是使用uno的版子,作業系統為win7,目前遇到兩個問題,一個是IR紅外線include部分編譯器出現錯誤,另一個問題是C#通訊問題,我找到IR的COMPORT是COM3但C#上當我要new的時候他顯示COM3拒絕存取似乎是不能同時跟版子一起用如果不能的話要如何才能由C#傳訊號給版子呢,請cooper幫忙解答一下謝謝。PENhttps://www.blogger.com/profile/09447837278505420836noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-85069985614200495442012-09-19T13:13:29.497+08:002012-09-19T13:13:29.497+08:00你是用 Arduino 嗎?
如果是 Arduino,需要一條 USB cable 把 Arduin...你是用 Arduino 嗎?<br />如果是 Arduino,需要一條 USB cable 把 Arduino 跟 PC 連接起來<br />接上 PC 灌好 USB Driver 後,PC 端會多出一個 COM Port<br />這個 COM Port 不是 RS232,而是 USB to Serial 的裝置<br /><br />COM5 是我電腦裝 Arduino USB Driver 的時候產生的<br />COM Port 名稱不會固定是 COM5 喔<br />你可以參考一下這篇:<br />http://coopermaa2nd.blogspot.tw/2011/11/windows-xp-arduino-uno.htmlCooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-85311321910051662532012-09-18T20:18:29.249+08:002012-09-18T20:18:29.249+08:00你好:
我查了一下COM5似乎是USB專用的所以等於不用轉RS232,但我電腦中找不到COM5,所以...你好:<br />我查了一下COM5似乎是USB專用的所以等於不用轉RS232,但我電腦中找不到COM5,所以想請問cooper要如何才能使用COM5呢?PENhttps://www.blogger.com/profile/09447837278505420836noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-78518031171690925112012-09-18T19:29:09.004+08:002012-09-18T19:29:09.004+08:00想請問cooper,PC跟版子的通訊,PC那端是使用rs232嗎?因為看你用serial portt...想請問cooper,PC跟版子的通訊,PC那端是使用rs232嗎?因為看你用serial portt所以猜想應該是。如果是的話你用的傳輸線是否為一端是rs232另一端是USB(方口)呢,因為這種線似乎不好找所以想你確認一下。PENhttps://www.blogger.com/profile/09447837278505420836noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-78155822184030829202012-08-11T09:23:41.248+08:002012-08-11T09:23:41.248+08:00太厲害了,這麼快就寫出來了! ^o^
Arduino 1.0 有新的 serialEvent 函式,...太厲害了,這麼快就寫出來了! ^o^<br />Arduino 1.0 有新的 serialEvent 函式,程式可以用 serialEvent 來寫會更清晰:<br />http://coopermaa2nd.blogspot.tw/2011/12/arduino-10-serialevent.html<br /><br />程式我沒試過,不過應該會動:<br /><br />#include <br /><br />IRsend irsend; // 定義 IRsend 物件來發射紅外線訊號<br />int incomingByte = 0; // 用來儲存收進來的 data byte<br /><br />void setup() {<br />// 開啟 Serial port, 通訊速率為 9600 bps<br />Serial.begin(9600);<br />}<br /><br />void loop() {<br />}<br /><br />void serialEvent() {<br />// 讀取一個 byte<br />incomingByte = Serial.read();<br /><br />// 決定打開或關掉 LED<br />if (incomingByte == '1')<br />irsend.sendNEC(0xFB30CF, 32); //前進<br />else if(incomingByte == '2')<br />irsend.sendNEC(0xFBF20D, 32); //後退<br />else if(incomingByte == '3')<br />irsend.sendNEC(0xFB9867, 32);//左轉<br />else if(incomingByte == '4')<br />irsend.sendNEC(0xFB32CD, 32); //右轉<br />else<br />irsend.sendNEC(0xFBA05F, 32); //停止<br /><br />}Cooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-7653963545549611222012-08-09T17:55:37.363+08:002012-08-09T17:55:37.363+08:00我研究出來囉~~其實也沒啥研究拉...就是照Cooper的方式實作XD
分享在這
下面是Ardui...我研究出來囉~~其實也沒啥研究拉...就是照Cooper的方式實作XD<br /><br />分享在這<br />下面是Arduino端的程式<br />其實也就是接收電腦端從com port傳來的數字訊號,然後在判讀訊號發射相對應的紅外線:))<br />至於C#那邊的程式太多拉...貼這會報掉XDD<br /><br />#include // 引用 IRRemote 函式庫<br />IRsend irsend; // 定義 IRsend 物件來發射紅外線訊號<br /><br />int incomingByte = 0; // 用來儲存收進來的 data byte<br /><br />void setup() {<br /> // 開啟 Serial port, 通訊速率為 9600 bps<br /> Serial.begin(9600);<br />}<br /><br />void loop() {<br /> // 檢查是否有資料可供讀取<br /> if (Serial.available() > 0) {<br /> // 讀取一個 byte<br /> incomingByte = Serial.read();<br /><br /> // 決定打開或關掉 LED<br /> if (incomingByte == '1')<br /> irsend.sendNEC(0xFB30CF, 32); //前進<br /> else if(incomingByte == '2')<br /> irsend.sendNEC(0xFBF20D, 32); //後退<br /> else if(incomingByte == '3')<br /> irsend.sendNEC(0xFB9867, 32);//左轉<br /> else if(incomingByte == '4')<br /> irsend.sendNEC(0xFB32CD, 32); //右轉<br /> else<br /> irsend.sendNEC(0xFBA05F, 32); //停止<br /> }<br /><br />}Sven Wanghttps://www.blogger.com/profile/15916872892211480651noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-88580658879112210592012-08-06T21:43:15.788+08:002012-08-06T21:43:15.788+08:00之前我有玩一下 bitlash
我有一個想法,假如你想用 C# 對 Arduino "下命...之前我有玩一下 bitlash<br />我有一個想法,假如你想用 C# 對 Arduino "下命令" 叫他發射紅外線的話<br />也許可以利用 bitlash 寫個巨集指令,然後 C# 便可以呼叫 bitlash 巨集指令....<br /><br />我最近在玩別的,沒有時間玩這個,哈~ 你可以研究看看,希望寫出來可以分享一下Cooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-8482323405814809482012-08-06T21:05:50.843+08:002012-08-06T21:05:50.843+08:00okok~~~了解啦~~~
謝謝Cooper :)))okok~~~了解啦~~~<br />謝謝Cooper :)))Sven Wanghttps://www.blogger.com/profile/15916872892211480651noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-37650834178098753232012-08-06T18:33:13.504+08:002012-08-06T18:33:13.504+08:00這篇是利用 Firmata 協定讓 Arduino 跟 C# 建立對話
如果要用 C# 控制 ard...這篇是利用 Firmata 協定讓 Arduino 跟 C# 建立對話<br />如果要用 C# 控制 arduino 發射紅外線,Firmata 可能就不適合了<br /><br />比較簡單的方式是自己定義 Serial 通訊的封包格式<br />C# 這端不使用 Firmata.Net,改成自己處理 SerialPort 的通訊<br /><br />也就是按照我 "C# Serial Port Communication #1, #2, #3" 這系列筆記的方法做Cooper Maahttps://www.blogger.com/profile/14597993167511073460noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-16104607925850677982012-08-06T17:19:57.450+08:002012-08-06T17:19:57.450+08:00不知道為什麼我發文裡面include後面的"IRremote.h"都無法顯示.....不知道為什麼我發文裡面include後面的"IRremote.h"都無法顯示......這邊補上:)Sven Wanghttps://www.blogger.com/profile/15916872892211480651noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-57457050315524186872012-08-06T17:18:26.774+08:002012-08-06T17:18:26.774+08:00請問Cooper~
如果我需要撰寫c#語言來控制arduino發射紅外線
那我還能在arduino程...請問Cooper~<br />如果我需要撰寫c#語言來控制arduino發射紅外線<br />那我還能在arduino程式裡使用#include嗎?<br /><br />如果不能引用..那我要如何在c#裡面撰寫發射紅外線的訊號呢?<br /><br />麻煩Cooper解惑~~~謝謝!!Sven Wanghttps://www.blogger.com/profile/15916872892211480651noreply@blogger.comtag:blogger.com,1999:blog-8516057646005806683.post-23803216925133504882012-08-06T17:17:00.828+08:002012-08-06T17:17:00.828+08:00作者已經移除這則留言。Sven Wanghttps://www.blogger.com/profile/15916872892211480651noreply@blogger.com