顯示包含「Keil MDK」標籤的文章。顯示所有文章
顯示包含「Keil MDK」標籤的文章。顯示所有文章

2026年1月25日星期日

NK-N9H31A2 開發板:驅動程式

有硬體之後就是要準備開發軟體環境,但在正式開始開發前需要先將需要的軟體驅動安裝完備,這篇會說明必要驅動安裝,由於都是一路點擊下一步,這裡提供驅動的網址,就不逐步說明。


開發環境

本文使用系統為 windows 11,不同作業系統可能略有差異

驅動程式

下面三個為主要安裝的驅動連結
CDC driver 功用
Communications Device Class 是 USB 協會制定的一種跨裝置類別,定義 USB 裝置如何模擬成傳統的通訊裝置,有以下三個主要特色。
    1. 通訊協定標準化 規定 USB 傳輸線中,哪些裝置用於傳輸資料,哪些用於傳輸控制訊號
    2. 跨平台相容 因為是標準化規範,現今的作業系統,windows  Linux, macOS 通常有內建此類的驅動,可以直接插上電腦的 USB 孔,就可以偵測到裝置
    3. 硬體抽象化
      對於 MCU 使用者來說,只需要在韌體中實作功能,不用寫複雜的 use 通訊協定 (這功能我也蠻想嘗試看看的,未來在設計板子時就可以省略掉一顆 Usb 轉換 IC 而且通訊傳輸速度更快)
Virtual COM driver 功用
主要功能就是在電腦作業系統中,模擬出一個傳統的序列埠,有些晶片商,在自己的燒錄器上也會有這功能,像是你插上去之後就會有兩個裝置出現,但這功能的好處有以下兩點
    1. 模擬傳統介面(像是 RS232 或是 RS485 等)
    2. 簡化軟體開發,在還沒有準備好完整硬體的時候,可以先模擬指令開發
Nu-Link driver 功用
讓電腦可以支援 keil MDK 或是 IAR 的開發軟體,包含 NuMicro 系列的晶片

安裝完成結果


在電腦裝置管理員中可以看到 NuVCOMDeviceClass 及 COM5(這個可能每個人的不一樣)

Note: 若沒有看到 NuVCOMDeviceClass 檢查板子上的 SW1 開關 PA0 PA1 有沒有調整到 ON


參考資料

https://www.nuvoton.com.cn/export/resource-files/en-us--UM_NuMaker_HMI_N9H31_A1_A2_EN_Rev1.00.pdf

https://www.nuvoton.com/export/resource-files/en-us--RH_Nu-Link_Driver_for_Keil_MDK_EN_V3.21.pdf

https://www.nuvoton.com/tool-and-software/ide-and-compiler/





2024年8月26日星期一

Keil MDK Community 社群版

 紀錄一下 arm 公司的Keil MDK 整合開發環境,終於釋出無限制 code size 的版本 keil community 版本,提供不少專業版本功能,但不可用於商業用途。終於可以自由自在的開發與學習了!
在學生時期使用的是 MDK 被限制在 32Kbyte ,如果開發比較大的專案就容易被限制

簡單紀錄一下目前的網路找到的版本(資料來源擷取自網路)

1. MDK-Community
    適用於評估人員、愛好者、創客、教育等非商業用途。
2. MDK-Essential
    適用基於 Cortex-M 微控器項目的商業開發。
3. MDK-Professional
    適用於 Arm Cortex-M 和 Ethos-U 處理器的 Keil MDK 軟體開發套件 (SDK) 最全面的版本。 它專為專業嵌入式系統開發而設計,包含低版本的所有功能,以及功能安全、即時作業系統 (RTOS) 支援和程式碼覆蓋率分析的附加功能。

版本差異表

教學開始


開發環境

   1. 電腦環境    Win10
   2. 開發板        STM32F429-Discovery

安裝步驟

step1. 下載官方軟體
            連結https://www.keil.arm.com/mdk-community/

step2. 填入基本資料並下載

填入資料

點擊下載

step3. 執行安裝,一路下一步

點擊 next 開始安裝

安裝完成

step4. 開啟 Keil MDK 點擊 Licence Management 選擇 UserBase


step5. 加入 Licence 及啟用



到此 Keil MDK 啟用告一段落,接下來為測試紀錄,分為有啟用及無啟用
該怎麼測試呢? 最直接就是使用陣列宣告讓資料大小超過 32Kbytes

開啟 Keil MDK 開新專案進行測試
作者直接使用 STM32 Cube MX 產生專案

直接宣告一個整數陣列,直接宣告 64 Kbytes

未啟用認證
可以發現編譯不過

已啟用認證
可以發現編譯成功


資料來源




打賞按讚