首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

GPRS(Air202) Lua开发: GPIO输出高低电平

控制GPIO2输出高电平 ? module(......依次类推 咱控制的引脚是GPIO2,所以填写的是 pio.P0_2 2.第二个参数解释: 如果设置输出高低电平,则:填写1(输出高电平) ;填写0(输出低电平) 咱们设置输出高电平所以填写的  1 如果填写的是...4.返回值 首先要明确,返回的是一个函数 调用函数  XXXX(); 假设程序是 Relay1 =  pins.setup(pio.P0_2,1);  (设置GPIO2输出高电平) 后期设置输出高低电平可以这样...扩展: --Relay_P02 = pins.setup(pio.P0_2,1) --以后控制可以使用 Relay_P02 函数控制GPIO输出高低电平 --控制GPIO2输出低电平: Relay_P02...输出高低电平 --控制GPIO3输出低电平: Relay_P03(0) --控制GPIO3输出高电平: Relay_P03(1) ?

84820
您找到你想要的搜索结果了吗?
是的
没有找到

2——GPIO子系统重要概念

然后就可以根据设置引脚方向(输入还是输出)、值──获得电平状态,写值──输出高低电平。 以前我们通过寄存器来操作GPIO引脚,即使LED驱动程序,对于不同的板子它的代码也完全不同。...普遍的用法是,用第1个cell来表示哪一个引脚,用第2个cell来表示有效电平GPIO_ACTIVE_HIGH : 高电平有效 GPIO_ACTIVE_LOW : 低电平有效 定义GPIO Controller...要操作一个引脚,首先要get引脚,然后设置方向,值、写值。...驱动程序中要包含头文件, #include // descriptor-based 或 #include ...比如在Linux开发过程中,先申请了GPIO,再申请内存;如果内存申请失败,那么在返回之前就需要先释放GPIO资源。

1.5K20

Linux笔记】LED驱动

与硬件无关的LED驱动 回顾hello驱动程序,我们的根据实际需求对其进行写字符串与字符串操作。这里我们当然也要根据实际来思考我们的LED驱动程序。...在STM32点灯的时候,一般输出低电平点灯,输出高电平灭灯。在嵌入Linux操作系统的情况下,我们自然也要想到有个写1/0的思想。类比我们上一篇的hello程序: ?...地址映射完成之后,我们可以直接通过指针来访问虚拟地址,如: *GPIO5_DR &= ~(1 << 3); /* GPIO5_IO03输出低电平 */ *GPIO5_DR |= (1 << 3);.../* GPIO5_IO03输出高电平 */ 这里简单介绍一下i.MX 6ULL的GPIO。...)); 然后就可以向STM32那样来操控GPIO寄存器,如: GPIO5->DR &= ~(1 << 3); /* GPIO5_IO03输出低电平 */ GPIO5->DR |= (1 << 3);

8.6K32

基于IMX6的GPIO驱动程序

Linux内核版本:linux-3.0.35 开发板: IMX6S MY-IMX6-EK200 编译环境:Ubuntu12 主要内容:IMX6S的IO驱动程序编写(ioctl) 实现功能..._IOC(dir,type,nr,size)是封装好的参数设置方法,在它的上一层,又封装了_IOW()和_IOR()进行IO的写和的cmd参数设置方法。代码截图如下: ?     ...通过__gpio_set_value()向底层写入1或0,当写入1时,IO输出高电平,当写入0时,IO输出低电平;当cmd参数为DS_CS1_R时,通过gpio_direction_input()设置IO...arg参数是驱动层和应用层交换的数据,例如当写GPIO,arg=1时,应用层给驱动层传递1,驱动层控制GPIO为高电平;当GPIO时,应用层通过驱动层传递过来的arg参数的值来判别GPIO的高低电平。...3、使用linux-arm-gcc交叉编译应用程序,将编译好的可执行文件拷贝到开发板即可运行。

1.8K80

Linux学习系列六:操作GPIO

1 引言 学习单片机的第一个例子通常都是点亮LED灯,对于Linux应用,我们也从LED入手,我就记得自己刚开始学的时候查了好多资料才勉强能控制一个灯亮,当时就感受到了Linux和单片机裸机有很大的差异...2.2.软件 1)需要在上一篇《Linux学习系列五:Nand Flash根文件系统制作》的基础上改动下Linux内核配置,生成新的970uimage并烧写到板子里。...2)先使用我们之前的交叉工具链去编译上述代码 arm-none-linux-gnueabi-gcc gpio_demo.c -o gpio_demo 将生成的gpio_demo放到板子里去运行,提示如下错误...3)使用和板子里自带文件系统匹配的交叉工具链来重新编译 arm-linux-gcc gpio_demo.c -o gpio_demo 这时它会报一个错误: ?...再次将gpio_demo放到板子上,运行,就不再报错了,可以看到LED D3灯在不断的闪烁。 5 结束语 本篇为大家介绍了LinuxGPIO的使用,同时也穿插着介绍shell脚本的些许知识。

3.1K20

STM32通信模拟 I2C

换言之,SCL为高电平时表示有效数据,SDA为高电平表示“1”,低电平表示“0”;SCL为低电平时表示无效数据,此时SDA会进行电平切换,为下次数据表示做准备。...开始信号和结束信号 I²C起始信号(S):当SCL高电平时,SDA由高电平向低电平转换; I²C停止信号(P):当SCL高电平时,SDA由低电平向高电平转换; 应答信号 I²C每次传输的...AT24C02的容量为2K,对应上图中的第一行,高四位固定为“1010”,中间三位由A2、A1、A0引脚的电平决定,比如A2~0引脚全接地,则值为“000”,最后的最低位为读写位,0代表写命令,1代表命令...AT24Cxx AT24Cxx支持当前地址模式、随机地址模式和顺序模式。...19.3.2 软件设计讲解 GPIO选择与接口定义 首先定义SCL和SDA引脚,引脚的高低电平宏定义,如代码段 19.3.1 所示。

81210

【深度】韦东山:GPIO和Pinctrl子系统的使用

然后就可以根据设置引脚方向(输入还是输出)、值──获得电平状态,写值──输出高低电平。 以前我们通过寄存器来操作GPIO引脚,即使LED驱动程序,对于不同的板子它的代码也完全不同。...普遍的用法是,用第1个cell来表示哪一个引脚,用第2个cell来表示有效电平GPIO_ACTIVE_HIGH : 高电平有效 GPIO_ACTIVE_LOW : 低电平有效 定义GPIO Controller...要操作一个引脚,首先要get引脚,然后设置方向,值、写值。...驱动程序中要包含头文件, #include // descriptor-based 或 #include // legacy...比如在Linux开发过程中,先申请了GPIO,再申请内存;如果内存申请失败,那么在返回之前就需要先释放GPIO资源。

8K74

Linux 驱动开发 gpio子系统 快速入门

点击查看大图 gpio 的作用: 作为输入功能时,支持引脚值; 作为输出功能时,支持输出高低电平; 部分 gpio 还负责接收中断; gpio 的使用依赖于 pinctrl: ?...完整的接口定义位于 linux/gpio/consumer.h,大约共有 70个 API。...; gpiod_set_value() 设置的值是逻辑值而非电平值,1 表示使能,0 表示不使能,由设备树里的 gpio mappings 里的 GPIO_ACTIVE_XXX 来决定哪个电平值是有效的...struct gpio_chip 比较庞大,但是我们只需要关注跟硬件联系比较紧密的成员就好: .set(),输出电平 .get(),获得电平 .get_direction(),获得方向 .direction_input...Linux-4.19 Documentation Linux Device Drivers Development / GPIO Controller Drivers

4.8K33

有关推挽输出、开漏输出、复用开漏输出、复用推挽输出以及上拉输入、下拉输入、浮空输入、模拟输入区别

以及上拉输入、下拉输入、浮空输入、模拟输入的区别 最近在看数据手册的时候,发现在Cortex-M3里,对于GPIO的配置种类有8种之多: (1)GPIO_Mode_AIN 模拟输入 (2)GPIO_Mode_IN_FLOATING...浮空输入 (3)GPIO_Mode_IPD 下拉输入 (4)GPIO_Mode_IPU 上拉输入 (5)GPIO_Mode_Out_OD 开漏输出 (6)GPIO_Mode_Out_PP 推挽输出...可以IO输入电平变化,实现C51的IO双向功能 (6)推挽输出_OUT_PP ——IO输出0-接GND, IO输出1 -接VCC,输入值是未知的 (7)复用功能的推挽输出_AF_PP ——片内外设功能...(8)复用功能的开漏输出_AF_OD——片内外设功能(TX1,MOSI,MISO.SCK.SS) STM32设置实例: (1)模拟I2C使用开漏输出_OUT_OD,接上拉电阻,能够正确输出0和1;值时先...GPIO_SetBits(GPIOB, GPIO_Pin_0);拉高,然后可以IO的值;使用GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0); (2)如果是无上拉电阻,

1.6K20
领券