历史上的今天
返回首页

历史上的今天

今天是:2025年06月22日(星期日)

2021年06月22日 | 带你走进STM32

2021-06-22 来源:eefocus

简介:使用MDK KeiluVision4进行学习,照着前面几个历程进行学习,看懂几个历程后想自己也照着搞搞,开始有些错误经调试后都解决了,但是在其他问题都解决后,


使用MDK KeiluVision4进行学习,照着前面几个历程进行学习,看懂几个历程后想自己也照着搞搞,开始有些错误经调试后都解决了,但是在其他问题都解决后,编译就出现了More More than one section matches selector - cannot all be FIRST/LAST这个错误,还提示啥包涵了一个错误的路径,本人各种检查路径,和历程的都一样了,可这个问题还没解决,当然后来发现这个不是路径的问题,上网找了好久,终于发现了,在历程中RVMDK以及STM32_EVAL中的几个初始汇编文件前有三个红点,而自己的工程中没有,再找资料才发现了如何设置,在此分享下,希望对大家有帮助:

对需要设置的文件(就是文件上有三个红点的文件,几个历程基本都一样),点右键Options for File'***',勾去灰化的Include in Target Build和Always Build,然后才重新编译,就能顺利通过了。


类型说明------100脚

S - 电源

I - 输入

O - 输出

I/O - 输入输出

FT - 5V 兼容

VDD - 单片机3.3V 电源正

VSS - 单片机3.3V 电源负

VDDA - 单片机A/D 转换器电源正

VSSA - 单片机A/D 转换器电源负

VREF+ - 单片机A/D 转换器参考电压正

VREF- - 单片机A/D 转换器参考电压负


由于STM32F103 系列单片机的内部高速RC 振荡器(HSI)由VDDA、VSSA 供电,故

即使不使用单片机自带的A/D 转换器,也必须保证VDDA、VSSA 的供电,否STM32F103

单片机不能正常启动。在EC30-EKSTM32 核心板的背面,VDDA 和VSSA 分别通过电感连接到VDD 和VSS。如果外部有VDDA、VSSA 的处理电路,需要将背面这两个电感拆除。

STM32F103 有两个独立的12 位A/D 转换器,16 个A/D 转换通道。EC30-EKSTM32 只

使用第1 个A/D 转换器ADC1。16 个A/D 转换通道分布在PA0 ~ PA7、PB0、PB1、PC0 ~ PC5这16 个管脚上,其中任何一个管脚都可以配置为模拟量输入管脚AIWx。


设置NVIC优先级分组,方式。注:一共16个优先级,分为抢占式和响应式。两种优先级所占的数量由此代码确定,NVIC_PriorityGroup_x可以是0、1、2、3、4,分别代表抢占优先级有1、2、4、8、16个和响应优先级有16、8、4、2、1个。规定两种优先级的数量后,所有的中断级别必须在其中选择,抢占级别高的会打断其他中断优先执行,而响应级别高的会在其他中断执行完优先执行。


STM32中有些硬件功能可以由用户自己配置,选择字节用于这些配置。这些通过用户选择字节配置的功能不能简单地通过软件配置,相应的功能必须在芯片上电时存在。如内部的独立看门狗,可以通过用户选择字节配置为做看门狗用,也可以通过用户选择字节配置为做普通计数器用;做看门狗使用时,软件是无法停止它的,所以芯片上电时这个功能就必须有效。


STM32三种启动模式中存储器的存储介质

STM32三种启动模式对应的存储介质均是芯片内置的,它们是:

1)用户闪存 = 芯片内置的Flash。

2)SRAM = 芯片内置的RAM区,就是内存啦。

3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。在每个STM32的芯片上都有两个管脚BOOT0和BOOT1,这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序,


BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。


BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试。

STM32 GPIO端口的输出速度设置

当STM32的GPIO端口设置为输出模式时,有三种速度可以选择:2MHz、10MHz和50MHz,这个速度是指I/O口驱动电路的速度,是用来选择不同的输出驱动模块,达到最佳的噪声控制和降低功耗的目的。


高频的驱动电路,噪声也高,当你不需要高的输出频率时,请选用低频驱动电路,这样非常有利于提高系统的EMI性能。


当然如果你要输出较高频率的信号,但却选用了较低频率的驱动模块,你很可能会得到失真的输出信号。


实际上芯片内部在I/O口的输出部分安排了多个响应速度不同的输出驱动电路,用户可以根据自己的需要选择合适的驱动电路。


注意:GPIO的引脚速度是指I/O口驱动电路的响应速度而不是输出信号的速度,输出信号的速度与你的程序有关。


关键是,GPIO的引脚速度跟应用匹配。

比如对于串口,假如最大波特率只需115.2k,那么用2M的GPIO的引脚速度就够了,既省电也噪声小。


对于I2C接口,假如使用400k波特率,若想把余量留大些,那么用2M的GPIO的引脚速度或许不够,这时可以选用10M的GPIO引脚速度。


对于SPI接口,假如使用18M或9M波特率,用10M的GPIO的引脚速度显然不够了,需要选用50M的GPIO的引脚速度。


推荐阅读

史海拾趣

Belkin公司的发展小趣事

贝尔金公司的业务始于1983年的美国加州霍桑。当时,它仅仅是一个在车库里运营的小企业,销售额仅为十八万美元。然而,这个看似不起眼的起点却孕育了一个未来的行业巨头。从最初的产品设计和生产,到逐步进入市场并获得消费者的认可,贝尔金凭借对电子产品连接技术的深入理解和创新,逐步在行业中崭露头角。

Dantona Industries公司的发展小趣事

作为一家有社会责任感的企业,Dantona Industries始终关注环境保护和社会公益。他们积极推广绿色生产理念,采用环保材料和生产工艺,减少对环境的影响。同时,公司还积极参与社会公益活动,为贫困地区的教育、医疗等事业提供援助。这些举措不仅展现了公司的社会担当精神,也为公司赢得了良好的社会声誉和品牌形象。

千志电子(CCO)公司的发展小趣事

为了进一步拓展业务版图,千志电子开始进军国际市场。2006年,千志电子在香港设立了千志电子(香港)有限公司,将其作为国际服务据点重心之一。这一举措使千志电子能够更好地了解国际市场需求和趋势,加强与国外客户的联系和合作。同时,千志电子还积极参加国际展览和论坛,展示其优质产品和先进技术,提高了品牌知名度和国际影响力。

Electronic-Bauteile Goerlitz GmbH公司的发展小趣事

Electronic-Bauteile Goerlitz GmbH公司自创立之初,就以其独特的技术创新为核心竞争力。公司不断投入研发资源,开发出了一系列具有竞争力的电子产品部件。这些部件以其高性能、低功耗和可靠性,赢得了市场的广泛认可。公司通过与高校和研究机构的合作,不断引进新技术,推动产品升级换代,确保了其在行业中的领先地位。

Aplus Flash Technology Inc公司的发展小趣事

Aplus Flash Technology Inc公司自成立以来,一直致力于闪存技术的研发与生产。在电子行业的激烈竞争中,公司凭借对技术的深入理解和持续创新,成功研发出了一款高性能、低成本的闪存芯片,迅速占据了市场份额。这款芯片不仅满足了消费者对电子设备存储容量和速度的需求,还因其出色的稳定性和耐用性赢得了客户的广泛好评。Aplus Flash Technology Inc公司因此成为了闪存市场的佼佼者,为公司的进一步发展奠定了坚实基础。

BOOKHAM公司的发展小趣事

BOOKHAM公司自创立之初,就专注于光学元件的研发和生产。随着电子行业的快速发展,公司不断投入研发资源,终于在一次技术突破中,成功开发出一款高性能的光学元件。这款元件凭借其卓越的性能和稳定的品质,迅速获得了市场的认可,BOOKHAM公司也因此名声大噪,逐渐在电子行业中崭露头角。

问答坊 | AI 解惑

求简易函数信号发生器设计方案

急求简易函数信号发生器设计方案…

查看全部问答>

PCB元件封装知识!

器件封装,就是指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。封装形式是指安装半导体集成电路芯片用的外壳。它不仅起着安装、固定、密封、保护芯片及增强电热性能等方面的作用,而且还通过芯片上的接点用导线连接到封装外壳的 ...…

查看全部问答>

5月13日 示波器下一阶段的安排

这些天我把所有器件的封装打上,准备画PCB。网友、参加活动的朋友可以帮我找找有没有疏忽的地方。特别是STM32的ARM,这100脚封装的第一次用,不知道有没有丢的东西。还有什么建议也可以提。 另外接受软件开发报名(报名可以在下面跟贴),将在PCB出 ...…

查看全部问答>

单片机MCS-51系列指令快速记忆法

本帖最后由 paulhyde 于 2014-9-15 09:22 编辑 汇编大家最好了解一部分,以后肯定是会用的到的,在网上找了一篇文章,帮助大家学习51,希望对大家有帮助 随着微电子技术和超大规模集成电路技术的发展,单片微型计算机以其体积小、性价比高、 ...…

查看全部问答>

JSP中站点中的WEB-INF下的web.xml文件有什么用?

JSP中站点中的WEB-INF下的web.xml文件有什么用呢?一般写什么内容的?…

查看全部问答>

arm9 (timer counter) 外接buzzer 怎样选择 时钟频率

接入一个外设buzzer。 i/o接入。应该设置timer counter. 看datasheet 现在有5个Timer Counter Clock TIMER_CLOCK1 MCK/2 TIMER_CLOCK2 MCK/8 TIMER_CLOCK3 MCK/32 TIMER_CLOCK4 MCK/128 TIMER_CLOCK5 SLCK 我应该选择那个。我用的是arm9 AT91 ...…

查看全部问答>

LC测量小工具----- 三,LM311测试

在家翻个底朝天,找到一个LM311,开始动手,照着原理图来做,因为没有频率计,也没有示波器。所以拿一个小喇叭做试验。 当LC振荡电容增大时,小喇叭输出的频率变小,电路经试验没有问题,下一步开始写程序。 …

查看全部问答>

The New Ipad发布,更名为New Ipad(牛排)

又出乎大家的意料,新一代的ipad更名为New Ipad(牛排)。 显示屏达到了2048x1536的分辨率,CPU更新为A5X,GPU变成了4个。 但是不知道GPU跟以前的是不是一样的,GPU 的增强跟屏幕也是相关的。 支持1080P视频录制,其他指标见下图。、 …

查看全部问答>

室内空气净化器控制系统设计

该课题主要设计空气净化器,通过检测室内空气污染物的含量以及室内人员的活动程度,经单片机分析处理后,再控制空气净化器进行杀菌消毒。需要微型计算机一台进行控制系统软硬件设计。 设计内容: 1)根据室内空气需要净化的需求,分析控制系统中 ...…

查看全部问答>

基于 MINI STM32 板的 CAN 通讯

  板子A 和板子B通讯,分别按下板A的的按键,通过CAN通讯,板B收到数据后,点亮板B上相应的LED灯。 …

查看全部问答>