好不容易把灯弄亮了,折腾个循环点亮吧,W800开发板有3个灯,W801开发板有7个灯,用的IO口不一样,(W800:PB00是绿,PB01是红,PB02是蓝),(w801测试板用WM_IO_PB_05/25/26/18/17/16/11).
直接上代码吧,逻辑上比较简单,但每行命令都得看SDKDEMO,不然真蒙不出来,比如delay这个延时,我sleep了半天也编译不过去,哈哈。
#include "wm_include.h"
void UserMain(void)
{
//#if DEMO_CONSOLE
// CreateDemoTask();
//#endif
//用户自己的task
printf("\n user task \n");
int i;u8 pp;
i=0;pp=0x01;
//初始IO
tls_gpio_cfg(WM_IO_PB_00,WM_GPIO_DIR_OUTPUT,WM_GPIO_ATTR_PULLLOW);
tls_gpio_cfg(WM_IO_PB_01,WM_GPIO_DIR_OUTPUT,WM_GPIO_ATTR_PULLLOW);
tls_gpio_cfg(WM_IO_PB_02,WM_GPIO_DIR_OUTPUT,WM_GPIO_ATTR_PULLLOW);
while (1)
{
i++;
printf("\n TEST%d \n",i);//可以输出到控制台烧录工具就能看到,很好很开心
if (pp>0x04){pp=0x01;}
tls_gpio_write(WM_IO_PB_00,pp&0x01^pp);//写入IO
tls_gpio_write(WM_IO_PB_01,pp&0x02^pp);
tls_gpio_write(WM_IO_PB_02,pp&0x04^pp);
if (i>32760){i=0;};
pp=pp<<1;
delay(1000000); //这个秒怎么算的?还没搞明白
}
}