因為個人喜愛想研究單片機,但是不太會c,然后再找資料研究有沒有其他的方法發現國外的c# nanoframework 框架可以編寫單片機程序,本文我將會用自己踩過的坑來總結一些c#編寫單片機的一些經驗,希望幫到熱愛c#的xd
首先第一步我們需要准備材料:
1. esp32 板子 支持wifi藍牙的esp32板子,和安卓數據線如圖:
2. 然后准備vs code, 和vs2022,本文將用vs2022做教程
准備好以后將esp32設備和電腦連接(安卓線連接)
開始搭建esp32的nanoframework 開發環境
打開vs code然后點擊擴展
搜索 nanoframework 然后安裝
安裝完成以后;打開vs2022,點擊繼續但無需代碼
點擊管理擴展
關閉vs2022以后后彈出這個安裝擴展的界面點擊安裝
漫長的等待安裝
安裝完成重新打開vs2022
然后點擊創建新項目
搜索nanoframework,然后點擊第一個然后點擊下一步
創建項目Demo示例點擊創建
依次點擊視圖=》其他窗口=》Device Explorer
點擊設置
全部點擊兩邊全部點擊(COM port black list:表示屏蔽COM)
然后關閉設置;我們在來到vs code中
找到剛剛vs2022創建的項目路徑 並打開
安裝c#的vscode擴展
注意!請先安裝esp32驅動程序
ESP32鏈接:https://pan.baidu.com/s/1V90LMRk13ZaUMJxM2teXbw
提取碼:ztip
復制一下GitHub鏡像
安裝 .NET nanoFramework固件閃存
成功安裝后,將顯示一條消息,顯示用於調用該工具的命令以及安裝的版本。類似於以下示例:安裝路徑問題
⚠️當安裝在包含變音符號的路徑中時,運行STM32設備命令的已知問題。這是由 STM32 多維數據集編程器中的一個已知錯誤引起的。例如,如果您的用戶路徑是這種情況,則必須將其安裝在具有這些路徑的位置。若要實現此目的,請使用以下 .NET Core CLI 命令,該命令指定了將安裝該工具的路徑:
nanoff
請注意,如果您不與 STM32 設備一起使用,則此限制不適用。更新 .NET nanoFramework固件閃存
要更新 .NET nanoFramework固件 Flasher 工具,請使用以下 .NET Core CLI 命令:
![]()
ESP32 使用示例
有多個 ESP32 映像可用,其中一些是專門為目標構建的。請查看
。ESP32_PSRAM_REV0映像僅適用於 ESP32 系列的任何變體(帶或不帶 PSRAM)以及所有芯片修訂版。您可以
閱讀有關各種圖像之間的差異的更多信息。FEATHER_S2圖像僅適用於暴露嵌入式 USB CDC 引腳的 ESP32-S2 系列的幾乎所有變體。您可以
閱讀有關各種圖像之間的差異的更多信息。使用時,您可以添加以使用特定圖像。相反,如果您只是指定平台,則將根據所連接設備的功能選擇最合適的圖像。將顯示與此類似的輸出,以建議將要使用的圖像:
nanoff
--target MY_TARGET_NAME_HERE--platform esp32nanoff
某些 ESP32 開發板在進入引導加載程序模式時出現問題。這通常可以通過按住主板中的 BOOT/FLASH 按鈕來克服。如果檢測到這種情況,將顯示以下警告:
更新 ESP32 目標的固件
要將連接到 COM31 的 ESP32 目標的固件更新到最新的可用開發版本。
使用本地 CLR 文件更新 ESP32-S2 KALUGA 1 的固件
使用本地 CLR 文件(例如從內部版本)更新連接到 COM31 的 ESP32-S2 KALUGA 1 目標的固件。此文件必須是具有來自生成的有效 CLR 的二進制文件。不會對文件內容執行任何其他檢查或驗證。
顯示已連接 ESP32 設備的詳細信息
顯示連接到 COM31 的 ESP32 設備的詳細信息。
nanoFramework固件閃存工具官方
鏈接:https://pan.xunlei.com/s/VMrXz6nf9tQBsdoKxOm_nYccA1
提取碼:eidf迅雷雲盤下載這個固件然后解壓到D:\
nanoff --update --target KALUGA_1 --serialport COM31 --clrfile "D:\nanoCLR.bin"運行燒錄程序燒錄固件進去等待成功然后進入vs code
按住ctrl+shift+p ;然后搜索nanoframework 點擊nanoframework flash device
等待一小會就會彈框
安裝自己的esp32安裝我安裝是紅色框框的
固件燒錄完成
然后打開vs2022這個時候我們就可以看到設備了然后點擊運行
好了運行完成
有喜歡c#單片機研究的朋友可以加我的q:737776595