zoukankan      html  css  js  c++  java
  • 编写mipsel mt7620 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

  • 相关阅读:
    204. Count Primes (Integer)
    203. Remove Linked List Elements (List)
    202. Happy Number (INT)
    201. Bitwise AND of Numbers Range (Bit)
    200. Number of Islands (Graph)
    199. Binary Tree Right Side View (Tree, Stack)
    198. House Robber(Array; DP)
    191. Number of 1 Bits (Int; Bit)
    190. Reverse Bits (Int; Bit)
    189. Rotate Array(Array)
  • 原文地址:https://www.cnblogs.com/xuyh/p/3892190.html
Copyright © 2011-2022 走看看