GEC210 led流水灯C语言实现 ADS工程
软件环境: ADS1.2
开发板 :GEC210
理论知识: 参考led原理介绍
因为ADS默认需要从汇编进入,所以我们的代码先调用一段短汇编,然后直接跳转到C语言
源代码如下
led.c
#define GPJ2CON (*(volatile unsigned long*)0xe0200280)
#define GPJ2DAT (*(volatile unsigned long*)0xe0200284)
void delay(void)
{
int i = 0xff00000;
while(i--);
}
//实现稍微复杂一点的功能,如流水灯操作
void main_c(void)
{
unsigned char arr[8]={0xf,0xe,0xc,0x8,0x0,0x8,0xc,0xe};
int i;
GPJ2CON = 0x1111; //配置为输出模式
GPJ2DAT = 0xf; //初始化的时候熄灭所有的led
while(1) //主循环
{
for(i=0;i<8;i++)
{
GPJ2DAT = arr[i];
delay();
}
}
}
实际运行这个程序后,大家可以思考一个问题
那么怎么实现4个led不同的亮度呢?(提示:与流水灯的原理类似)
下一节:按键操作c语言实现