168|1

5

帖子

0

TA的资源

一粒金砂(中级)

CW32L010 Mini Broad 上手体验【01|点灯】 [复制链接]

本帖最后由 Lioyae 于 2024-11-29 21:39 编辑

CW32L010 Mini Broad 上手体验【01|点灯】

相关资料

CW32L010数据手册、用户手册、固件库(https://www.whxy.com/index.php/anquandigonghaoMCU/CW32L010F8U6.html?act=doc)

CW32L010 Mini Broad 立创硬件开源链接(https://oshwhub.com/beauty_light/cw32l010-mini-board)

产品参数

3D预览图

3D预览图

•内核:ARM® Cortex®-M0+

    – 最高主频 48MHz

•工作温度:-40℃ 至 85℃;工作电压:1.62V 至 5.5V

•存储容量

    – 最大 64K 字节 FLASH,数据保持 25 年 @-40℃ ~ +85℃,支持擦写保护、读保护和安全运行库保护功能

    – 最大 4K 字节 RAM,支持硬件奇偶校验

    –22 字节 OTP 存储器

•CRC 硬件计算单元

•复位和电源管理

    – 低功耗模式(Sleep,DeepSleep)

    – 上电和掉电复位(POR/BOR)

    –可编程低电压检测器(LVD)

•时钟管理

    – 4 ~ 32MHz 晶体振荡器

    – 32kHz 低速晶体振荡器

    – 内置 48MHz RC 振荡器

    – 内置 32kHz RC 振荡器

    – 时钟监测系统

    – 允许独立关断各外设时钟

•支持最多 16+1 路 I/O 接口

    – 所有 I/O 口支持具备滤波的中断功能

    – 所有 I/O 口支持具备滤波的唤醒功能

    – 所有 I/O 口支持迟滞及上拉输入

    – 所有 I/O 口支持推挽及开漏输出

•12 位模数转换器

    – 最高 2M SPS 转换速度,各序列通道采样时间可单独配置

    – 具备 8 个转换结果寄存器

    – 内置 1.2V 电压基准

    – 模拟看门狗功能

    – 内置温度传感器

•双路电压比较器

•实时时钟和日历

    – 支持由 Sleep/DeepSleep 模式唤醒4 / 66

•定时器

    – 16 位高级控制定时器,支持 6 路输入捕获,支持 6 对带死区的互补 PWM 输出,支持双点比较,支持PWM 移相

    – 一组 16 位通用定时器

    – 三组 16 位基本定时器

    – 一组 16 位低功耗定时器

    – 独立看门狗定时器

•通信接口

    – 二路低功耗 UART,支持小数波特率,支持低功耗接收数据,支持可配置电平转换,其中一路支持LIN 通信接口

    – 一路 SPI 接口 24Mbit/s,支持 4~16bit 位宽

    – 一路 I2C 接口 1Mbit/s,支持可配置电平转换,支持 SMBUS

    – IR 调制器,可编程占空比和极性

•串行调试接口 (SWD)

•80 位唯一 ID

以上内容摘抄自官方数据手册。

开发环境搭建以及点灯

1.下载并安Keil

2.下载并安装 WHXY.CW32L010_DFP.1.0.0.pack,其位置在下载的固件库文件中路径为这个的 XXXX\CW32L010_StandardPeripheralLib_V1.0.3\IDEsupport\MDK 文件夹内

准备完开发环境我们开始点灯,首先找到官方提供的原理图,从原理图上我们可以看到,在在最下方有一个板载 LED,GPIO 口为 PB 00。

原理图

原理图

接下来我们打开从官网下载的示例程序打开路径为 CW32L010_StandardPeripheralLib_V1.0.3\Examples\GPIO\gpio_blink\MDK

文件双击 Project.uvprojx 打开 Keil 工程,打开后双击右侧 USER文件下的 main.c 文件此为官方例程。

官方例程

官方例程

根据官方例程我们进行一仿写,即可得到我们自己的点灯程序。注:开发板到手后内部并未烧录程序,此点在开发板介绍中有提到。

#include "../inc/main.h"

#define LED_GPIO_PORT CW_GPIOB
#define LED_GPIO_PINS GPIO_PIN_0

int main(void)
{
	GPIO_InitTypeDef	GPIO_InitStruct = {0};
    
	SYSCTRL_HSI_Enable(SYSCTRL_HSIOSC_DIV1);
	__SYSCTRL_GPIOB_CLK_ENABLE();
	
	GPIO_InitStruct.IT = GPIO_IT_NONE;
	GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
	GPIO_InitStruct.Pins = LED_GPIO_PINS;
	GPIO_Init(LED_GPIO_PORT, &GPIO_InitStruct);
    
	while(1)
	{
		GPIO_TogglePin(LED_GPIO_PORT, LED_GPIO_PINS);
		FirmwareDelay(1000000);			// 此为系统时钟延时函数,单位为us
	}		
}

写完程序编译运行,结果如下:

运行.gif

 

最新回复

这个芯片功耗应该很低吧,话说这板子是真的小。   详情 回复 发表于 4 天前

回复
举报

6883

帖子

2

TA的资源

版主

这个芯片功耗应该很低吧,话说这板子是真的小。


回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表