历史上的今天
返回首页

历史上的今天

今天是:2025年12月14日(星期日)

2022年12月14日 | 原来STM32单片机的开发如此的简单

2022-12-14 来源:zhihu

大家好!

今天我们讲下用STM32CubeMX和Keil5点亮一个LED,这个项目比较简单,大家都可以尝试下。

这个就是我们今天的主角,这款单片机芯片是STM32F030K6T6。


这个开发板非常简单,里面的芯片是STM32 F030 K6 T6,它有32个引脚,在它旁边这个一个八兆的晶振,然后晶振左边是电源芯片,可以把5伏电压转换成3.3伏电压给单片机供电。开发板右侧有一个按键reset按键,旁边是下载口。

为什么用这个芯片呢?因为这个芯片它非常便宜啊!在网上买的价钱才几块钱,这整块开发板下来才十多块钱包邮,对于一些刚刚开始学单片机的童鞋来说它的功能够用,重点它很便宜哈哈哈。

废话不多说,开始实操吧!

我们首先打开CubeMX,然后输入芯片的型号STM32F030K6T6,可以看到封装LQFP32,然后32K的flash,4K的RAM,25个IO口,最高工作频率可以达到48兆。

打开操作界面,先把芯片的串行下载口打开。选中Debug serial wire之后,我们可以看到时钟和IO这两个针脚已经显示绿了也就是生效状态,这样就可以往里面下载程序。

把要控制的led对应的io口状态配置成输出状态,选择GPIO output。

配置时钟,晶振暂时就不用了,直接用内部的RC振荡器就好,频率选4x9,它的频率就是36M。(用RC呢,最高就是36M)

打开midi文件找到main函数,HAL库初始化,系统时钟配置,GPIO初始化,然后看到while(1),我们的程序就写在这。

我们知道要想让led闪烁起来,必须让他对应的IO口先置低电平,然后再置高电平这样无限的循环下去灯就会闪烁起来。

先用HAl库函数来先写第一句,置PB7低电平,然后来一个延时500毫秒。置高电平就把上面的程序拷贝下来,把reset改成set就可以了。

然后我们再设置一下编译参数,输出这项用户信息可以去掉,不然的化编译太慢。

然后下载选项里边我们选上Reset and Run,至于其他的选项就不用管它了。

开始编译程序,编译完成0错误,0警告,这就代表程序已经编译好了。

就要把编译好的程序下载到单片机里边,然后把数据线插上,把这个下载器插到usb接口里链接电脑之后就可以看到led已经亮起来了。

但是因为里面没有程序呢,所以这个灯是不受控的,他只是简单地亮起来。

把我们刚写好的程序下载到单片机里,点击程序的Load按钮直至下载完成。程序已经下载成功之后我们会发现单片机上的灯已经一闪一闪的亮起来了,亮0.5秒,灭0.5秒。

在这1个小项目里面我们学到了几条的HAL库函数语句。分别是给端口置高低电平、延时语句,还有端口电平反转语句。

怎么样,看了这期干货之后,是不是觉得STM32单片机的开发特别简单呢?心动不如行动,你也赶紧试一试吧。


推荐阅读

史海拾趣

Fronter Electronics Co Ltd公司的发展小趣事

Fronter电子成立于1991年,由一群对电子技术充满热情的创业者共同创立。在公司成立初期,Fronter电子专注于电子元件的代理与销售,通过引进国际知名品牌的产品,如SUNLORD、KDS等,迅速在行业内建立了初步的声誉。公司凭借敏锐的市场洞察力和高效的供应链管理,逐步在电子元器件市场中站稳脚跟。

Gem Asia Enterprise Co Ltd公司的发展小趣事

随着全球对环保问题的日益关注,Gem Asia积极响应号召,将环保理念融入企业发展中。公司投入大量资源研发绿色电子产品和生产工艺,减少了对环境的影响。同时,Gem Asia还建立了完善的废旧电子产品回收体系,实现了资源的循环利用。这些举措不仅提升了企业的社会形象,还为企业带来了长期的经济效益和社会效益。

Global Navigation Systems公司的发展小趣事
安装远程无线防盗报警系统时,首先需要将入侵探测器安装在需要防范的门窗等位置,并确保其能够准确检测到异常情况。然后,将微型无线报警发射机安装在探测器附近,并确保其能够接收到探测器的信号并发射出去。最后,将无线报警接收控制器安装在便于监控和接收报警信息的位置,并进行相应的调试和设置。在安装过程中,需要注意避免电磁干扰和信号衰减等问题,确保系统的稳定性和可靠性。
HEIMANN公司的发展小趣事
远程无线防盗报警系统可以通过智能家居系统平台进行集成。通过智能家居系统的控制中心和通信协议,可以将防盗报警系统与家中的其他智能设备(如灯光、窗帘、空调等)进行联动控制。例如,当防盗报警系统触发报警时,可以自动关闭家中的门窗、开启灯光等,以吓退入侵者或提醒家庭成员注意安全。同时,用户还可以通过智能手机等终端设备远程查看和控制家中的安全状况和设备状态。
Acopian Power Supplies公司的发展小趣事
安装远程无线防盗报警系统时,首先需要将入侵探测器安装在需要防范的门窗等位置,并确保其能够准确检测到异常情况。然后,将微型无线报警发射机安装在探测器附近,并确保其能够接收到探测器的信号并发射出去。最后,将无线报警接收控制器安装在便于监控和接收报警信息的位置,并进行相应的调试和设置。在安装过程中,需要注意避免电磁干扰和信号衰减等问题,确保系统的稳定性和可靠性。
ADI Electronics Inc公司的发展小趣事

随着技术的不断进步,ADI开始逐步拓展其产品线,从最初的运算放大器逐步扩展到信号处理、数据转换等多个领域。这些技术突破不仅巩固了ADI在电子行业的地位,也为其带来了更多的商业机会。同时,ADI始终保持着对新技术的高度关注,不断投入研发,确保公司在激烈的市场竞争中保持领先地位。

问答坊 | AI 解惑

集成运放电路的组成和各部分电路的功能特点

  集成运算放大电路是一种直接耦合的多级放大电路。它的放大倍数非常高、输入电阻也高,输出电阻低,应用非常广泛。它的内部电路比较复杂,但一般由四部分组成:偏置电路、输入级电路、输出级电路和中间级电路。各部分电路特点为:  ...…

查看全部问答>

单片机计数器如何用啊?

问题是这样的:单片机可以定时,也可以计数,现在我想通过给单片机外部(T0口)加一定频率的脉冲,通过一定得算法把这个频率算出来。 请给一个思路,我对计数不是太了解。是不是TMOD=0x05;(采用计数方式1),然后查询TF0==1?可是,我想估计还要一 ...…

查看全部问答>

LM3229的T6963打点程序(共享)

这几天一直在找那个T6963的打点程序,今天终于找到了,贴上来和大家分享 T6963控制240*128点阵屏,Proteus中仿真模型有LM3229,大家可以仿真 我已经试过了,没有问题的,大家放心使用 子程序如下, /***************************************** ...…

查看全部问答>

wince上程序crash后出现的错误报告,帮忙分析下

Error Signature:-- EventType:WinCE600BEX, P1:meruntime.exe, P2:6.0.0.0, P3:4a972256, P4:coredll.dll, P5:6.0.0.0, P6:4aaa7472, P7:00032897, P8:meruntime.exe, P9:6.0.0.0, P10:4a972256 Reporting Details:-- This error report includ ...…

查看全部问答>

WINCE wifi 多了一个图标

我的系统是WINCE5.0+Pxa300,WIFI是用的Marvell的8686 我编出来的镜像,在通过如下操作:禁用,挂起,复位 后会出现一个“倒T”的图标,这个图标在Public下可以找到,lan_disconnect.ico 再启用WIFI,WIFI的正确的图标也显示出来,这样任务栏上就 ...…

查看全部问答>

DHCP再改成动态的问题

项目需要,写了个可以修改IP,SUBMASK,GATEWAY的函数,是通过修改HIVE注册表实现的,修改的同时禁用了DHCP,这也是在通过改的HIVE注册表,但是问题是当我在程序里想把静态的地址该成DHCP的时候改不回来了,IP地址显示全为0了,而且动态的也没改回来,我是在E ...…

查看全部问答>

解决ModelSim显示中文乱码

当打开一个文件时其中的中文会显示为乱码,可以通过如下设置解决。在ModelSim主窗口中 Tools --> Preference --> Source Windows --> Files --> Custom Encoding for Read中选择gb2312编码。就可显示并输入中文了。…

查看全部问答>

eZ430-RF2500之初体验

  由于下午要写相关报告,可能没时间玩了,看了下eZ430-RF2500_User Guide_SLAU227.pdf,觉得引脚引出来做的挺好的,这个rf利用串口转usb进行数据的传输的,呵呵,先运行一个例程看看,得到如下结果,看了引脚定义,觉得挺好,基本资源都有了 ...…

查看全部问答>

ISE13.3中,用modelsim 进行Post-Translate仿真,怎么查看模块中信号的波形?

ISE13.3中,程序进行Behavioral仿真,结果正确,模块里面的信号波形可以看到。当进行时序仿真时,综合、翻译后的Post-Tranlate仿真中,我想查看模块里面的信号的波形,好查找出错的原因,但是只能看到testbench中信号的波形,而其余波形都是综合后 ...…

查看全部问答>