參考來源:https://www.holtek.com.cn/
1.合泰32位單片機簡介
該系列的Holtek 單片機是一款基於Arm® Cortex®-M0+ 處理器內核的32-bit 高性能低功耗單 片機。Cortex®-M0+ 是把嵌套向量中斷控制器(NVIC)、系統節拍定時器(SysTick Timer) 和先進 的調試支持緊緊結合在一起的新一代處理器內核。
該系列單片機可藉助Flash 加速器工作在高達48MHz 的頻率下,以獲得最大的效率。它提供 128KB 的嵌入式Flash 存儲器用作程序/ 數據存儲,16KB 的嵌入式SRAM 存儲器用作系統 操作和應用程序運用。此係列單片機具有多種外設,如ADC、I2C、USART、UART、SPI、I2S、 GPTM、MCTM、SCI、CRC-16/32、RTC、WDT、PDMA、EBI、USB2.0 FS、SW-DP (串行線調試端口) 等。在喚醒延遲和功耗方面,幾種省電模式提供了具有靈活性的最大優化方案,此舉在低功耗應 用方面尤爲值得考慮。
該系列單片機屬於Cortex®-M0+ 32-Bit USB MCU。
2.學習必備資源
· keil編譯軟件下載(MDK5-Arm)
方法1:從官網下載,HT32_Setup_Keil_v119.exe
方法2:自行在網上下載-安裝-破解。
筆者使用的是方法2,網上的教程有很多,重點是要記得安裝路徑最好不要有中文、空格等特殊符號,破解時最好以管理員身份運行keil軟件(破解軟件也需要以管理員身份運行)
· _Packet安裝
_Packet的意思是關於所開發單片機的芯片工具包,引腳、定時器、寄存器等一些宏定義、配置之類的都在 _Packet裏,只有安裝了 _Packet才能讓keil知道你寫的代碼對應的是哪一款單片機,類似的有51單片機的AT89C52,或者32單片機的STM32F103RC等(新建工程時要選擇)。
可以直接在keil官網下載,注意:安裝 _Packet前必須先裝好MDK軟件
下載鏈接:_Packet安裝鏈接
往下滑,找到Holtek分類,HT32F523xx系列,點擊擊HT32F52342/52352,找到自己對應具體型號進入下載,下載後雙擊運行安裝,此處推薦在C盤以外新建一個文件夾作爲關於合泰單片機安裝軟件的統一路徑方便管理。
· _VCP驅動下載
因爲我們這個開發板集成了USB-TTL電路模塊(此驅動可用於 e-Link32 Pro Virtual COM及Firmware Library),後面在燒錄軟件時就不用額外需要下載器以及燒錄軟件(直接在keil裏面即可直接燒錄程序),因此還需要安裝相應的驅動讓電腦能夠識別到設備,安裝此驅動之後,我們才能直接從keil裏燒錄程序。
此處注意:非win10電腦必須安裝,筆者沒有使用win10,故不知具體情況,最好安裝吧。同樣也是一路安裝下去,當360提示警告時,允許該軟件安裝驅動即可。
下載鏈接:_VCP驅動下載鏈接
此處需要特別注意跳線帽的接法。
· 參考資料下載
1.Datasheet數據手冊下載鏈接
2.User_Manual開發手冊下載鏈接
開發手冊裏有各個系統功能的介紹,包括寄存器每一個位的介紹及使用,作爲主要學習資料。
3.FW_Library固件庫下載鏈接
此固件庫必須下載,裏面包含了很多Examples示例代碼。
· 開發板原理圖下載
· 串口助手下載
筆者比較習慣使用XCOM助手,讀者也可自行下載,方面後面學習調試。
下載鏈接:XCOM串口助手
3.實踐操作
在完成上面的步驟之後,我們就可以開始使用keil進行編寫編譯代碼,並直接將程序燒錄進開發板
先打開下載好的固件庫,找到example文件夾,進入即可看到很多功能示例代碼
我們可以往下找到USART文件夾,依次進入,最後我們會發現有一個【_CreateProject】文件,這是官方爲了節省內存空間而做的一個預處理文件,雙擊它即可生成對應的工程文件,然後進入MDK_ARMv5文件夾,就可以找到工程了
進去之後我們可以按照以下點擊,可以看到packet裏面已經包含了合泰單片機的packet
這是先用數據線連接電腦與開發板,右擊我的電腦圖標,找到屬性,設備管理器,可以看到端口那裏顯示了已經連接上的Holtek 的設備(驅動正常)
進入keil,點擊編譯,編譯成功,然後我們繼續點擊魔術棒,找到Debug選項,在2處選擇成CMSIS-DAP Debugger,然後進入Setting
進入setting後,找到SWDIO,可以看到,當正常連接板子之後,就能看到右邊的設備號,看到這裏,就代表能夠從keil直接燒錄程序到板子了
下載燒錄之後,打開串口助手,波特率是115200(代碼裏設置的是115200),然後就可以發送字符,此時單片機就會把接收到的字符打印出來
結束
到這裏,就已經能夠將代碼在板子上運行了,說明了你的開發環境、板子都是正常的,以後就可以開發其他功能了。
(如有錯誤,請大家指正,謝謝!)