跳到主要内容

一、GPIO输出之LED跑马灯实验

1.1 实验简介

本章将要实现的时控制开发板上的LED实现一个类似跑马灯的效果,该实验的关键在于如何控制ShineBlink的 IO 口输出。通过本章的学习,你将初步掌握 ShineBlink 基本 IO 口的使用。

ShineBlink的IO口可以由软件配置成如下两种输出模式:

1:"STANDARD": 标准输出

2:"OPENDRAIN": 开漏输出

当设置为开漏输出时,IO口输出高电平需要接上拉电阻!

1.2 硬件原理图

本章用到的硬件为开发板上的LED功能:

LED

LED_1(黄色)接D8,LED2(绿色)接D9,LED_PWM(红色)通过跳线帽接D0!

jumpLED

当相应的IO端口为低电平时,线路导通,LED发光,其中LED_PWM可以使用PWM控制其亮度,PWM功能后续会用到。

1.3 软件代码

--配置D0,D8,D9为普通输出
LIB_GpioOutputConfig("D0","STANDARD")
LIB_GpioOutputConfig("D8","STANDARD")
LIB_GpioOutputConfig("D9","STANDARD")
while(GC(1) == true)
do
--点亮LED_PWM
LIB_GpioWrite("D0",0)
LIB_GpioWrite("D8",1)
LIB_GpioWrite("D9",1)
--延时300ms,点亮LED1
LIB_DelayMs(300)
LIB_GpioWrite("D0",1)
LIB_GpioWrite("D8",0)
LIB_GpioWrite("D9",1)
--延时300ms,点亮LED2
LIB_DelayMs(300)
LIB_GpioWrite("D0",1)
LIB_GpioWrite("D8",1)
LIB_GpioWrite("D9",0)
--延时300ms
LIB_DelayMs(300)
end

1.4 实验现象

可以看到,LED灯循环点亮实现了跑马灯的功能。

LEDserial