基于德研电科的Tiva C口袋板,用keil软件编程实现以下功能:先绿灯亮60秒钟,接着黄灯亮3秒钟,再红灯亮60秒钟,最后黄灯亮3秒钟,以此循环。使用元器件:使用3色LED灯,引脚分别为F1、F2、F3。
时间: 2023-12-03 18:03:08 浏览: 147
Motors-Tiva-C-Series-Launchpad:使用 TI Tiva (TM) C 系列 Launchpad 的电机控制器板软件
好的,以下是实现该功能的代码:
```c
#include "TM4C123GH6PM.h"
void Delay(uint32_t time);
int main() {
SYSCTL->RCGCGPIO |= (1U << 5); // 使能GPIOF时钟
GPIOF->DIR |= (1U << 1) | (1U << 2) | (1U << 3); // 设置F1、F2、F3为输出
GPIOF->DEN |= (1U << 1) | (1U << 2) | (1U << 3); // 使能F1、F2、F3的数字功能
while(1) {
GPIOF->DATA = (1U << 1); // 绿灯亮
Delay(60000000); // 延时60秒
GPIOF->DATA = (1U << 2); // 黄灯亮
Delay(3000000); // 延时3秒
GPIOF->DATA = (1U << 3); // 红灯亮
Delay(60000000); // 延时60秒
GPIOF->DATA = (1U << 2); // 黄灯亮
Delay(3000000); // 延时3秒
}
}
// 延时函数
void Delay(uint32_t time) {
while(time--) {
__NOP();
}
}
```
需要注意的是,Tiva C口袋板使用的是TM4C123GH6PM芯片,所以代码中需要包含`TM4C123GH6PM.h`头文件。另外,该代码使用的延时函数是简单的循环计数延时,可能会有较大的误差,实际项目中应该根据需要选择更为精确的延时方式。
阅读全文