无线通信技术综合训练报告
训练二 GPIO实验
一、实验内容
1.LED指示灯自动闪烁; 2.按键控制LED指示灯亮灭; 3.按键控制LED指示灯闪烁。
二、实验原理
CC2530有21个数字输入/输出引脚,可以配置为通用数字I/O接口,也可以作为外部I/O
接口连接到ADC、定时器或者USART等外部设备。这些I/O口的用途,可以通过一系列寄存器配置,由用户软件加以实现。
三、基本实验步骤(从节点)
(一)基本实验一:指示灯自动闪烁
操作步骤:①连接实验设备,将USB电缆线插到PC机的USB端口上,实验板电源指示灯亮。 ②启动IAR开发环境,打开“开始”菜单->“程序”->IAR Embedded Workbench for 8051 7.60->IAR Embedded Workbench。
③创建工程,并将编写的代码添加到工程中,再进行编译和调试,确定无误后,通过下载器将程序下载到开发板上。观察现象。
(二)基本实验二:按键控制灯亮灭
操作步骤:①连接实验设备,将USB电缆线插到PC机的USB端口上,实验板电源指示灯亮。 ②启动IAR开发环境,打开“开始”菜单->“程序”->IAR Embedded Workbench for 8051 7.60->IAR Embedded Workbench。
③创建工程,并将编写的代码添加到工程中,再进行编译和调试,确定无误后,通过下载器将程序下载到开发板上。观察现象。
四、设计性实验程序流程与分析(从节点)
实验要求:设计一个工程,下载到目标板上,要求按下K1时,LED1 闪烁(视觉能够分辨出),再次按下K1,LED1 熄灭;按下K2时,LED2 闪烁,再次按下 K2,LED2 熄灭;如此重复循环。
1.初始化流程图如下所示:
第3页,共58页
无线通信技术综合训练报告 训练二 GPIO实验 Yes 延时函数 开始 初始化声明 按键初始化,从节点P0.1、P0.7为普通I/O口,输入状态、上/下拉端口输入 LED初始化 按键扫描 No K1是否等于0 延时消抖 Yes K2是否等于0 Yes K1是否等于0 No 延时消抖 扫描值为1 扫描值为0 Yes K2是否等于0 扫描值为2 图2.1初始化流程图
扫描值为0 2.主函数流程图如下所示:
第4页,共58页
无线通信技术综合训练报告 训练二 GPIO实验
LED1闪 LED1灭 Yes 按键1是否等于1 开始 初始化指示当1成立 Yes 扫描值是否等于1 No No Yes 扫描值是否等于2 No 按键2是
LED2扫描值为0 否等于1 按键都没按 LED2 图2.2主函数流程图 五、实验结果与分析
(一)基本实验一实验结果:开发板上的指示灯自动地闪烁。
结果分析:程序中对LED进行初始化设置,从节点LED1、LED2对应的端口分别为P1.1和P1.0,将其设置为普通I/O口,并将端口定义为输出方向,“ON”为点亮,“OFF”为熄灭,调用while函数,使LED1、LED2不停地闪烁。
(二)基本实验二实验结果:按下按键K1,指示灯LED1闪烁,按下按键K2,指示灯LED2闪烁。
结果分析:程序中较之实验1添加了对按键的初始化,通过它来分别控制LED1和LED2,在定义按键时,要对按键进行按键扫描,扫描过程中