实验1: 亮灯¶
这是第一次实验,目的在于熟悉硬件板卡,了解今后实验的基本配置、编程的基本手段和程序下载运行的方式。
本实验配有详细的 实验指南 。
实验目的¶
- 了解嵌入式板卡一般情况;
- 掌握面包板的使用;
- 熟悉嵌入式板卡的供电、下载和调试的接线方式;
- 安装交叉编译环境,理解交叉编译;
- 熟练掌握编译、下载、运行的过程;
- 熟练掌握操纵MCU的GPIO做输入输出的方法,配置103板上的GPIO端口来获得按钮按下与否的状态;
- 复习去抖算法:如何写程序处理按钮的抖动(啊,数逻实验再现江湖~)
实验器材¶
硬件¶
- STM32F103核心板1块;
- ST-Link 1个;
- 杜邦线(孔-孔)4根(连接103和ST-Link);
- 按钮1个;
- 面包板1块;
- 面包线(针-针)若干。
软件¶
- STM32CubeIDE。
实验步骤¶
此为实验报告的整体步骤,具体的实验步骤请参考 实验指南 。
- 在PC上安装好Cube IDE;
- Cube IDE上配置STM32F103C8;
- 编写使得连接在PC13上的TST LED闪烁的程序;
- 编译产生可下载/运行的二进制映像文件;
- 下载程序到板卡,观察LED是否闪烁;
- 寻找HAL的GPIO控制函数,不用TogglePin函数实现闪烁;
- 上拉方式连接按钮到PA11;
- 编写程序,按下按钮时TST LED点亮,放开按钮熄灭。
- 编写程序,每次点击按钮时切换TST LED的状态。
扩展内容¶
- 用示波器或逻辑分析仪测试LED闪烁时PC13上输出的频率;
- 找出能够产生的最高的输出频率。
实验报告要求¶
此为实验报告的整体要求,具体的实验报告要求请参考 实验指南 。
- 画出你所实际实施的连接示意图;
- 给出实际拍摄的板卡连接照片;
- 给出源代码中自己所写的部分;
- 说明实验结果;
- 说明其他所做的扩展内容的情况;
- 给出实验心得体会。
验收要求¶
- 在实验课上现场烧录程序,LED闪烁;
- 在实验课上现场烧录程序,按下按钮时LED点亮,放开按钮时LED熄灭;
- 在实验课上现场烧录程序,每次点击按钮时切换LED的状态;
- 回答与实验内容相关的问题。