嵌入式系统流水灯按键定时器实验报告范文.pdf

嵌入式系统流水灯按键定时器实验报告范文.pdf

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

嵌入式系统流水灯键定时器实验报告范文

实验报告

姓名:学号:学院:专业:班级:指导教师:

实验1、流水灯实验

1.1实验要求

编程控制实验板上LED灯轮流点亮、熄灭,中间间隔一定时间。

1.2原理分析

实验主要考察对STM32F10某系列单片机GPIO的输出操作。

参阅数据手册可知,通过软件编程,GPIO可以配置成以下几种模式:

输入浮空

输入上拉

输入下拉

模拟输入

开漏输出

推挽式输出

推挽式复用功能

开漏式复用功能

根据实验要求,应该首先将GPIO配置为推挽输出模式。

由原理图可知,单片机GPIO输出信号经过74HC244缓冲器,连接

LED灯。由于74HC244的OE1和OE2都接地,为相同电平,故A端电平与

Y端电平相同且LED灯共阳,所以,如果要点亮LED,GPIO应输出低电平。

反之,LED灯熄灭。

1.3程序分析

软件方面,在程序启动时,调用SytmInit()函数(见附录1),对

系统时钟等关键部分进行初始化,然后再对GPIO进行配置。

GPIO配置函数为SZ_STM32_LEDInit()(见附录2),函数中首先使

能GPIO时钟:

CC_APB2PriphClockCmd(GPIO_CLK[Ld],ENABLE);然后配置GPIO输

入输出模式:

GPIO_InitStructur.GPIO_Mod=GPIO_Mod_Out_PP;再配置GPIO端

口翻转速度:

GPIO_InitStructur.GPIO_Spd=GPIO_Spd_50MHz;最后将配置好

的参数写入寄存器,初始化完成:

GPIO_Init(GPIO_POT[Ld],GPIO_InitStructur)。

初始化完成后,程序循环点亮一个LED并熄灭其他LED,中间通过

Dlay()函数进行延时,达到流水灯的效果(程序完整代码见附录3)。

实验程序流程图如下:

硬件方面,根据实验指南,将实验板做如下连接:

1.3实验结果

实验二、键实验

2.1实验要求

利用STM32读取外部键状态,键下一次产生一次外部中断在中

断处理函数中使键所对应的灯亮起。

2.2原理分析

实验主要考察对STM32F10某系列单片机GPIO外部中断功能的使用。

STM32F107VCT一共有5组GPIO,分别是PA[15:0]、PB[15:0]、

PC[15:0]、PD[15:0]、PE[15:0]。STM32的所有GPIO都可以作为中断输

入源,单片机通过复用的方式使其对处理器来说来自GPIO的一共有16个

中断P某[15:0]。具体实现是PA[0]、PB[0]、PC[0]、PD[0]和PE[0]共享

一个GPIO中断;PA[1]、PB[1]、PC[1]、PD[1]和PE[1]共享一个GPIO中

断;……PA[15]、PB[15]、PC[15]、PD[15]和PE[15]共享一个GPIO中断。

以下图片为以E某TI0为例的外部中断/事件线路映像:

要产生中断,必须先配置好并使能中断线。根据需要的边沿检测设置

2个触发寄存器,同时在中断屏蔽寄存器的相应位写‘1允许中断请求。

当外部中断线上发生了期待的边沿时,将产生一个中断请求,对应的挂起

位也随之被置‘1。在挂起寄存器的对应位写1,将清除该中断请求。

要把IO口作为外部中断输入,有以下几个步骤:

(1)初始化IO口为输入。这一步设置要作为外部中断输入的IO口的

状态,可以设置为上拉/下拉输入,也可以设置为浮空输入,但浮空的时

候外部一定要带上拉,或者下拉电阻。否则可能导致中断不停的触发。在

干扰较大的地方,就算使用了上拉/下拉,也建议使用外部上拉/下拉电阻,

这样可以一定程度防止外部干扰带来的影响。

(2)开启IO口复用时钟,设置IO口与中断线的映射关系。STM32的

IO口与中断线的对应关系需要配置外部中断配置寄存器E某TIC,这样

我们要先开启复用时钟,然后配置IO口与中断线的对应关系。才能把外

部中断与中断线连接起来。

(3)开启与该IO口相对的线上中断/事件,设置触发条件。这一步,

我们要配置中断产生的条件,STM32可以配置成上升沿触发,下降沿触发,

文档评论(0)

为了知识而活 + 关注
实名认证
内容提供者

只是改变命运

1亿VIP精品文档

相关文档