查看: 3657|回复: 5

[其他] ioctl()函数的作用

[复制链接]

该用户从未签到

3

主题

22

帖子

0

新手上路

Rank: 1

积分
39
最后登录
1970-1-1
发表于 2012-2-9 14:37:37 | 显示全部楼层 |阅读模式
现在用Freescale mc56f8367的开发板
看一个例子里面有:
#define ioctl( Periph_id, command, param )  ioctl ## command ( Periph_id, param )
例如:ioctl(GPIO_E, GPIO_SETAS_INPUT, BIT_4 | BIT_7);     /* GPIO_E, pin #4 & #7 set as input */
我的问题是,在PE里面不是可以直接设置输入输出的嘛,为什么还要用这个ioctl()函数?
我知道答案 目前已有4人回答
回复

使用道具 举报

该用户从未签到

13

主题

128

帖子

0

新手上路

Rank: 1

积分
58
最后登录
1970-1-1
发表于 2012-2-9 15:25:56 | 显示全部楼层

回复:ioctl()函数的作用

在mqx  经常会用到ioctl (内部的驱动函数 像是这么理解
example:
ioctl(led_7,GPIO_IOCTL_WRITE_LOG0,NULL);
这句话的含义就是  让led_7  输出低电平  
在mqx里面都有定义  但是刚开始的话 比较难懂  像你刚才那个例子 相信库文件里卖弄都有宏定义的  你也不难看出
你的意思 可能是说 寄存器设置是吧   如果有包含寄存器的库文件 我想也是可以的  此外 有的定义是专门针对 demo板的    这个也是可以看出来的   回答的不是很好 不知道你懂没懂
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

22

帖子

0

新手上路

Rank: 1

积分
39
最后登录
1970-1-1
 楼主| 发表于 2012-2-9 16:05:35 | 显示全部楼层

回复:ioctl()函数的作用

我的意思是编程的时候一定要用这个函数嘛?可以在PE的component里面设置的啊
回复 支持 反对

使用道具 举报

该用户从未签到

13

主题

128

帖子

0

新手上路

Rank: 1

积分
58
最后登录
1970-1-1
发表于 2012-2-9 19:01:58 | 显示全部楼层

回复:ioctl()函数的作用

回复第 3 楼 于2012-02-09 08:05:35发表:
我的意思是编程的时候一定要用这个函数嘛?可以在PE的component里面设置的啊
 

pe 下我没试过 不是很了解  你可以试试嘛  都是试出来的 同样给别人分享经验了
回复 支持 反对

使用道具 举报

该用户从未签到

27

主题

418

帖子

0

新手上路

Rank: 1

积分
228
最后登录
1970-1-1
发表于 2012-2-9 20:22:34 | 显示全部楼层

回复:ioctl()函数的作用

不一定,这个宏定义提供了一个统一的,便于记忆的方法,看起来也比较直观,虽然要打的字比较多
回复 支持 反对

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-2-10 09:21:23 | 显示全部楼层

    RE:ioctl()函数的作用

    这个函数用起来方便,只需要输入对应的IO口就可以了。相对是简化了程序的代码。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 17:09 , Processed in 0.094631 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表