自制Arduino 风格开发板 - HK32F030MF4P6 紧凑开发板

article/2025/9/23 10:16:33

模仿Arduino Nano 做一个HK32F030M 的紧凑开发板,排针间距和Arduino Nano 相同,整体尺寸略小,适合插在面包板上。兼容HK32F030MF4P6 和0301M,板载CH340N 串口和DS1307 时钟模块。开源工程地址:HK32F030MF4P6 紧凑开发板。

尺寸4.2 X 1.8cm,因为引脚数量更少,本来板子是可以更短一点的,但是没必要。一开始是设计成两层PCB ,工程里有个弃用的两层板,能用,但是感觉地平面惨不忍睹,有些信号线也不得不绕很大一圈,所以之后更新成四层板了,和两层板电路上差别不大,主要更改了几个引脚的顺序和编程接口,然后就是免费打样只能是绿色的。开发板的主要特性:

  1. 7pin 编程接口:把SWD 和串口放在一起,配合一个转接板,可以直接连到带串口功能的dap link 编程器上;
  2. CH340N 串口模块:用串口连接电脑有两种方式,一种是用上面的7pin 编程接口连接到编程器,另一种就是通过CH340N 模块连接到USB。两种方式不可同时使用,USB 接口可选择type-c 或micro-b;
  3. DS1307 时钟模块:HK32F030M 没有RTC 功能,所以外挂一个模块;
  4. 预分配I2C 引脚:HK32F030M 有很灵活的引脚重映射功能,但是太灵活了也烦人,而且板载DS1307 要连接到I2C 总线,所以就预分配了引脚,板载了上拉电阻,省的以后纠结;
  5. 预分配串口引脚:同上,固定了TX 和RX 引脚;
  6. 预分配SPI 引脚:同上,不过SPI 总线上没有连接东西,只是在板子上画了丝印,所以不用预分配的方案也OK;

测试进度:用官方例程测试了板载的LED、编程接口及串口、CH340N 串口,没什么问题,所以供电模块肯定也没问题,DS1307 就默认OK 吧。

HK32F030M 的官方固件库和例程可在这里找:https://bbs.21ic.com/icview-3236132-1-1.html。

在这里插入图片描述
在这里插入图片描述

复位电路

由于0301M 可以复用NRST 为PA0 引脚,所以为了不降低扩展性,复位电路采用了类似51 单片机的上电复位,NRST 上只接了一个上拉电阻,复位通过给单片机断电来实现。

在这里插入图片描述

开发板上电后,PMOS Q1 默认导通,给单片机提供3.3V 供电。当PNP 三极管Q2 基极被拉到低电平,也就是REBOOT 信号有效时,Q1 截止,单片机断电,REBOOT 恢复高电平或高阻态时单片机恢复供电,上电复位。这个电路在连接编程器时可能无法给单片机复位,因为编程器能通过SWD 引脚给单片机供电,加上漏电隔离应该就行了,但是需要至少两个二极管,可能放不下,而且太啰嗦。

7pin 编程接口

在这里插入图片描述

设计成7 个针只是因为就需要这么多,恰好不对称,就当是一种防呆设计~ 如上图,引脚定义从上到下依次是:

SWCLKRST
SWDIO3.3V
TXDGND
RXDNC

其中RST 在这里是连接到上电复位电路的REBOOT,RXD 和TXD 分别连接到单片机的RXD 和TXD,所以编程器的TXD 要连接到这里的RXD 上。把RST 引脚和GND 调换一下或许会更好,因为这样一来去掉串口TXD 、RXD 和RST 后,剩下的四个引脚就是最少所需的编程接口,刚好排成2x2 的正方形,但是既然已经这么画了,就无所谓了吧。

DAP LINK 调试器转接板

就是个10pin 转7pin 的小转接板,用来把某宝上买的DAP LINK 直接连接到这个7 针接口上,省的杜邦线搞半天,实物:

在这里插入图片描述
红框里的是转接板,下面长的是某宝上买的DAP LINK。转接板用2x5pin 弯排母连接到DAP LINK,再用2x4pin 直排母连接到7 针接口,想要防呆功能的话,可以手工把2x4pin 排母多出来的1pin 用胶堵住。上面多出来的两个白色插针是+5V 和GND,7 针接口不连接+5V,想从USB 直接取5V 供电的话,就从这两个插针飞线出去。转接板本身很简单,原理图都不用画,其他的各种link 也可以自制个转接板。

引脚功能 - 板载LED

在这里插入图片描述
参考原理图,预分配的引脚都用短接符标出来了。板子上一共只有两个LED,一个是电源指示灯,另一个连接到PA2 引脚,也是SPI 的SCK 引脚,和Arduino 的习惯一样。VCAP 可以直接用作PD7,不用配置,但在030M 上,PD7 似乎只能用作普通引脚,不能使用复用功能。板子上通过插针引出了NRST,0301M 上可以配置IOMUX 寄存器把NRST 复用为PA0,据说030M 的有些批次也可以。

所以,加上PD7 和PA0,如果不复用SWDIO 和SWCLK,一共只有16 个IO 引脚,说多不多,某宝零售8 毛钱一片的单片机还要什么自行车。

DS1307 时钟模块和I2C

既然说了是开发板而不是核心板,还是应该尽量集成一两个外设才算名副其实,所以除了串口,又加了这个RTC 模块。I2C 的SCL 和SDA 分别分配到了PB4 和PB5,板子上加了4.7K 上拉到3.3V。

在这里插入图片描述

考虑到调试时可能没有5V 电源,所以DS1307 也能用板子上的3.3V 供电,接上肖特基二极管用来在有5V 时自动切换。图上也说了,DS1307 适配的电池是CR2032 之类的锂电池,标准电压3.6V,所以要使用DS1307 的自动充电功能,必须有5V 供电。C15 的目的是短暂维持供电,不一定有用,可以不装或装个普通的0.1uF。图上的RTC-CELL 连接到外置备份电池,板子上有个连接电池的插针,标记为CEL

在这里插入图片描述

CH340N USB 转串口

没什么好说的,只有一个稍微特殊的地方:

在这里插入图片描述
就像图上红字说的,0 欧电阻R4 是预留的,默认不装。HK32F030M 没有自带的bootloader,只能用编程器下载程序,如果有兴趣自己整个USB 下载程序的bootloader,接上R4 就可以用RTS# 信号控制单片机重启复位。CH340N 的TXD 上串了二极管,不会给单片机漏电。

供电

也没什么好说的,和Arduino Nano 差不多。板子上带了1117 和662K,分别提供5V 和3.3V 电压,单片机使用3.3V 供电。外部大于6V 的供电通过VIN 引脚输入给1117,5V 的外部供电就直接连到5V 插针上,内部没有任何保护,直接连到662K,然后生成3.3V 给单片机供电。HK32F0301M 有支持5V 供电的型号,要兼容有点麻烦,3.3V 又不是不能用,所以不管了。

焊盘上的过孔

多说一句,我后来很喜欢在把过孔直接放在焊盘边上,如下图:

在这里插入图片描述

这个板子还好,如果是更密集的板子,不这么做就没地方打过孔了。听说过焊盘上放过孔可能漏锡导致问题,我是纯手工焊接,焊锡膏加热风,所以无所谓。

补充:引脚分配辅助表格

030M 的引脚有很多复用功能,所以整了个Excel 表格用来辅助引脚功能,官方SDK 里也有个IO SELECT 表格,但我这个应该更好用一点:HK32F030MF4P6 引脚分配辅助表格.


http://chatgpt.dhexx.cn/article/KgQ12ZdF.shtml

相关文章

Arduino添加ESP32开发板

【2023年3月4日】 最近要在新电脑上安装Arduino,需要进行一些配置,正好记录一下! Arduino2.0.1 下的开发板添加操作。 ESP32开发板GitHub链接: GitHub - espressif/arduino-esp32: Arduino core for the ESP32Arduino core for…

Arduino上手动添加开发板

最近一个在一个项目上想在树莓派3B上使用9dof-razor-imu传感器,,搭建开发环境的时候根据其官网说明选了Arduino。然而在添加他的第三方SparkFun开发板时出了问题,因为他的开发板环境包在GitHub上,所以Arduino的开发板管理器在下载…

Arduino安装与配置ESP8266开发板(超简单,亲测有效)

文章目录 前言一、下载Arduino二、 ESP8266环境配置(超简单,亲测有效)三、下载验证总结 前言 由于要上数字信号处理课程,需要安装Arduino,并在Arduino中配置ESP8266环境,然而发现在首选项中附加开发板管理器网址这种方法&#xf…

基于Arduino Uno开发板制作音乐播放器

基于Arduino Uno开发板制作音乐播放器 本文将基于Arduino开发板实现一个音乐播放器。 利用Arduino Uno读取sd卡模块中内存卡的音乐,传输信号到扬声器进行播放。一、项目软硬件简介&准备 1.Arduino开发板 Arduino Uno 是一款基于 Microchip ATmega328P 微控制…

二、初识arduino uno开发板

开发板参数表 什么是arduino? Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Process…

Arduino基础入门篇(认识开发板和面包板)

Arduino开发板 Arduino是一款简单易学且功能丰富的开源平台,包含硬件部分(各种型号的Arduino开发板)和软件部分(Arduino IDE) Arduino硬件部分可以独立工作,也可以与外部硬件设备协同工作。比如利用Arduino配合各种传…

esp32开发板 Arduino IDE 2.0环境搭建--2022年记录

我用的是Arduino IDE 2.0版的。 1.首先打开Arduino,然后点击File→Preferences,在弹出的对话框里填入下面的链接,接着点击确定并关闭对话框。 https://www.arduino.cn/package_esp32_index.json 2.在开发板管理器里头搜索esp32,…

Arduino 基础入门篇 03—UNO R3开发板介绍

工欲善其事,必先利其器。上一篇讲解了Arduino开发的软件环境,本文将介绍Arduino开发的硬件环境,即Arduino UNO R3开发板。 UNO R3开发板 Arduino生态中包括多种开发板、模块、扩展板。其中UNO R3是最适合入门且功能齐全使用量最多的Arduino…

Arduino 开发板介绍及对比

一、UNO/UNO r3 Arduino / Genuino Uno是基于ATmega328P的单片机开发板。它有14个数字输入/输出引脚(其中6个可用作PWM输出),6个模拟输入脚,16 MHz晶振,USB连接,电源插孔,ICSP接头和复位按钮。…

如何在Arduino上安装ESP32开发板

Arduino 软件安装 要获取 Arduino 软件安装包,可直接到官网地址获取,地址: https://www.arduino.cc/ ,进入官网如下所示: 选择“SOFTWARE”选项卡,根据自己电脑系统选择对应版本下载,我们使用…

详解Arduino Uno开发板的引脚分配图及定义

详解Arduino Uno开发板的引脚分配图及定义 在本篇文章中,我们将详细介绍Arduino开发板的硬件电路部分,具体来说,就是介绍Arduino Uno开发板的引脚分配图及定义。Arduino Uno微控制器采用的是Atmel的ATmega328。 Arduino Uno开发板的引脚分配…

Arduino手动添加ESP32相关开发板(图文并茂)

一、前述 使用Arduino开发ESP32,就绕不开添加ESP32开发板这一步,网上有很多相关教程,介绍的很详细,但是在实际操作过程中还是遇到一些问题,所以在这里记录一下,希望可以帮到别人。   本来是用VscodePlatf…

ARDUINO(os)基本介绍之开发版类型

作为一名有着五年ARDUINO开发与教学经验的小程序猿,每年带学生的时候最不愿意谈起的便是开发板的选择与介绍。相信有过一定开发经验的人都会对此类问题不屑一顾😡但,屏幕前的各位真的懂怎么选开发板吗?🐶(我…

常用Arduino板介绍

目录 NANO板介绍烧录说明 UNO板介绍烧录说明 Pro mini板介绍烧录说明 DUE板介绍烧录说明 NANO板介绍 概述: Arduino Nano是一款基于ATMega328P(Arduino Nano 3.x)的小型、完整且易于实验的板。它只缺少一个直流电源插座,并且可以…

Arduino Uno 开发简介

Arduino是源于意大利的一套开源硬件开发平台,Arduino Uno是其推出的最为基础的开发板。配合外围器件(传感器,控制开关,LED屏等),任何稍有电子电路基础的人都可以基于这个平台快速搭建出具有各种有趣功能的实…

四、ARDUINO UNO开发板介绍

(一)ARDUINO UNO开发板 Arduino生态中包括多种开发板、模块、扩展板。其中UNO R3是最适合入门且功能齐全使用量最多的Arduino开发板。以下就是Arduino UNO开发板的图片。 (二)ARDUINO UNO开发板基本构成 Arduino开发板设计得非常简…

IDEA中Maven配置问题全解决

最近换了工作环境,以前的IDEA配置都没了,记得上次配置自己的IDEA还是在两年前?然后构建Maven项目时遇到了一些小插曲,记录下解决方案(PS:新手教程向) 文章目录 1. idea中maven默认配置的坑2. 解决方法一&am…

MAVEN配置详细(保姆级)

1 首先对应一下你IDEA版本个人(下载地址:Maven – Welcome to Apache Maven)找到自己想要的版本。 1 IDEA 2021 兼容 MAVEN 3.8.1 以及之前版本2IDEA 2020 兼容 MAVEN 3.5.3以及之前版本3 IDEA 2018 兼容 MAVEn 3.6.1以及之前版本 2下载完成…

Maven配置方式

Maven配置方式 1. maven的包版本管理工具下载。 1.1下载地址 https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/ 示例: 1.2 下载方式 1.3 将下载完成后的压缩包Maven存放到自己设定的盘符位置. 2. 配置Maven环境变量方式 2.1打开计算机属性。 2.2环境变量…

idea maven配置

idea maven配置 idea 提供maven,你也可以自己下载maven 进入idea 配置maven。Settings -> Build,Execution,Deployment -> Build Tools -> Maven 这里用红框圈出了配置的地方。 红框1的配置是:选择你使用maven的版本这里maven自带几个版本的…