完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本篇来介绍LicheeRV 86 Panel板子的LED控制。 SD里的这个Linux系统里,已经有LED的驱动程序了,本篇在控制LED,其实是在应用层通过操作文件的方式实现LED的控制(Linux中一切皆文件,LED也一样)。 注意,对于这个86 Panel板子,需要把核心板拆下来进行实验,因为对应引脚连接了外设。 1 控制LED亮灭 1.1 原理图 查看原理图,可知该LED连接的是PC1: 看IO复用情况表,可知该IO的数字标号为65: cat /sys/kernel/debug/pinctrl/2000000.pinctrl/pinmux-pins 1.2 指令控制LED 我们先导出该GPIO: echo 65 > /sys/class/gpio/export cd /sys/class/gpio/gpio65 然后再将该IO置为输出状态,即可操作其电平: echo out>direction echo 1 > value #LED点亮 echo 0 > value #LED熄灭 具体操作如下图: LED亮起,如图: 2 控制LED闪烁 通过指令,可以控制LED亮灭了,可以继续编写程序来实现LED的闪烁: 2.1 程序 在Ubuntu中编写ledtest.c程序: #include #include #include #include #include #include #define LED_GPIO "/sys/class/gpio/export" #define LED_DIR "/sys/class/gpio/gpio65/direction" #define LED_VAL "/sys/class/gpio/gpio65/value" int main() { printf("led test beginn"); int fd_gpio = 0; int fd_dir = 0; int fd_val = 0; //导出LED的GPIO fd_gpio = open(LED_GPIO, O_WRONLY); if (fd_gpio < 0) { printf("fd_gpio:%s open failn", LED_GPIO); exit(1); } write(fd_gpio, "65", 2); //设置为输出 fd_dir = open(LED_DIR, O_WRONLY); if (fd_dir < 0) { printf("fd_dir:%s open failn", LED_DIR); exit(1); } write(fd_dir, "out", 3); //控制LED闪烁 fd_val = open(LED_VAL, O_WRONLY); if (fd_val < 0) { printf("fd_val:%s open failn", LED_VAL); exit(1); } for (int i=0; i<10; i++) { write(fd_val, "1", 1); sleep(1); write(fd_val, "0", 1); sleep(1); } //释放资源 close(fd_gpio); close(fd_dir); close(fd_val); printf("led test endn"); return 0; } 以上程序,本质就是将手动控制LED的指令,通过代码的形式实现出来。 最后是一个for循环,LED每隔1s亮/灭一次,10次循环后退出。 2.2 编译 编译工具链的搭建,上一篇已有介绍。 编译指令如下: unset LD_LIBRARY_PATH source ~/.local/riscv64-toolchain/environment-setup-riscv64-oe-linux $CC -o ledtest ledtest.c 编译结果如图: 2.3 运行 通过ADB工具将led测试程序拷贝到开发板,运行: 运行效果如下: 3 总结 本篇介绍了LicheeRV 86 Panel板子如何控制核心板上的LED亮灭。 文章转载自:平头哥芯片开放社区 作者:码农爱学习 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
【平头哥Sipeed LicheeRV 86开发板试用体验】Waft初体验
15655 浏览 1 评论
13703 浏览 4 评论
【平头哥Sipeed LicheeRV 86开发板试用体验】四、烧写waft系统&搭建waft测试环境
19620 浏览 2 评论
59026 浏览 19 评论
【限时福利】加入芯片开发社区,领100G电子工程师资料大礼包
87687 浏览 121 评论
邀请函 | 3月2日 来上海参加平头哥“玄铁RISC-V生态大会”
742浏览 0评论
读书分享会 | 玄铁RISC-V处理器入门与实战电子书免费下载!
630浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 02:18 , Processed in 0.727018 second(s), Total 69, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号