打印
[STM32C0]

【STM32c031】开箱评测+adc测试

[复制链接]
1192|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电子烂人|  楼主 | 2024-4-25 19:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 电子烂人 于 2024-4-25 19:36 编辑

#申请原创# 很荣幸收到21IC的C031开发板,感谢21IC小跑堂和各位伙伴的支持和帮助。之前C031刚发布的时候就已经对该开发板有很高的关注度,ST给出的定位是:“取代8位单片机”,可以看到这是一个面向价格敏感型消费端的芯片产品。值得注意的是,C0系列不属于ST的“超低功耗系列MCU”产品线,而是属于ST的“主流MCU”,足以见得ST对这片芯片的重视。
此外,ST还为C0系列产品生产了一系列教程,方便习惯使用8/16位单片机的工程师入门。


网站链接:STM32C0x1 - 意法半导体STMicroelectronics
最近在忙着做ADC测量相关仪器的产品,所以这次用C031-NUCLEO开发板试制作一个ADC角度测量仪

1.环境及初始化:
这次的开发环境选择为广大工程师习惯使用的MDK5-arm,各功能的初始化使用STM32cubeMX
在“BOARD SELECT”中选择nucleo-c031开发板,配置时钟主频为48MHZ(习惯拉满)。

开发板的两个晶振全部焊接,故将时钟选择为“外部陶瓷/晶体震荡”,提高时钟稳定性。
实际开发中如果对成本敏感的话,也可以选择使用C0系列自带的“内部时钟”。

使能DEBUG,方便后续调试。

接口部分保留一组UART和SPI,方便外接屏幕和数据输出。

ADC部分,设置为12BIT采样率,开启“持续采集”

配置完毕后,选择MDK环境生成代码。
2.代码配置:打开生成的工程如图:

在变量栏配置变量如下:
/* USER CODE BEGIN PFP */
<blockquote>uint16_t adc_start_num;
配置任务函数,开启ADC采集
/* USER CODE BEGIN 0 */
uint16_t ADC_Get_Task(uint16_t adcVal);
/* USER CODE END 0 */
主函数循环如下:
int main(void)
{
  HAL_Init();

  SystemClock_Config();

  MX_GPIO_Init();
  MX_SPI1_Init();
  MX_ADC1_Init();
  MX_USART1_UART_Init();
<blockquote>/* USER CODE BEGIN 2 */
3.实物插接线如图

电位器两端1、3接电源和地,2号端子接A0进行ADC采集
4.效果展示



使用特权

评论回复
沙发
entest| | 2024-4-29 11:20 | 只看该作者
学习中

使用特权

评论回复
板凳
micoccd| | 2024-4-29 15:11 | 只看该作者
实现效果很好

使用特权

评论回复
地板
yellow555| | 2024-4-29 21:06 | 只看该作者
C0系列不属于ST的“超低功耗系列MCU”产品线,而是属于ST的主流MCU

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

50

帖子

0

粉丝