| Name | Date | Size | #Lines | LOC | ||
|---|---|---|---|---|---|---|
| .. | 21-Aug-2025 | - | ||||
| applications/ | 21-Aug-2025 | - | ||||
| board/ | 21-Aug-2025 | - | ||||
| .config | A D | 21-Aug-2025 | 45.8 KiB | 1,408 | 1,299 | |
| Kconfig | A D | 21-Aug-2025 | 184 | 12 | 7 | |
| README.md | A D | 21-Aug-2025 | 6.5 KiB | 165 | 133 | |
| SConscript | A D | 21-Aug-2025 | 247 | 12 | 8 | |
| SConstruct | A D | 21-Aug-2025 | 1.5 KiB | 50 | 37 | |
| project.ewp | A D | 21-Aug-2025 | 65.2 KiB | 2,369 | 2,368 | |
| project.eww | A D | 21-Aug-2025 | 161 | 11 | 7 | |
| project.uvoptx | A D | 21-Aug-2025 | 5.5 KiB | 186 | 178 | |
| project.uvprojx | A D | 21-Aug-2025 | 45.1 KiB | 1,267 | 1,266 | |
| rtconfig.h | A D | 21-Aug-2025 | 8 KiB | 410 | 73 | |
| rtconfig.py | A D | 21-Aug-2025 | 3.7 KiB | 137 | 108 | |
| template.ewp | A D | 21-Aug-2025 | 69 KiB | 2,032 | 2,031 | |
| template.eww | A D | 21-Aug-2025 | 152 | 11 | 7 | |
| template.uvoptx | A D | 21-Aug-2025 | 5.5 KiB | 186 | 178 | |
| template.uvprojx | A D | 21-Aug-2025 | 13.9 KiB | 396 | 390 |
README.md
1# SWM320 BSP 说明 2 3标签: SYNWIT、Cortex-M4、SWM320、国产MCU 4 5--- 6 7## 简介 8 9本文档为SWM320开发板提供的 BSP (板级支持包) 说明。 10 11通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。 12 13## 芯片介绍 14 15- 内核 16 - 32位ARM® Cortex™-M4 内核 17 - 24位系统定时器 18 - 工作频率最高120MHz 19 - 硬件单周期乘法 20 - 集成嵌套向量中断控制器(NVIC),提供最多240个、8级可配置优先级的中断 21 - 通过SWD接口烧录 22- 内置LDO 23 - 供电电压范围为2.0V至3.6V 24- 片上SRAM存储器 25 - 128KB 26- 片上FLASH存储器 27 - 128KB/256KB/512KB 28 - 支持用户定制ISP(在系统编程)更新用户程序 29- 串行接口 30 - UART模块,具有独立8字节FIFO,最高支持主时钟16分频 31 - SPI模块,具有8字节独立FIFO,支持SPI、SSI协议,支持Master/slave模式 32 - I2C模块,支持7位、10位地址方式,支持Master/slave模式 33 - CAN模块,支持协议2.0A(11Bit标识符)和2.0B(29Bit标识符) 34- PWM控制模块 35 - 12通道16位PWM产生器 36 - 可设置高电平结束或周期开始两种条件触发中断 37 - 具有普通、互补、中心对称等多种输出模式 38 - 支持死区控制 39 - ADC采样触发 40- 定时器模块 41 - 6路32位通用定时器 42 - 具备独立中断 43 - 可做计数器使用 44 - 支持输入单脉冲捕获功能 45 - 32位看门狗定时器,溢出后可配置触发中断或复位芯片 46- RTC模块 47 - 可自由设置日期(年、月、周、日)和时间(时、分、秒) 48 - 可自由设置闹钟(周、时、分、秒) 49 - 自动识别当前设置年份是否为闰年 50 - 支持RTC中断从Sleep模式下唤醒芯片 51- DMA模块 52 - 支持存储器到存储器之间的数据搬运 53- SRAMC模块 54 - 支持8位数据位宽和16位数据位宽的外部SRAM存储器 55 - 最大支持24位地址线 56- SDRAMC模块 57 - 支持16Bit位宽的SDRAM 58 - 支持兼容PC133标准的SDRAM颗粒 59 - 支持2MB到32MB的外部SDRAM颗粒 60- NORFLC模块 61 - 支持并行NOR FLASH接口 62 - 支持8位数据位宽和16位数据位宽的外部NOR FLASH存储器 63 - 最大支持24位地址线 64- SDIO接口模块 65 - 支持标准SDIO接口协议 66- TFT-LCD驱动模块 67 - 支持SYNC接口的外部LCD扩展 68 - 支持最高分辨率1024*768,实际分辨率可以配置 69 - 输出数据宽度16Bit 70 - 支持横屏和竖屏模式 71- GPIO 72 - 最多可达100个GPIO 73 - 可配置2种IO模式 74 - 上拉输入 75 - 下拉输入 76 - 灵活的中断配置 77 - 触发类型设置(边沿检测、电平检测) 78 - 触发电平设置(高电平、低电平) 79 - 触发边沿设置(上升沿、下降沿、双边沿) 80- 模拟外设 81 - 最多2个12位8通道高精度SAR ADC 82 - 采样率高达1M SPS 83 - 内建参考电压 84 - 支持single、scan两种模式 85 - 独立的结果寄存器 86 - 提供独立FIFO 87 - 可由软件、PWM触发 88- 欠压检测(BOD) 89 - 支持欠压检测 90 - 支持欠压中断和复位选择 91- 时钟源 92 - 20MHz/40MHz精度可达1%的片内时钟源 93 - 32K片内时钟源 94 - 2~32MHz片外晶振 95 96芯片更多详细信息请参考[华芯微特技术支持](http://www.synwit.cn/support-1/3.html)。 97 98## 编译说明 99 100本 BSP 为开发者提供 MDK5 工程。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 101 102双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 103 104> 工程默认配置使用 Jlink 仿真器下载程序,在通过 Jlink 连接开发板到 PC 的基础上,点击下载按钮即可下载程序到开发板 105 106推荐熟悉 RT_Thread 的用户使用[env工具](https://www.rt-thread.org/download.html#download-rt-thread-env-tool),可以在console下进入到 `bsp/synwit/swm320` 目录中,运行以下命令: 107 108`scons` 109 110来编译这个板级支持包。如果编译正确无误,会产生rtthread.elf、rtthread.bin文件。其中 rtthread.bin 可以烧写到设备中运行。 111 112## 烧写及执行 113 114### 硬件连接 115 116- 使用 USB B-Type 数据线连接开发板到 PC(注意:需要下载安装串口驱动支持 CH340 芯片,使用 MDK5 需要安装 SWM320 相关的 pack)。 117 118 > USB B-Type 数据线用于串口通讯,同时供电 119 120- 使用 Jlink 连接开发板到 PC (需要 Jlink 驱动) 121 122将串口 1 引脚为:`[PC2/PC3]`和 USB 转串口模块 J11 相连,串口配置方式为115200-N-8-1。 123 124当使用 [env工具](https://www.rt-thread.org/download.html#download-rt-thread-env-tool) 正确编译产生出rtthread.bin映像文件后,可以使用 ISP 的方式来烧写到设备中。 125 126**建议使用 keil 软件直接下载**。ISP 下载较复杂。 127 128### 运行结果 129 130如果编译 & 烧写无误,当复位设备后,会在串口上看到板子上的蓝色LED闪烁。串口打印RT-Thread的启动logo信息: 131 132``` 133 \ | / 134- RT - Thread Operating System 135 / | \ 4.0.0 build Dec 11 2018 136 2006 - 2018 Copyright by rt-thread team 137msh /> 138``` 139## 外设支持 140 141本 BSP 目前对外设的支持情况如下: 142 143| **片上外设** | **支持情况** | **备注** | 144| :----------------- | :----------: | :----------------------------------- | 145| GPIO | 支持 | PA0, PA1... PP23 ---> PIN: 0, 1...100 | 146| UART | 支持 | UART0/1/2/3 | 147| ADC | 支持 | ADC0/1 | 148| TIM | 支持 | TIM0/1/2/3/4/5 | 149| I2C | 支持 | 软件 I2C0/1 | 150| PWM | 支持 | PWM0/1/2/3/4/5 | 151| RTC | 支持 | RTC | 152| SPI | 支持 | SPI0/1 | 153| WDT | 支持 | WDT | 154| CRC | 支持 | CRC | 155| SDIO | 支持 | SDIO | 156| SRAM | 支持 | SRAM | 157| NOR FLASH | 支持 | NOR FLASH | 158| CAN | 暂不支持 | | 159 160## 参考资料 161 162* [RT-Thread 文档中心](https://www.rt-thread.org/document/site/) 163 164* [SWM320数据手册](https://www.synwit.cn/col.jsp?id=155) 165