博客首页 | 排行榜 |

wolaiye945的博客

我的STM32F学习之路

个人档案
博文分类
初试STM32中断  2009-01-22 21:48

在我的印象中,中断一般处理起来都比较麻烦,又要写中断向量又要保护数据的,不同的中断还要对寄存器进行相应的设置,多个中断还要设置好优先级关系,当初用汇编写了个串口中断收发,想起来头就有点儿大。

再次赞叹STM32的函数库真是强大,而且很人性化,初始化的参数根据例程相应修改就可以了,写中断服务函数更是简单,中断函数都在stm32f10x_it.c文件里面给你放好了,只不过大多数都是空的,所以不小心触发了也没什么影响。真是够傻瓜的...什么准备都做好啦,不用白不用~哈哈~

大体了解了使用方法之后就开始实践一下吧,把之前做得程序都改成中断的操作吧,可以告别延时函数啦~哈哈~
于是乎简单改了一下systick的定时设置,打开系统时钟的而中断使能。
把原来主函数的内容去掉延时部分,贴过来就可以了。(其实只要把计数或指针修改部分贴过来就行)。在这里如果C语言用的少有可能会遇到不同文件如何共用的变量问题。其实很简单,通常的用法就是主文件(通常是main.c)里面直接声明为全局变量,然后再在其他.c文件里面用extern前缀声明同文件名的变量就可以了。当然也可以写在.h头文件中,但要保证主文件里没有include这个头文件,否则会出现变量重定义错误,无法通过编译。

目前用中断实现了流水灯和LCD循环字幕,并用外部触发实现了通过按钮令LCD的显示内容在ADC采样值和循环字幕之间切换。

下一步计划是USART接口测试、USB接口测试、外部FLASH和RAM的读写、SD卡读写。
当然,抽空把里面的那个温度传感器调出来玩玩儿,天越来越冷了,就大体当温度计用吧,呵呵~
类别:心得体会 |
上一篇:STM32内置温度传感器探究 | 下一篇:STM相关手册
以下网友评论只代表其个人观点,不代表本网站的观点或立场