zoukankan      html  css  js  c++  java
  • linuxGPIO

    本节主要开始学习Linux的第一课

    我们要做的事情是点亮一个LED

    1  看原理图确定一下这个LED是怎么接线。

    从原理图可以看出三个LED分别连接到GPB5,GPB6,GPB7.这三个I/O口为0的时候灯会亮。

    接下来怎么让这三个管脚输出1和0?带着这个问题我们继续思考。

    1 配置输出或者输入功能。

    2 设置输出高电频或者低电频

    从这两点可以看出我们需要完成这两个任务怎么配置和怎么设置。这个时候我们需要看官方提供的芯片手册。

    S3C2440里面有9组I/O口。每组里面有配置寄存器和数据寄存器。

    通过配额制寄存器来确定这些管脚是输出还是输入。

    首先我们来查看GPIO的控制寄存器,一般可以搜索GPIOCON这样可以看到GPIO的控制寄存器。

    当我们明白怎么配置GPIO之后怎么写程序呢。

    也就是GPBCON 和GPFDAT 怎么操作。

    他们有地址。

    汇编版本

    程序写完之后怎么编译呢。我们来看一下makefile

    这里的功能为首先生存elf格式的程序,然后把elf程序生存bin文件。最后烧写到我们的开发板。

    首先用gcc编译程序。

    条件 这个程序必须在Linux主机下。

    安装有gcc

    接下来就可以在Linux下编译

     cd 后面跟的是需要转换的路径

    make clean 清除编译结果。

    ls 查看当前路径下的文件清单。

    make 编译当前文件。

    ADS中和Linux中的步

    一个程序编译的时候会经过这几个步骤

    1 预处理(做一些语法分析)

    2 编译(把C语音文件编译成汇编文件)

    3 汇编(汇编文件转换成.o文件)

    4 链接(把多个.o合并成一个文件)

    2440有两种启动方式。

    一种是Nand  

    一种是Nor

    Nand启动方式如上图。

  • 相关阅读:
    121. Best Time to Buy and Sell Stock
    70. Climbing Stairs
    647. Palindromic Substrings
    609. Find Duplicate File in System
    583. Delete Operation for Two Strings
    556 Next Greater Element III
    553. Optimal Division
    539. Minimum Time Difference
    537. Complex Number Multiplication
    227. Basic Calculator II
  • 原文地址:https://www.cnblogs.com/xiangxiangyuan/p/5366410.html
Copyright © 2011-2022 走看看