使用STM32F103C8T6最小的系统板点亮水灯

学习目标STM32F103C8T6芯片核心板简介搭建自来水灯电路原理图修改项目模板代码以达到显示效果,显示信息,获取建议的建议,阅读背景网友建议做自来水灯,刚发现我已经之前购买的STM32F103C8T6核心板现在已经制造出水灯,恰到好处地了解如何实现STM32 GPIO输出,该输出将在将来用于驱动蜂鸣器和继电器。

水灯等效于“ Hello World”灯。

用计算机语言。

再次执行并意识到这一点,您将基本开始。

学习目标:STM32F103C8T6最小系统板。

使用面包板构建水灯电路。

将STM32F103RCT6项目模板修改为STM32F103C8T6项目模板。

熟悉将STM32微控制器GPIO用作输出。

STM32F103C8T6芯片简介根据STM32& STM8产品模型命名规则,对单片机最小系统的详细说明。

可以看出,在STM32F103C8T6的命名中:STM32代表STM32系列,32位MCU; STM32代表STM32系列。

F代表产品类型为基本类型; 103表示特定功能为STM32基本类型; C表示引脚数为48和49。

8表示存储容量为64KB; T表示包装为QFP; 6表示温度范围是-40至+ 85°C。

从核心板的示意图中,我们可以知道:有两种方法可以为板供电:通过U3 USB-micro接口提供5V电源,然后通过板载LDO芯片转换为VCC3V3。

通过P2接口,即SWD下载接口中的VCC3V3。

核心板的电源。

核心板上有两个LED,其中一个是电源指示灯PWR,另一个LED连接到PC13引脚,当PC13设置为高电平时,LED熄灭。

当PC13设置为低电平时,LED点亮;核心板上的跳线用于选择启动模式。

为了使程序将主闪存用作引导区,我们需要将BOOT0设为低电平,将BOOT1设为随机值。

此引导模式是最常用的用户FLASH引导,这是默认引导模式;核心板上的按钮是“ RESET”按钮; P2接口是对应于SWD下载模式的管脚接口;建立水灯电路以准备组件。

注意:电阻为2K,用作限流器。

LED应注意正负极,并直接插入发光二极管。

长针是正极,短针是正极。

它是负极;如果引脚已被切割且长度相同,请检查发光二极管体内的金属极的尺寸。

较小的金属极为正极,较大的金属极为负极。

建立电路。

根据以下原理图构建电路。

建立效果图。

修改项目模板。

在基于STM32固件库建立MDK5项目的基础上,将STM32F103RCT6项目模板修改为STM32F103C8T6项目模板。

修改点:替换启动文件,将startup_stm32f10x_hd.s替换为startup_stm32f10x_md.s,startup_stm32f10x_md.s是中等容量产品使用的启动文件,对应的FLASH大小范围为:64K≤FLASH≤128K。

修改全局宏定义,并将STM32F10X_HD修改为STM32F10X_MD。

更改使用的芯片型号并设置下载的闪存容量。

注意:在互联网上据说STM32F103C8T6和STM32F103CBT6是在同一晶片上制造的,但是在测试时,仅测试手册中提供的参数范围内的内容,这意味着STM32F103C8T6也是128k Flash,但仅经过测试之前的64k,然后用STM32F103C8T6标记(当然,C8T6的ID写在里面);因此,当我们添加Flash时,我们只能找到128K STM32F103,而找不到64K Flash。

设置PA5,PA6,PA7输出的代码GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA,& GPIO_InitStructure);将GPIO初始化为高电平,当高电平时,LED熄灭GPIO_SetBits(GPIOA,GPIO_Pin_5); GPIO_SetBits(GPIOA,GPIO_Pin_6); GPIO_SetBits(GPIOA,GPIO_Pin_7);行车灯代码的具体实现包括“ stm32f10x.h” void Delay(u32 count){u32 i = 0; for(; i& lt; count; i ++);} int main(void){GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitStructure |。

GPIO_Pin_7 | GPIO_Pin_7 | GPIO_Pin_7 | GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPI O_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA,& GPIO_InitStructure); GPIO_SetBits(GPIOA,GPIO_Pin

联系方式

金属膜柱状电阻,又称:晶圆电阻,柱状电阻,色环贴片电阻,无脚电阻,无引线电阻。金属膜柱状电阻介于贴片电阻与直插电阻之间,主要适用于电流较大/耐高压冲击/安全性要求高的高阶电路中,与直插电阻相比,由于去掉了引线,因此很大的降低了直插电阻在高频时引线所产生的寄生电感,同时能够解决直插电阻小阻值中精度与温度系数无法提高的难题,与片状电阻相比,由于更大的表面面积使之耐电流,耐高压的性能大大提升,不论在在功能上,机械结构上,电气特性上,或安全性上,都明显优于常规贴片电阻。

查看详情

在线咨询