本帖最后由 jinglixixi 于 2017-5-27 10:59 编辑
上一次完成了开发环境的构建及下载方法的测试,这就为后续的探索打下了一个重要的基础。 这次的目标是让板载的RGB_LED以不同的色彩亮起来,首先看一下RGB_LED的连接情况,如1所示。在程序中,需将PD_8、PD_9及PA_4配置为输出口,然后按顺序来编排色彩出场即可。由于RGB_LED的一端已连接VCC,所以要点亮LED只需在对应引脚输出低电平即可。
图1 RGB_LED线路
实现色彩变换的主函数如下:
- int main (void)
- {
- SYS_Init();
- CLK_SetSystickClockSrc(CLK_CLKSEL0_STCLKSEL_HXT);
- GPIO_SetMode(PD, BIT9, GPIO_MODE_OUTPUT);
- GPIO_SetMode(PD, BIT8, GPIO_MODE_OUTPUT);
- GPIO_SetMode(PA, BIT4, GPIO_MODE_OUTPUT);
- PD9 = 1; // 红
- PA4 = 1; // 绿
- PD8 = 1; // 蓝
- while(1) {
- PD9 = 0; // 红
- CLK_SysTickDelay(500000);
- PD9 = 1;
- PA4 = 0; // 绿
- CLK_SysTickDelay(500000);
- PA4 = 1;
- PD8 = 0; // 蓝
- CLK_SysTickDelay(500000);
- PD8 = 1;
- PD9 = 0;
- PA4 = 0;
- CLK_SysTickDelay(500000);
- PD9 = 1;
- PA4 = 0;
- PD8 = 0;
- CLK_SysTickDelay(500000);
- PD9 = 0;
- PA4 = 1;
- PD8 = 0;
- CLK_SysTickDelay(500000);
- PD9 = 0;
- PA4 = 0;
- PD8 = 0;
- CLK_SysTickDelay(500000);
复制代码
经编译与下载,显示红色和白色的效果分别如图2和图3所示。后面再试着以按键来控制蜂鸣器的工作状态。 |