编写mipsel mt7620 Led驱动(一)

本文详细阐述了如何在基于MIPS内核的系统中,通过读取原理图和查阅数据手册,确定GPIO引脚控制LED的操作流程,包括设置引脚模式、方向和数据输入输出等关键步骤。

1.看原理图中知芯片上66引脚控制一个LED

 

2.在Datasheet中找出GPIO pin

image

3.在ProgrammingGuid  System Contrl中找到GPIO控制寄存器地址:

image

 

4.控制GPIO的寄存器偏移地址是image,起始地址是image,但这个起始地址是物理地址,因此还要确定相应的虚拟地址(这个可以根据mips手册或者内核源代码去查到),本屌丝在内核源代码中查找到虚拟地址为:0xb0000000;(注下图为内核源代码rt_mmap.h中定义)

image

 

 

5.从分析

image中知道此寄存器地址的每一位控制着不同的pin脚的GPIO模式,那么本屌丝又去查看datasheet知:GPIO#68(即68引脚)对应GPIO控制寄存器的“RGMII2_GPIO_MODE”,如下图:

image

,因此查看”21. GPIOMODE: GPIO Purpose Select (offset: 0x0060)“知道该寄存器地址的第10位控制着”RGMII2_GPIO_MODE”,如下图:

image

从那么有以上1~5这五能够确定: 怎样设置pin:68 GPIO模式.

 

6.那么怎么把数据输送到pin68引脚呢?查看“ProgrammingGuid 中的PROGRAMMABLE I/O” image

  image知pin68对应的寄存器基地址Register Descriptions (base: 0x1000_0600)对应虚拟地址为 #define RALINK_PIO_BASE         0xB0000600,偏移地址0x70

查看image此寄存器地址对应的各位知:共32位每一位分别对应40~71引脚,那么68引脚对应(68-40)即28

image

image

7.分析知还需要设置68引脚的方向:image

image

 

8.通过以上1~7却定了:(1)怎么设置pin68引脚为GPIO MODE; (2)控制pin68的数据输入输出方向;(3)从哪个地址位输入数据到pin68

转载于:https://www.cnblogs.com/xuyh/p/3892190.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值