【龙印】龙芯1c的gpio输出高低电平的linux驱动

本文介绍了如何在龙芯1c平台上,为3D打印机编写GPIO驱动来控制输出高低电平,例如控制步进电机的A4988驱动模块。选用GPIO50进行操作,通过驱动程序`ls1c_test_gpio_output.c`和应用程序`main.c`进行测试,实现了GPIO的高电平和低电平切换,从而控制设备的运行状态。

本文为在用龙芯1c做3D打印机过程中的笔记。龙芯1c做的3d打印机简称“龙印”

控制GPIO输出高低电平是很简单,也经常用到。比如控制led,通过光耦或者功率三极管控制3d打印机的风扇和加热装置,还能控制3d打印机的步进电机。
以步进电机驱动模块A4988为例,A4988的使能,方向,步进这三个脚都是用GPIO控制的。
据此,还是决定写个简单的gpio作为输出的驱动和测试程序。
这里选gpio50,这个io口在智龙v2.0上已经接有一个led,点亮后是绿色的,如下

再看看原理图

gpio50就是CAMDATA0,有图可知,在gpio50输出低电平,led就会亮,输出高电平,就灭。

不多说了,上源码

驱动“ls1c_test_gpio_output.c”

 

/* 
 * drivers\misc\ls1c_test_gpio_output.c
 * 把龙芯1c上的一个IO口设为输出,并输出高低电平
 * 如果IO口上接有led,则led会亮灭,也可以用万用表测试io口的电压
 */


#include <linux/module.h>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值