在以前的文章中, 咱們闡述瞭如何用C#在STM32上寫第一個Hello world , 有朋友抱怨國內介紹文章, 都是一個 Hello world , 而後再也沒有音訊, 寫到這裏我想提一下個人初心, 那就是告訴全部人C#無所不能, C#能夠寫單片機, 也能夠寫Web應用, 也能夠寫移動應用, 也能夠寫桌面應用, 又有人提到 nanoFramework 的性能問題, 這點我認爲跟MicroPython 等解釋型STM32應用一致的, 跟C寫的 代碼我認爲是沒法匹敵的!工做中長期使用C來寫應用, 這點是公認也是很是有感觸的。 那麼今天我再介紹一下如何使用 nanoFramework 在STM32下面對接物聯網平臺IoTSharp !git
1、選用開發板github
此次咱們選擇了開發板 ST NUCLEO-F746ZG 微信
NUCLEO-F746ZG 是ST公司推出的一款針對STM32F7系列設計的Cortex-M7 Nucleo-144開發板,支持mbed,兼容Arduino、還帶有ST Zio和 ST Morpho 擴展接口,可鏈接微控制器的全部周邊外設。網絡
開發板基於STM32F746ZGT6設計,開發板還集成了ST-LINK/V2-1仿真下載器(但僅對外提供SWD接口),免除您另外採購仿真器或下載器的麻煩。而且具有Arduino接口,可接入 Arduino 巨大生態系統的各類 Shield 擴展板,讓您可以輕鬆快速增長特殊功能。性能
之因此選擇NUCLEO-F746ZG 是由於 他具備網口, 用C#在STM32上寫第一個Hello world 文章中選擇的開發板不具備網絡功能。 學習
2、建立應用:ui
若是看過用C#在STM32上寫第一個Hello world 這篇文章, 咱們就沒必要再闡述如何建立項目了, 具體demo 我已經提交到了 https://github.com/IoTSharp/IoTSharp.Edge.nanoFramework , 項目中須要引用到 nanoFramework.M2Mqtt , 咱們經過他來鏈接 IoTSharp的 Mqtt Broker , 首先, 啓動IoTSharp 項目 https://github.com/IoTSharp/IoTSharp , 啓動項目https://github.com/IoTSharp/Cicada , 這裏若是有全部問題, 能夠到相關項目裏面提問, 這裏再也不闡述, 咱們首先在Cicada 中建立一個設備spa
, 複製粘貼 Token , .net
在項目 oTSharp.Edge.nanoFramework 的 Program.cs 中 修改 設計
private const string _token = "581e918118a34c9faf2b9ede8245be33";//修改合理爲Token private const string BrokerAddress = "192.168.0.23";//啓動IoTSharp的IP地址
3、鏈接並部署項目至ST NUCLEO-F746ZG
因爲ST NUCLEO-F746ZG 跟以前文章不一樣 , 一個Micro USB線 即能跟ST-LINK鏈接, 又支持串口, 還能識別出來存儲, 所以一根線搞定一切, 也不須要弄烏七八糟的杜邦線之類的, 所以簡單不少。 按照用C#在STM32上寫第一個Hello world 的方法, 咱們依然須要下載他的 https://bintray.com/nfbot/nanoframework-images-community-targets/ST_NUCLEO144_F746ZG/_latestVersion 解壓後, 燒寫, 而後VS中Device Explorer 中就能夠看到設備, 以下圖:
點擊VS中的啓動, 來啓動調試項目
啓動後, 你能夠看到咱們的應用已經啓動了, 以下圖所示:
, 經過IoTSharp的客戶端能夠看到上傳的遙測數據和客戶端屬性數據:
關於rpc和屬性更新, 咱們會在基於此項目基礎上進行進一步完善。
若是有任何相關問題, 你們能夠在相關項目提Issuse 或者加入QQ羣: 63631741 , 共同窗習, 共同進步。
本文分享自微信公衆號 - dotNET跨平臺(opendotnet)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。