linkboy & WCH处理器移植入门
开始点亮LED灯
第一章节我们已经用串口打印代替GPIO输出,能运行linkboy程序了。本章我们继续移植,看看如何让开发板驱动真正的LED亮灭。首先到WCH官网找到这个示例文件夹:

进入EXAM文件夹,找到GPIO的示例,并打开:

把GPIO相关的函数复制出来,放到vos_c.h文件里:

这里边虽然增加了GPIO的操作,但是忽略了参数i,也就是不管linkboy界面上把LED接到哪个针脚,实际上都是从GPIOA0这个针脚输出。编译下载到开发板,并把开发板上的LED1插针接到GPIOA0,可以看到开发板上的LED1亮灭不停,表明初步完成了GPIO的移植。
接下来我们要处理参数i了,这个i就是图形界面连接的针脚序号,比如D4针脚,那么传进来的i就等于4。查询WCH手册可知,WCH的GPIO包括PA0-PA15,PB0-PB15,…… 因此我们可以把PA0-PA15编号为0-15,PB0-PB15编号为16-31,以此类推。体现在程序中,就是这样处理:

将引脚序号i除以16后,得到引脚的名字(ABCD…),将i对16取余数后,得到引脚的序号(0-15)。现在就可以独立控制多个LED了:

图中红灯接到了D14(i=14),绿灯接到了D18(i=18),因此开发板上的LED1需要接到PA14,LED2需要接到PB2(18/16=1 18%16=2),程序下载到开发板,并接好LED1和2,可以看到两个LED分别按照对应的频率闪烁。
-
移植
+关注
关注
1文章
407浏览量
29208 -
开发板
+关注
关注
25文章
6122浏览量
113217 -
ViewChr
+关注
关注
0文章
2浏览量
6554 -
RT-Thread
+关注
关注
32文章
1540浏览量
44265
发布评论请先 登录
【RTT大赛作品连载】AB32VG1评估板到货控制彩灯测试
【RTT大赛作品连载】CH32V103开发板资料及上电首测
【RTT大赛作品连载】中科蓝讯AB32VG1开发板开箱篇
【RTT大赛作品连载】linkboy面向AB32V移植(2)
【星核计划】上传FPGA大赛作品,领取电子发烧友专属上传福利!
【文章连载】RT-Thread创新应用大赛文章汇总
【有奖活动】RT-Thread创新应用大赛作品连载征文
【RTT大赛作品连载】linkboy面向AB32V移植(3)

【RTT大赛作品连载】linkboy面向WCH移植(2)
评论