完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请先在https://github.com/tjCFeng/GoRK3288下载 GoRK3288 开源库。 上一节通过不靠谱的方法控制了WorkLED,那么对于一个具有功能复用的GPIO应该怎样操作呢?为了能够表达的更清楚一些,这次先不看代码,而是找一个具有代表性的端口来针对它说明。 Firefly-RK3288有两排引出接口,从这里做文章吧 ![]() 找来找去,发现GPIO7_A1这个口很好,是PWM和GPIO复用的端口,就对它下手。 由于它本身没有连接到任何地方,直接操作看不出效果,所以我翻箱倒柜找到了个小板子 ![]() 上面有LED和蜂鸣器,特别适合做这个试验。不过它是排针而Firefly-RK3288的是排座,还得用杜邦线来连接。最好的是一头公一头母的。手头上没有这种线,只能用公对公、母对母的来连接了 ![]() ![]() 开发板这端按照第一张图来连接好 ![]() 另外还有VCC和GND别忘了。 连接完毕,可以看看代码了。如果按照上一节那样的操作,会发现根本不起作用,改变不了电平。 差在什么地方呢?来看看示例代码 ![]() 比上一节的代码多了不少呀。不过不用担心,这里面有一些不需要的。 首先,两个Flip(),就是电平翻转用的,这个已经知道了,可以忽略掉。 其次,Print打印状态和Sleep延时函数,都是Go语言的东西,也可以忽略,一下子少了5行代码。 在来看SetPP(),这个是设置内部上拉下拉电阻的,LED小板已经有上拉电阻了,这句可以省略; SetSR(),设置GPIO的速度,分为Fast和Slow,控制个LED快慢都无所谓,也可以省略; SetE(),设置GPIO驱动电流,LED小板上有三极管来驱动,只要个GPIO的信号就可以了,所以也可以省略。 最关键的就一句,SetDir(),设置为输出。复用的端口改变为GPIO后,默认是输入的,所以要手动设置为输出,这也是为什么原来的代码不能控制LED的原因。 当然,不要怪我故弄玄虚,不就是个设置方向吗,讲了这么多。其实隐藏在表面的背后,还有一部分操作,就是设置功能复用,通过RK3288的IOMUX来改变功能。说起来简单,但是在手册中查找每一个端口的复用操作很繁琐。当初在尝试使用这个GPIO口的时候,按照手册一点一点的配置好功能复用后居然发现还是不能操作电平,原因就是把方向设置给忘了,还以为是代码的问题而费了不少时间,所以这里特别强调了一下。 不过经过封装后,想操作一个GPIO就再也不用去担心IOMUX了,直接使用就可以了,这就是封装的威力。 好了,为了庆祝一下,来看看LED的效果吧 ![]() 可以根据代码每次的翻转来改变LED的亮灭。 下面总结一下GPIO类常用的方法: CreateGPIO:初始化端口 FreeGPIO:释放端口 GetData:获取高低电平(仅在输出时有效) Flip:翻转电平(仅在输出时有效) SetData:设置高低电平(仅在输出时有效) SetPP:设置内部拉电阻 SetSR:设置GPIO速度 SetE:设置驱动电流 GetinputValue:获取输入的高低电平(仅在输入时有效) GoRK3288库请在https://github.com/tjCFeng/GoRK3288下载。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1171 浏览 0 评论
【KV260视觉入门套件试用体验】四、KV260 视觉入门套件和固件更新
1764 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI Library体验之OCR识别
1304 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI 通过迁移学习训练自定义模型
1887 浏览 0 评论
【KV260视觉入门套件试用体验】KV260系列之Petalinux镜像+Resnet 50探索
1453 浏览 0 评论
【AMD KV260视觉入门开发套件试用】4、简单几步体验ubuntu 20.04.3 LTS运行人员检测应用
1716浏览 1评论
5510浏览 1评论
【KV260视觉入门套件试用体验】老刘记事儿KV260初体验之Micro-SD选型提速研究(三)
978浏览 1评论
【KV260视觉入门套件试用体验】KV260部署yolov3实现车辆和行人检测
2667浏览 1评论
【KV260视觉入门套件试用体验】基于KV260的人脸识别的实现与展示
955浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-24 19:44 , Processed in 0.331929 second(s), Total 35, Slave 29 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191