物联网实验报告130025模版 (1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通达学院物联网技术与应用实验报告
( 2015 / 2016学年第 2 学期)
题目:STM32 基础实验——GPIO实验
专业网络工程
班级 130025
学号姓名 13002502
1300250
1300250
1300250
指导教师赵莎莎
指导单位通信与信息工程学院
日期 2016年5月26日
题目:STM32 基础实验——GPIO实验
一、实验目的
①掌握IAR Embedded Workbench的基本用法;
②掌握GPIO 端口作为普通输出口时的使用方法;
③掌握STM32F103芯片GPIO的配置方法。
二、实验内容
通过STM32芯片的GPIO 端口控制LED 灯实现交替亮灭。
三、实验设备
1、硬件:
DK-RFID200 物联网开发套件一套
PC机一台
2、软件
IAR Embedded Workbench for ARM 集成开发环境
四、实验原理
1. STM32F103寄存器描述
STM32是基于ARM Cortex-M3内核的32位处理器,具有杰出的功耗控制以及众多的外设,最重要的是其性价比,其功能和资源远远高于一般单片机,适合开发低成本高性能的嵌入式设备。
STM32的IO口可以由软件配置成8种模式:输入浮空,输入上拉,输入下拉,模拟输入,开漏输出,推挽输出,推挽式复用功能,开漏复用功能。
STM32F103芯片的每个GPIO端口有两个32 位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32 位数据寄存器(GPIOx_IDR 和GPIOx_ODR),一个32 位置位/复位寄存器
(GPIOx_BSRR),一个16 位复位寄存器(GPIOx_BRR)和一个32 位锁定寄存器(GPIOx_LCKR)。常用的IO端口寄存器只有4个:CRL、CRH、IDR、ODR。
STM32的IO口位配置表如表1.1所示:
表1.1 STM32的IO口位配置表
表1.2 STM32输出模式配置表
(1)端口配置寄存器低位(GPIOx_CRL)(x=A..E)
地址偏移:00h
复位值:4444 4444h
从上表中可以看到,复位值其实就是配置端口为浮空输入模式。从上图还可以得出:STM32的CRL控制着每个IO端口(A~E)的低8位的模式。每个IO端口的位占用CRL的4个位,高两位为CNF,低两位为MODE。这里我们可以记住几个常用的配置,比如0X4表示模拟输入模式(ADC用)、0X3表示推挽输出模式(做输出口用,50M速率)、0X8表示上/下拉输入模式(做输入口用)、0XB表示复用输出(使用IO口的第二功能,50M速率)。
CRH的作用和CRL完全一样,只是CRL控制的是低8位输出口,而CRH控制的是高8位输出口。
(2)端口配置寄存器高位(GPIOx_CRH)(x=A..E)
地址偏移: 04h
复位值:4444 4444h
(3)端口输入数据寄存器(GPIOx_IDR) (x=A..E) 地址偏移:0x08
复位值:0x0000 XXXX
(4)端口输出数据寄存器(GPIOx_ODR) (x=A..E) 地址偏移:0Ch
复位值:0x0000 0000
2.硬件原理图
3.程序设计流程图
通过编程实现D1、D3 和D2、D4 进行交替亮灭。
五、实验步骤
1.设备连接
打开物联网开发套件的电源,将Jlink V8 仿真器与RFID200核心板JTAG接口相连。
2.运行实验
(1)选择目录: \GPIO\IOT_DK_EWARMv5 目录下的GPIO.eww 文件。
(2)右击Workspace 下的GPIO-IOT_DK_V1.2 选择Rebuild ALL 进行编译,全部通过
后,点击中的Download and Debug 按钮进行下载。
(3)完成下载后,选择这一栏中的go 按钮来运行程序。
六、实验现象
运行程序后可以看到D1亮、D3亮;D2灭、D4灭,延时为200ms,然后D1灭、D3灭;D2亮、D4亮,延时100ms,不断交替闪烁的现象。
七、实验小结