历史上的今天
返回首页

历史上的今天

今天是:2025年01月16日(星期四)

正在发生

2021年01月16日 | STM32_EXIT中断

2021-01-16 来源:eefocus

今天的软件工程下载地址(360云盘):

https://yunpan.cn/cPhvyer3vIwXh  访问密码 57e1

 

STM32F10x的资料可以在我360云盘下载:

https://yunpan.cn/crBUdUGdYKam2   访问密码 ca90

 

工程概要说明:定义一个按键(可自己定义),每按键一次,响应中断一次,在中断函数中LED提示灯变化一次,用户可更加实际情况在中断函数做出相应操作,这里只是一个模板。

 

关于“STM32F103  EXIT中断” 我把重要的几点在下面分别讲述,若不明白,请关注微信公众号“EmbeddDeveloper”查阅或留言。

 

一、RCC时钟配置

 

该函数位于在bsp.c文件下面;

使能RCC时钟:RCC_APB2Periph_GPIOC 和 RCC_APB2Periph_AFIO (针对该工程主要的两项,引脚PC13和复用功能)。

 

二、EXIT配置

 

该函数位于在bsp.c文件下面;

对应外部中断(按键)的引脚,这里两处必须匹配。

 

三、NVIC配置

 

该函数位于在bsp.c文件下面;

对EXIT的中断控制器进行配置

 

注意:

EXTI15_10_IRQn包含EXTI10 ---EXTI15共6条外部中断线,也就是说共用一个中断入口,需要在中断里面判断是哪一个中断。

 

四、中断函数

  

该函数位于在stm32f10x_it.c文件下面;

这里需要判断是哪个中断,这里的操作根据自己实际情况条添加代码。

 

五、今天的重点提示

A.外部中断IO

  STM32所有的IO引脚都可以配置成外部中断引脚,见手册:

 

B.中断入口

程序中“EXTI9_5_IRQHandler” 和 “EXTI15_10_IRQHandler”可能开始学习的人不明白,其实很简单,就是综合了几个EXIT中断,入口都在这里。


C.细心的朋友会发现我“中断函数”中有一句else{EXTI->PR = 0xFC00;},估计很多人都不明白。这里告诉大家,这句else其实很重要,特别是正式工作的人(我工作亲身经验),为什么重要,在与移植工程时,或许之前的工程开启了其他中断,但移植过后没有屏蔽,从而导致进入中断,而中断标志位又没有清除掉(else就是清除标志位),致使不停止中断中执行。


推荐阅读

史海拾趣

Gumstix公司的发展小趣事
检查电路连接是否松动或断裂,重新连接或更换损坏的部件。
Clulite公司的发展小趣事
  1. 创业初期
    • 描述Clulite公司的创始人或核心团队如何识别电子行业中的某个市场机遇。
    • 讲述他们是如何筹集初始资金,设立公司,并开发出第一款产品或解决方案的。
    • 可以提及公司在初创阶段面临的挑战,如技术难题、市场竞争等。
  2. 技术创新
    • 讲述Clulite如何通过研发创新,推出了一款颠覆性的产品或技术,从而获得了市场认可。
    • 详细描述这一创新过程,包括研发团队的努力、关键技术的突破等。
    • 提及这一创新如何帮助公司在市场上取得了竞争优势。
  3. 市场拓展
    • 描述Clulite如何逐步扩大市场份额,从地区市场走向全国乃至国际市场。
    • 可以讲述公司如何建立销售网络、与合作伙伴建立合作关系,以及参与行业展会等活动来推广品牌和产品。
    • 提及公司在市场拓展过程中遇到的挑战和应对策略。
  4. 品质管理
    • 讲述Clulite如何注重产品质量和客户体验,通过严格的质量控制流程来提升产品可靠性。
    • 描述公司如何建立完善的售后服务体系,为客户提供及时、专业的支持。
    • 提及这些举措如何帮助公司赢得了客户的信任和口碑。
  5. 可持续发展
    • 讲述Clulite如何关注环境保护和社会责任,推动公司的可持续发展。
    • 描述公司如何采取环保措施,减少生产过程中的污染排放。
    • 提及公司如何参与社会公益事业,回馈社会。

请注意,这些故事需要根据Clulite公司的实际情况进行调整和补充。如果你需要更具体的内容,建议查阅Clulite公司的官方网站、新闻报道或行业分析报告,以获取更详细的信息和数据。

Boyd Corporation公司的发展小趣事

Boyd Corporation自创立之初,便致力于研发创新的热管理和环境密封解决方案。公司不断投入研发资源,推出了一系列高效、可靠的产品,这些产品在电子行业中迅速获得了广泛应用。通过持续创新,Boyd Corporation逐渐在市场中树立了技术领先的形象,吸引了众多合作伙伴和客户的关注。

Altera (Intel)公司的发展小趣事

随着公司规模的扩大和市场需求的增长,Boyd Corporation积极拓展全球业务版图。公司在多个国家和地区设立了生产基地和研发中心,以便更好地服务全球客户。通过全球化布局,Boyd Corporation不仅提升了生产效率,还加强了与全球客户的合作关系,进一步巩固了其在电子行业的领导地位。

AUSTIN公司的发展小趣事

然而,好景不长。奥斯汀公司在全力投入研发的WW1车系上遭遇了挫折,销售不佳导致公司濒临破产。在这个关键时刻,奥斯汀汽车公司通过研发新的车型来寻求突破。1922年,Seven车系成功上市,凭借其卓越的性能和合理的价格,使得奥斯汀汽车转危为安,重新获得了市场的认可。

Epistar Corp公司的发展小趣事

近年来,随着OLED(有机发光二极管)技术的兴起,LED行业面临着巨大的挑战。Epistar敏锐地意识到了这一点,开始积极调整战略方向,加大在OLED技术领域的研发力度。同时,公司还通过优化产品结构、提高生产效率等措施降低成本、提升竞争力。这些努力使Epistar在OLED技术浪潮中保持了稳健的发展态势。

问答坊 | AI 解惑

几个电源单双变换的原理图

应友人之邀,发几个电源单双变换的图纸,PROTEL99SE格式和JPG格式…

查看全部问答>

ise10和11通用破解

如题所示,平常不涉及到商业的研究完全可以使用破解嘛,方便…

查看全部问答>

有高手要带新人吗?无偿劳动力提供

有计算机专业高手要带小弟吗? 本人重点高校大三在校学生! 无偿为你工作!只求工作经验   QQ:274491910 …

查看全部问答>

模拟器如何使用adoce

我看各位讲的天花乱坠的,要把一些.dll文件拷贝到目标机器的windows目录下面,还要注册一个regedit.dll,可是我用的是模拟器,我怎么使用adoce呢?…

查看全部问答>

一个菜鸟,准备进入IC设计

    我想进入IC设计这方面的领域。以前学习软件开发,伴随着软件开发经验越多,感觉硬件太差,这时想搞清楚计算机电路设计构造,尤其是芯片设计。在网上查找了些资料,才发现这时有关IC设计领域的事情。     或许是软件经验太 ...…

查看全部问答>

在wince6.0平台上如何将模拟器中任务栏上的软键盘的位置调整到桌面上的任意一个位置?

在wince6.0界面下,将生成的模拟器界面中的任务栏上的软键盘的位置调整到桌面上的任意一个位置,该如何操作?谢谢!…

查看全部问答>

CE6中的suspend问题

1. Hive-based registry在suspend的时候会调用RegFlushKey    我想知道是那个模块,在那一个具体的步骤中调用的RegFlushKey。 2.按suspend正常过程打印下面了内容   Powering Off system:   Calling GWES power ...…

查看全部问答>

求教用于圆感应同步器数显系统的AD2S80芯片

本人在做圆感应同步器的数显系统,打算用AD2S80芯片,现在看不太明白它与单片机的接口是如何工作的. 哪位弟兄用过改芯片,望不吝赐教.(附件上传了该芯片的说明资料)…

查看全部问答>

一个有趣的小工具,总线直通车,bus pirate

网上看到一个老外做的有趣的小工具,bus pirate,就是利用PC做控制台,通过一个PIC单片机板子,模拟输出各种常用的单片机总线信号,比如I2C,SPI,1WIRE等等,这样就可以对常用的各种总线接口的芯片进行直接操作,不需要利用单片机编程序的麻 ...…

查看全部问答>

疑惑:关于FIR滤波

本帖最后由 dontium 于 2015-1-23 13:37 编辑 我在做fir滤波试验时,如果fir滤波系数放在程序存储器中(coeffs指定其首地址). 例程里有如下滤波语句: firs *AR2+0% , *AR3+0% , coeffs coeffs不是总是指向滤波系数表的第一个吗???哪里有自加啊?它 ...…

查看全部问答>