一、学习CH04示例程序:
二、给出LIGHT_RED和LIGHT_OFF的宏定义值:
三、直接地址编程实现三灯轮转:
不加延时代码则灯如图所示(红绿蓝三种灯一起亮,所以最后是青色的灯光):
如上图所示,通过对GPIO端口进行直接地址编程,令指定引脚为输出引脚并对灯的亮灭进行控制。
四、用调用GPIO构件方式,实现红绿蓝的八种组合轮流闪烁。
如上图所示,组合一共有八个,用二进制表示就是3位进行组合,所以对循环中每一位进行求余处理用以表示组合。
五、分析思考
1.学习了金葫芦IDE的基本操作与串口的连接与PC和MCU之间进行有线串口通信,交叉编译,最后将16进制机器码文件作为程序下载到MCU上运行的模式。
2.学习了GNU汇编的基本格式与基本命令,通过ldr和str指令对寄存器和存储器进行存储。
3.了解了STM32L4中的引脚,通过向对应PTB引脚端口传值控制小灯的颜色并对小灯的颜色进行组合。
4.了解了GPIO构件,封装的思想,通过将对端口的操作封装成对应的API,采用联合汇编的方式对端口的操作用汇编编写,操作由C语言进行进一步的调用。