历史上的今天
返回首页

历史上的今天

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

正在发生

2022年12月09日 | STM32之点灯仪式

2022-12-09 来源:zhihu

【1】寄存器信息确认

(1)STM32 PortB的起始地址是0x40010C00

(2)有可能涉及到的GPIO的地址:

寄存器名 偏移量 寄存器地址

GPIOB_CRL 0x00 0x40010C00

GPIOB_CRH 0x04 0x40010C04

GPIOB_IDR 0x08 0x40010C08

GPIOB_ODR 0x0C 0x40010C0C

GPIOB_BSRR 0x10 0x40010C10

GPIOB_BRR 0x14 0x40010C14


【2】C语言操作寄存器

(1)ARM是内存与IO统一编址的,所以ARM中的所有外设都是通过寄存器的方式来操作的

(2)每个寄存器都有地址,C语言通过这些地址来操作这些寄存器位,用到的C语言技巧主要是C语言的位操作和C语言指针。

(3)常见面试题:用C语言向内存地址0x30000004写入16

*(unsigned int *)0x30000004 = 16; 或者:

unsigned int *p =

(unsigned int*)0x30000004; *p = 16;


【3】确定操控寄存器的顺序后写代码

使能GPIOB代码最直接,直接把相关寄存器的地址强制类型转换为指针变量再调用,后面赋的值要看相应寄存器的具体位代表什么涵义。


后面的代码则使用了宏定义,让最后的命名和手册相关,让人更容易看懂,要记住我们的代码不是只让机器看,也是为了方便自己日后修改以及让别人看懂,还有注意代码格式,写漂亮点!


【4】难点解读

1.为什么不用包含头文件?

因为用不到!头文件包含一些函数声明、宏定义和变量声明,这里没有用到。

2.工程该如何建立

其中STM32F10x.s是用汇编代码写的起动代码,选择芯片是选择添加就好了。


3.为什么看起来这么简单?

因为任务简单!点亮LED嘛,多大点事!为什么你看到的工程包含好多文件夹?因为那是使用库函数编程,后面我们就会转到标准库的战场!


推荐阅读

史海拾趣

ALLIED [Allied Electronics]公司的发展小趣事

Allied Electronics,总部位于美国德克萨斯州的一家分销公司,专注于为各种行业提供电子元件和电子产品。以下是关于Allied Electronics发展的五个相关故事:

  1. 成立和初期发展: Allied Electronics成立于1928年,最初以销售家庭无线电零件和配件为主要业务。随着无线电和电子行业的发展,公司逐渐扩大了产品范围,开始提供更广泛的电子元件和设备,以满足不断增长的市场需求。

  2. 与RS Components的合并: 2000年,Allied Electronics与英国的RS Components公司合并,成为全球领先的电子元件分销商之一。这一合并加强了两家公司在全球市场的地位,并且拓展了它们的产品线和客户群。

  3. 公司战略调整: 随着数字化技术的快速发展,Allied Electronics逐渐调整了业务战略,加大了对电子元件和器件的供应,并拓展了工业自动化、物联网和电子制造等领域的业务。通过与各种行业的合作伙伴建立紧密的关系,公司不断提升了产品质量和服务水平。

  4. 技术创新和数字化转型: Allied Electronics致力于技术创新和数字化转型,通过建立先进的电子商务平台和在线资源中心,为客户提供更便捷的采购体验。同时,公司还加强了与供应商的合作关系,引入了更多的创新产品,满足不同客户的需求。

  5. 持续发展和全球扩张: 作为全球领先的电子元件分销商之一,Allied Electronics不断加大在全球范围内的市场扩张力度,开设了多个销售办事处和物流中心,以更好地服务于全球客户。同时,公司还积极参与行业展会和活动,加强了与全球电子行业的合作与交流,推动了公司的持续发展和壮大。

Elpac公司的发展小趣事

Elpac公司深知人才是企业发展的核心动力。因此,公司高度重视人才培养和团队建设。公司建立了完善的人才培训体系,为员工提供多样化的培训和发展机会。同时,公司还鼓励员工积极参与各种创新活动和竞赛,激发员工的创新精神和创造力。这种积极向上的企业文化吸引了大量优秀人才加入Elpac公司,为公司的持续发展提供了有力保障。

Astema公司的发展小趣事

Astema公司注重人才培养和团队建设。公司设立了完善的培训体系,为员工提供持续的学习和发展机会。同时,Astema还积极引进优秀人才,打造了一支高素质、专业化的团队。这支团队不仅为公司的技术创新提供了有力支持,还为公司的长期发展奠定了坚实的基础。

G-Two Inc公司的发展小趣事

背景:2003年,福斯特的创始人林建华,一位在纺织业和化工领域有着丰富经验的工程师,决定跨界进入光伏材料行业。当时,国内光伏组件封装所需的光伏胶膜几乎全部依赖进口,被国外几家大公司垄断。

发展:林建华凭借在热熔网膜领域的技术积累,带领团队成功研发出EVA胶膜,打破了国外技术垄断。这一技术突破不仅降低了国内光伏组件的生产成本,也为福斯特在光伏材料领域的崛起奠定了坚实基础。

成果:2008年,福斯特的EVA胶膜产品凭借优异的性能和价格优势,成功打入国内光伏组件企业的供应名录,并跻身全球EVA胶膜供应商前三强。

Elite Semiconductor Products Inc公司的发展小趣事

随着技术的不断进步和市场的不断变化,Elite意识到单一市场已经无法满足公司的发展需求。因此,公司开始积极拓展国际市场,寻求更广阔的发展空间。在海外市场拓展过程中,Elite注重了解当地市场的需求和文化特点,制定针对性的市场策略。同时,公司还积极与当地企业建立合作关系,共同开拓市场。这些努力让Elite在国际市场上取得了不俗的成绩,也为公司的持续发展注入了新的动力。

Ametherm公司的发展小趣事

品质是Ametherm公司的生命线。他们建立了严格的质量管理体系,从原材料采购到产品出厂的每一个环节都进行严格把控。同时,公司还注重持续改进,通过引入先进的生产设备和技术手段,提高生产效率和产品质量。这些努力使得Ametherm的产品在市场上具有很高的竞争力。

问答坊 | AI 解惑

数控电源

单片机控制开关电源有没有可能实现频率在10Hz到500KHz连续可调 做过的讲下啊 我看报道说没有办法控制精度 都是采用DDS专用芯片做 …

查看全部问答>

飞龙教程------51单片机=====最小51系统

飞龙教程------51单片机=====最小51系统 51单片机=====最小51系统 电子工程师之家 单片机学习网   http://www.eehome.cn/ 新势力电子单片机                    &n ...…

查看全部问答>

关于CPU核心电压的问题

我需要从SuperIO(IT8718F)上读CPU电压,看了IT8718F的SPEC,了解到可以从Environment Controller的Index为20H~27H读到一些电压值,并且有转换公式: Positive Voltage:Vs=Vin*(Ra+Rb)/Rb Negative Voltage:Vs=(1+Rin/Rf)*Vin-(Rin/Rf)*VREF 现 ...…

查看全部问答>

有没有做数控机床的朋友请进来下

我想开发一套数控机床的操作软件,有没有知道这方面的朋友,可以联系我,我在北京,只要你认为你可以做,或者朋友可以做都可以找我,真诚请教!可以加我QQ:913410767…

查看全部问答>

请高手介绍个学习单片机的好网站

请高手介绍个学习单片机的好网站,多谢!…

查看全部问答>

求CPU源码

哪位大虾可以告诉我哪可以下到16位或32位CPUvhdl源代码 …

查看全部问答>

51单片机P1口驱动能力的理解

在51单片机系列中,现在生产厂家很多,兼容型号也很多。不同厂家生产的单片机P1口的驱动能力 是不同的。下面仅举最常用的3种单片机为例,谈谈驱动能力。 先说说LS型TTL负载。 LS型TTL负载是指单片机端口所接负载是74LS系列的数字芯片。以TI公司的74 ...…

查看全部问答>

USB编程器问题

我在淘宝买了USB编程器,型号是LSD-FET430UIF 430 价格在250元左右 与在PCB板上的14脚并口仿真器接口完全兼容吧? 相应的驱动软件在哪里下呢?…

查看全部问答>

简易红外避障传感器电路和L298电机驱动电路

本帖最后由 paulhyde 于 2014-9-15 03:36 编辑  …

查看全部问答>

如何利用好你的 Evernote

Evernote是一款笔记软件,拥有简洁的操作界面和稳定的远程存储功能。笔记可以是一段文字、一个完整的网页或网页摘录、照片、语音备忘录或者手写笔记。笔记也可以添加附件。笔记可以按不同的文件夹分类,添加标签,注释,编辑,搜索或者导出。Ev ...…

查看全部问答>