历史上的今天
返回首页

历史上的今天

今天是:2025年02月18日(星期二)

正在发生

2019年02月18日 | STM32F429IGT6寄存器映射点亮LED灯

2019-02-18 来源:eefocus

原理图如下(以PH10引脚的连接的LED灯为例)



我们只需要给PH10引脚一个低电平,那么LED即可点亮。


内部GPIO原理图如图所示,红色箭头即为GPIO输出方向,只要给置位/复位寄存器写数据数据就会传到输出数据寄存器(或者直接给输出数据寄存器赋值),经过推挽输出电路然后输出高低电平。



首先配置与PH10引脚有关的寄存器(寄存器映射)


通过查阅stm43f4的参考手册,相关寄存器映射如下(下面会讲到每个寄存器都是什么功能)



接下来按照如下顺序配置相关寄存器


1. GPIO 模式


首先我们把连接到 LED 灯的 PH10引脚配置成输出模式,即配置 GPIO 的 MODER寄存器,MODER中包含 0-15 号引脚,每个引脚占用 2个寄存器位。这两个寄存器位设置成“01”时即为 GPIO的输出模式。



2. 输出类型


GPIO输出有推挽和开漏两种类型,我们了解到开漏类型不能直接输出高电平,要输出高电平还要在芯片外部接上拉电阻,不符合我们的硬件设计,所以我们直接使用推挽模式。配置 OTYPER寄存中的 OTYPER10寄存器位,该位设置为 0时 PH10引脚即为推挽模式。



3. 输出速度


GPIO引脚的输出速度是引脚支持高低电平切换的最高频率,本实验可以随便设置。此处我们配置 OSPEEDR 寄存器中的寄存器位 OSPEEDR10即可控制 PH10的输出速度。



4. 上/下拉模式


当 GPIO 引脚用于输入时,引脚的上/下拉模式可以控制引脚的默认状态。但现在我们的 GPIO 引脚用于输出,引脚受 ODR寄存器影响,ODR寄存器对应引脚位初始初始化后默认值为 0,引脚输出低电平,所以这时我们配置上/下拉模式都不会影响引脚电平状态。但因此处上拉能小幅提高电流输出能力,我们配置它为上拉模式,即配置 PUPDR寄存器的 PUPDR10 位,设置为二进制值“01”。



5. 控制引脚输出电平


在输出模式时,对 BSRR寄存器或ODR 寄存器写入参数即可控制引脚的电平状态。



6. 开启外设时钟


设置完 GPIO的引脚,控制电平输出,以为现在总算可以点亮 LED 了吧,其实还差最后一步。


在《STM32芯片架构》的外设章节中提到 STM32 外设很多,为了降低功耗,每个外设都对应着一个时钟,在芯片刚上电的时候这些时钟都是被关闭的,如果想要外设工作,必须把相应的时钟打开。


STM32 的所有外设的时钟由一个专门的外设来管理,叫 RCC(reset and clockcontrol),RCC 在《 STM32 中文参考手册》的第六章。所有的 GPIO都挂载到 AHB1 总线上,所以它们的时钟由 AHB1外设时钟使能寄存器(RCC_AHB1ENR)来控制,其中 GPIOH 端口的时钟由该寄存器的位 7 写 1 使能,开启GPIOH端口时钟。


具体代码实现如下


推荐阅读

史海拾趣

ALPS公司的发展小趣事

ALPS公司是一家日本电子制造商,成立于1948年,总部位于东京。以下是关于ALPS公司发展的五个相关故事:

  1. 创立与早期发展:ALPS公司最初成立时,是一家小规模的电子零部件制造商,专注于生产开关和其他电子元器件。在日本战后经济快速复苏的背景下,ALPS公司迅速发展壮大,成为当时日本电子行业的重要参与者之一。

  2. 技术创新与产品多样化:随着时间的推移,ALPS公司不断进行技术创新,扩展其产品线。除了开关和电子元器件外,公司还涉足了汽车电子、通信设备、家电、数字产品等领域,推出了各种多功能的产品,满足不同行业和消费者的需求。

  3. 全球化战略:为了进一步扩大市场份额,ALPS公司实施了全球化战略,逐步在世界各地建立了生产基地和销售网络。公司在亚洲、欧洲、北美等地设立了子公司和分支机构,与当地客户和合作伙伴紧密合作,拓展了国际市场。

  4. 产业布局与战略合作:除了自身产品开发和制造外,ALPS公司还通过战略合作和并购等方式进行产业布局,加强了自身在电子行业中的地位。公司与其他行业领先企业合作,共同开发新技术和产品,提升了市场竞争力。

  5. 环境保护与社会责任:作为一家负责任的企业,ALPS公司重视环境保护和社会责任,致力于减少环境污染和资源浪费。公司采取了各种措施,包括提高能源利用效率、推动循环经济和环保产品设计等,为可持续发展做出了积极贡献。

以上是关于ALPS公司发展的五个相关故事,这些故事展示了ALPS公司在技术创新、产品多样化、全球化战略、产业布局和环境保护方面的发展历程,以及其在电子行业中的重要地位和影响力。

Connor-Winfield公司的发展小趣事

在电子行业中,技术的创新和产品的品质是企业生存和发展的关键。Connor-Winfield深知这一点,因此在发展过程中始终注重技术创新和品质提升。公司投入大量资源进行研发,不断推出具有创新性和高性能的产品。同时,公司还建立了严格的质量管理体系,确保每一件产品都符合最高的品质标准。这些努力使得Connor-Winfield的产品在市场上赢得了良好的口碑。

Bce Sud公司的发展小趣事

Bce Sud公司成立之初,专注于研发高效能的半导体芯片。面对市场上激烈的竞争,公司创始人凭借其在微电子领域的深厚积累,带领团队成功研发出一款具有低能耗、高稳定性的新型芯片,这一技术突破为公司在市场上打开了局面。随着这款芯片的推出,Bce Sud逐渐在电子行业树立了技术领先的形象。

安美通(APPCON)公司的发展小趣事

在创业初期,安美通面临着激烈的市场竞争和技术瓶颈。然而,公司的创始团队凭借对无线通信技术的深刻理解和丰富经验,成功研发出了一系列低功耗无线远传产品,为水气电及工控行业提供了创新的解决方案。这些产品迅速获得了市场的认可,为公司的初步发展奠定了坚实的基础。

BERGQUIST公司的发展小趣事

为了进一步提升竞争力,BERGQUIST公司开始寻求产业链整合和战略合作。公司与上游原材料供应商建立了长期稳定的合作关系,确保原材料的质量和供应稳定性。同时,公司还与下游电子设备制造商开展深度合作,共同研发定制化的热管理解决方案。这些举措不仅降低了公司的运营成本,还提高了产品的市场竞争力。

Apx-Crystal公司的发展小趣事

在快速发展的同时,Apx-Crystal公司始终坚持创新驱动的发展理念。公司投入大量资金用于研发创新和技术升级,不断推出具有市场竞争力的新产品。同时,公司还注重品牌建设和市场推广,通过参加行业展会、举办技术研讨会、开展线上线下营销活动等方式,提升品牌知名度和影响力。这些举措使得Apx-Crystal在行业内树立了良好的品牌形象,成为电子元件领域的佼佼者。

问答坊 | AI 解惑

请问SAA7113的LLC输出的信号是方波还是其他什么波形

SAA7113的LLC应该是每个像素点的同步信号,请问SAA7113的LLC输出的信号是方波还是其他什么波形?我用的时候,出来的波形是锯齿波,感觉不对?有谁用过,帮我确认一下!…

查看全部问答>

头文件 STC12C5A60S2

挺好的  大家快下…

查看全部问答>

新人报道

RT,接下来的日子还请各位前辈多多帮助。O(∩_∩)O哈哈~…

查看全部问答>

symbian开发介绍

Symbian开发内容介绍热线:010-51292078 021-51875830  0755-61280252 传真:021-62450161   010-62475416业务手机:15921673576曙海培训网站:http://www.51qianru.cn曙海培训曙海培训pads培训Cadence培训Allegro培训<a href=\" ...…

查看全部问答>

谈小功率开关电源设计方面的几点总结

谈小功率开关电源设计方面的几点总结1帖  wjjzqy团长 1319三2010-07-08 18:26  小功率开关电源的设计多要求交流全范围工作,一般常见于大功率电源或家用电器的辅助电源,工控电源的5VSB输出部分,PLC控制的供电部分,独立的小功率模块电 ...…

查看全部问答>

新人问个程序移植的土问题,送100分

俺要把一个跑在Windows CE(ARM)上的程序移植到Windows CE(MIPS)上去。 现在已经可以编译链接成功了,但是在Windows CE(MIPS)上一执行exe文件就报错,错误是“找不到($俺的程序名)或它的某一个组件。请确认路径和文件名正确并且所需要的库全部可用 ...…

查看全部问答>

想找omnivision的图像传感器,但是代理商都要求很大的批量才行,我只需要几片,该怎么办呀?

在学校,做东西的时候需要几片CMOS图像传感器,现在选定的是omnivision的ov7740,找了很多代理商,但是都要求要一个包装的才能订货,也就是1700片左右,我的天啊,我哪里能承受地起,现在我该怎么办呢? 之前选定的是cypress赛普拉斯的CMOS图像传 ...…

查看全部问答>

求GPS+GPRS ODM或OEM厂商或高手作私活^_^

如题。 具体细节欢迎来电商谈13366178752或Email:niugong@sina.com 谢谢!!^_^…

查看全部问答>

nk.bin大小的问题

wince5.0 nk.bin大于32M不能保存到NANDFLASH,因为进入CE后后面的32M被格式化了(NANDFLASH总共64M),请问怎么才能保存更大的NK.BIN?我想从48M的位置开始格式化,怎么才能做到?…

查看全部问答>

菜鸟问个数据包问题

我手头有个文本文件,内容如下: 0x25, 0x01, 0x01, 0x10, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xd8, 0xcf, 0xc2, 0xa3, 0xb1, 0xb3, 0xac, 0xca, 0xd0, 0xa1, 0xa1, 0xa1, 0xa1, 0xa1, 0xa1 ...…

查看全部问答>