gpio_direction_output 和 gpio_set_value之间的关系

简介: gpio_direction_output 和 gpio_set_value之间的关系

在linux驱动中常常会碰到gpio_set_value(port_num,0/1)或gpio_direction_output (port_num,0/1) 这两者有什么关系呢
gpio_set_value(port_num,0/1) 一般只是在这个GPIO口的寄存器上写上某个值,至于这个端口是否设置为输出,它就管不了!
而gpio_direction_output (port_num,0/1),在某个GPIO口写上某个值之后,还会把这个端口设置为输出模式。
因此,有人也许就会建议,把gpio_set_value这个函数直接去掉不用,是否可以,显然是可以的。 但是为什么系统还要用呢, 我个人分析是, 系统开发人员在要结合这两者来使用,以便提高效率。 一般某个端口设置好了输入与输出模式后,最好不要经常变动。 首先要调用gpio_direction_output(),以后要设置高低电平时,直接使用gpio_set_value()就可以了,这样可以省却再 次调用设置输出模式的操作,从而提高运行效率!

目录
相关文章
|
8月前
|
芯片
USB Type-C引脚解析 && CC、DFP、UFP、DRP用途解析
USB Type-C引脚解析 && CC、DFP、UFP、DRP用途解析
|
前端开发 芯片
【芯片前端】关于set_input_delay/set_output_delay慢信号约束到快时钟的思考
【芯片前端】关于set_input_delay/set_output_delay慢信号约束到快时钟的思考
481 0
|
移动开发 C语言 芯片
RT-Thread PIN设备学习笔记
RT-Thread PIN设备学习笔记
205 0
PADS Logic原理图添加总线
原理图总线在连线很多的时候或者是连线信号可以归类的时候(比如存储器的数据信号),很适合使用,可以使原理图变得简洁,提高可读性,下面我们就看一下如何在原理图中添加总线。
602 0
|
芯片
Bust Mode(降压模式)和Boost Mode(升压模式)
升压与降压一般是指电源电路的工作模式,有些电源IC可以同时支持升压和降压模式。
468 0
PADS Logic原理图设计
双击打开PADS Logic,点击“文件”-->“新建”,或者直接点击新建按钮,如下图所示:
144 0
|
网络协议 BI 调度
NR PRACH(五) type1 RA(4-step)基本过程
无线通信,最重要的前提是建立接收端和发射端之间的时间同步。
|
传感器 人工智能 Linux
Jetson TX2 NX的GPIO引脚使用方式
Jetson TX2 NX的GPIO引脚使用方式
关于OLED移植出现Symbol oled_pow multiply defined
关于OLED移植出现Symbol oled_pow multiply defined
344 0
|
异构计算
Quartus中出现错误: Can't place multiple pins assigned to pin location Pin_101 (IOPAD_X53_Y21_N14)
Quartus中出现错误: Can't place multiple pins assigned to pin location Pin_101 (IOPAD_X53_Y21_N14)
564 0
Quartus中出现错误: Can't place multiple pins assigned to pin location Pin_101 (IOPAD_X53_Y21_N14)