前言
現如今網絡上關于Arduino開發的環境安裝教程已經很多了,為什么我還會出一篇關于環境配置的文章?
1、為了完成本次系列的完整性;
2、給看到此筆記的新手快速的上手。
Arduino是一套便捷、靈活、容易上手的硬件開發平臺,它包括多種型號的Arduino控制電路板,和專用編程開發軟件。Arduino省略了很多繁瑣的底層開發,讓人們可以專注在功能實現,快速的開發出智能硬件原型。Arduino的硬件價格也相對便宜,所以,Arduino可以說是適合每個人的硬件開發平臺。
在開始使用Arduino之前,需要在電腦上安裝Arduino的集成開發環境(此后簡稱IDE)。打開資料中的官方軟件(親也可以自己到官網下載https://www.arduino.cc/en/Main/Software),如下圖所示,按照安裝以下步驟安裝到熟悉的文件位置(后面經常會用到的哦)。
在這里插入圖片描述
進入頁面以后,連續點擊 Just download,下載軟件安裝包。下載后打開安裝包,按照以下步驟安裝。
安裝好官方的IDE以后電腦桌面或出現這個圖標,以后編寫代碼都是打開這個圖標進行的哦。
雙擊桌面的軟件圖標,進入Arduino IDE之后。第一次啟動會自動下載一些包,會比較慢,耐心等待。
在這里插入圖片描述
在工具欄上, Arduino IDE提供了常用功能的快捷鍵:
校驗(Verify),驗證程序是否編寫無誤,若無誤則編譯該項目。
下載(Upload),下載程序到Arduino控制器上。
新建(New),新建一個項目。
打開(Open),打開一個項目。
保存(Save),保存當前項目。
串口監視器(Serial Monitor),IDE自帶的一個簡單的串口監視器程序,用它可以查看串口發送或接收到的數據。相對于IAR、Keil等專業的硬件開發環境,Arduino的開發環境給人以簡單明了的感覺,但正是這種簡單,省去了很多不常用的功能,使得基礎知識不多的使用者更容易上手。
先把arduino 開發板連接上PC USB口,打開驅動軟件
點擊安裝即可,安裝成功以后設備管理器中能看到對應端口和驅動型號。
?
《開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個功能強大的串口工具。支持Lua自動化處理、串口調試、串口監聽、串口曲線、TCP測試、MQTT測試、編碼轉換、亂碼恢復等功能。
使用Lua腳本提前處理待發送的數據
return uartData.."\r\n"
return uartData:fromHex()
此腳本可將形如30313233發送數據,處理為0123的結果
json = require("JSON")
t = uartData:split(",")
return json:encode({
key1 = t[1],
key2 = t[2],
key3 = t[3],
})
此腳本可將形如a,b,c發送數據,處理為{"key1":"a","key2":"b","key3":"c"}的結果。
獨立的Lua腳本自動處理串口收發
右側的Lua腳本調試區域,可直接運行你寫的串口測試腳本,如軟件自帶的:
--注冊串口接收函數
uartReceive = function (data)
log.info("uartReceive",data)
sys.publish("UART",data)--發布消息
end
--新建任務,等待接收到消息再繼續運行
sys.taskInit(function()
while true do
local _,udata = sys.waitUntil("UART")--等待消息
log.info("task waitUntil",udata)
local sendResult = apiSendUartData("ok!")--發送串口消息
log.info("uart send",sendResult)
end
end)
--新建任務,每休眠1000ms繼續一次
sys.taskInit(function()
while true do
sys.wait(1000)--等待1000ms
log.info("task wait",os.time())
end
end)
--1000ms循環定時器
sys.timerLoopStart(log.info,1000,"timer test")
甚至你可以利用xlua框架的特性,調用C#接口完成任何你想做的事情
request = CS.System.Net.WebRequest.Create("http://example.com")
request.ContentType = "text/html;charset=UTF-8";
request.Timeout = 5000;--超時時間
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Vivaldi/2.2.1388.37";
response = request:GetResponse():GetResponseStream()
myStreamReader = CS.System.IO.StreamReader(response, CS.System.Text.Encoding.UTF8);
print(myStreamReader:ReadToEnd())--打印獲取的body內容
myStreamReader:Close()
response:Close()
使用此功能,你可以完成大部分的自動化串口調試操作。
-END-
開源協議:Apache-2.0
開源地址:https://gitee.com/chenxuuu/llcom