海思IO的使用

易百纳技术社区 2020-08-04 15:11:02 2486
这里以hi3536为例
  • 第一步是进行复用寄存器的设置,复用寄存器基地址为 0x120F_0000
    GPIO0_0 管脚的复用控制寄存器的偏移地址为0x148
    那麽GPIO0_0的复用地址为 0x120F_0000 + 0x148
    当为设值为00 时复用为GPIO0_0
    10 时复用为VOU_SLV_DATA14

  • 方向和数据寄存器对应的基地址(GPIO0): 0x1215_0000
    2.1 方向寄存器的偏移地址为 0x400 (页码13-126)
    GPIO 方向控制寄存器。bit[7:0]分别对应
    GPIO_DATA[7:0],各比特可独立控制
    0:输入
    1:输出
    注:这里要“或” 读改写的方式

2.2 数据寄存器的偏移地址为 0x000~0x3FC (页码13-127)
当 GPIO_DIR 相应的比特配置为输入时,有效读取的结果将返回管脚的值;当配置为
输出的时候,有效读取的结果将返回写入的值。
GPIO_DATA 寄存器利用 PADDR[9:2]实现了读写寄存器比特的屏蔽操作。该寄存器对
应 256 个地址空间。PADDR[9:2]分别对应 GPIO_DATA[7:0],当相应的 bit 为高时,则
可以对相应的位进行读写操作;反之,若对应 bit 为低则不能进行操作。例如:
若地址为 0x3FC(0b11_1111_1100),则对 GPIO_DATA[7:0]这 8bit 操作全部有效。
若地址为 0x200(0b10_0000_0000),则仅对 GPIO_DATA[7]的操作有效。
切记这里指的时地址, 然后对单个io拉高或拉低----就使用0xff和0x00

注:设值的时候好左移两位

本文链接:https://blog.csdn.net/weixin_40673765/article/details/100765970

相关推荐:

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 1 2 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
易百纳技术社区
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区