exynos4412裸版控制led灯.
1.查看电路图.
2.查看4412手册.找到对应的寄存器.
3.配置对应的寄存器.

一.再开发板上我们的外部设备led,在核心板.所以我们需要打开核心板电路图.
  zshh@HP:~/work/arm/arm资料/exynos4412_lzy/schematic$ ls
LCD-HD700-1306.pdf   Tiny4412_1306_core_board_sch.pdf
LCD-S701-121212.pdf  Tiny4412SDK_1306_main_board_sch.pdf
  
  可以看到,再这个目录下有四份手册,
  第一份是高清lcd屏幕手册,
  第二个就是我们需要的核心板电路图.
  第三个是标准lcd屏幕手册.
  第四份主板电路图.
 
 (注解:使用evince命令加上&符号的意思是,再后台打开该文件.他不会占用当前的控制终端.)
 zshh@HP:~/work/arm/arm资料/exynos4412_lzy/schematic$ evince Tiny4412_1306_core_board_sch.pdf &
 它在这个手册p13,右上角的位置,由四个led灯的原理图.
 1.从原理图上看管脚的一端应该拉低,led灯亮.以为它的另一个管脚给定是VDD_SYS_3.3V
 2.那么我们再查找一下它链接4412的那个管脚是哪个,会在手册的第六页的右下方的位置.
   看到led1,led2,led3, led4,gpio为GPM4_0 --GPM4_3控制.

二: 这时,我们需要打开另外一个手册,路径如下.
 zshh@HP:~/work/arm/arm资料/exynos4412_lzy/datasheet/4412$ ls
 SEC_Exynos4412_Users+Manual_Ver.1.00.00_bac.pdf
 
 1.使用相同的方式打开SEC_Exynos4412_Users+Manual_Ver.1.00.00_bac.pdf手册.
   zshh@HP:~/work/arm/arm资料/exynos4412_lzy/datasheet/4412$ 
   evince SEC_Exynos4412_Users+Manual_Ver.1.00.00_bac.pdf 
 
 2.我们找到GPM4描述,p107   (p107的意思是107页)
GPM4CON 0x02E0 Port group GPM4 configuration register
GPM4DAT 0x02E4 Port group GPM4 data register 
GPM4PUD 0x02E8 Port group GPM4 pull-up/ pull-down register 
GPM4DRV 0x02EC Port group GPM4 drive strength control register 
GPM4CONPDN 0x02F0 Port group GPM4 power down mode configuration register 0x0000
GPM4PUDPDN 0x02F4 Port group GPM4 power down mode pull-up/ pull-down register
       
        我们需要配置控制寄存器.和数据寄存器.来完成led的亮灭.
        找到p284,中由GPM4CON寄存器的描述,该寄存器的每4位控制一个gpio的工作模式.
0-15位对应的是. gpm4con[0]-gpm4con[3]
如下是每个4位设置如下的一个值,
0x0 = Input                 如果开始4位设置为0的话,gpm40讲会被设置为输入模式.
0x1 = Output   
0x2 = CAM_I2C0_SCL
0x3 = CAM_GPIO[10]
0x4 to 0xE = Reserved
0xF = EXT_INT12[0]
        我们需要控制led等的亮灭,那么我们需要设置gpm4con为1,则是设置输出模式.

Base Address: 0x1100_0000
 Address = Base Address + 0x02E0, Reset Value = 0x0000_0000

这个是GPM4CON的基地址. 0x11000000+0x02E0

GPM4DAT
 Base Address: 0x1100_0000
 Address = Base Address + 0x02E4, Reset Value = 0x00
GPM4DAT[7:0] 其中每一位定义一个gpio的的数据位.

三.定义并配置gpio.
1.创建led.h.
/*************************************************************************
> File Name: led.c
> Author: zshh0604
> Mail: zshh0604@.com 
> Created Time: Thu 25 Dec 2014 08:12:41 PM
************************************************************************/
#ifndef __MY_LED_H
#define __MY_LED_H

extern void led_init(void);
extern void led_on(int no);
extern void led_off(int no);

#define GPM4CON(*((volatile unsigned int *) (0x11000000+0x02E0)))
#define GPM4DAT (*((volatile unsigned int *) (0x11000000+0x02E4)))

#endif

2.创建led.c文件.
/*************************************************************************
> File Name: led.c
> Author: zshh0604
> Mail: zshh0604@.com 
> Created Time: Thu 25 Dec 2014 08:12:41 PM
************************************************************************/

#include<common.h>
#include<led.h>

void led_init(void)
{
//清空0-15位.
GPM4CON &= ~0XFFFF;
GPM4CON |= 0x1111;    //将它的值设置为输出模式.
GPM4DAT |= 0xF;       //默认灯全部都是灭的.
}

void led_on(int no)
{
if(no<0 || no > 3)
{
printf("led_on param error\n"); 
return;
}
GPM4DAT &= ~(0x1 << no);
}

void led_off(int no)
{
if(no<0 || no > 3)
{
printf("led_on param error\n"); 
return;
}
GPM4DAT |= (0x1 << no);

}

参考网址:http://blog.csdn.net/shaohuazuo/article/details/42154697

Tiny4412开发板 LED灯的控制相关推荐

  1. tiny4412开发板LED灯驱动写法

    简介 led灯成本很低,操控简单,在嵌入式产品中不可或缺,可以作为调试标识,状态指示等等,高级用法还可以作为呼吸灯进一步增强其美观性.本章介绍只控制led灯的亮灭,tiny4412开发板有四个LED灯 ...

  2. 单片机学习(二)开发板LED灯的控制

    文章目录 开发板上LED灯相关的电路图 点灯 LED闪烁 LED流水灯 其他效果 灯光二进制计数器 进阶版流水灯 开发板上LED灯相关的电路图 这是P2相关7个引脚的电路图,在默认情况下它是直接接着V ...

  3. [ESP32/ESP8266专题笔记-6] ESP8266开发板-Micropython-WS2812灯的控制

    WS2812全彩LED简介 所谓基于WS2812B的LED灯珠,就是将一个控制芯片封装进全彩LED灯珠中,配合单独的通信协议可以实现对单个灯的全彩控制 WS2812 全彩LED灯珠封装实物图 WS28 ...

  4. 三,天猫精灵SDK驱动开发板LED

    1,启动流程: bootload->main(8710SDK)->aosmaintask->application->application_start 创建项目出现如下错误: ...

  5. Mysql rk3399_RK3399 友善NanoPC-T4开发板使用sysfs方法控制status LED状态灯-【申嵌视频-RK3399篇】...

    实验1:sysfs 操作方法控制NanoPC-T4开发板上LED灯 (status LED状态灯:GPIO0_B5/LED1_OUT) root@NanoPC-T4: cd /sys/class/le ...

  6. ONENET读取与控制麒麟座MINI开发板LED状态

    硬件 麒麟座MINI开发板V1.4 嵌入式软件 OneNET_Demo_ESP8266_EDP_Led 工程修改内容 led.c文件修改 函数LED_Init,mini开发板LED所在GPIO为PB6 ...

  7. S3C6410开发板LED驱动代码分析及测试代码分析

    在本文中,我们对S3C6410开发板LED驱动代码的实现过程进行分析,然后通过一个实例对LED进行控制.在本文的资源中包含了设备驱动的源码和测试的源码. 一.设备驱动源码分析 设备驱动主要实现了模块的 ...

  8. 瑞萨RA2L1开发板流水灯

    瑞萨RA2L1开发板流水灯 概述 硬件 开发环境 创建项目 配置GPIO 代码 调试结果演示 概述 正如编写普通程序中的第一个helloworld程序一样,单片机里第一个入门程序自然是点个灯.前几天得 ...

  9. tiny4412开发板实现uboot引导启动android 5.0.2系统

    1目的 实现uboot引导启动android 5.0.2系统. 2 现有环境 友善之臂tiny 4412开发板,superboot引导启动android5.0.2系统,内核版本为linux3.0.8. ...

最新文章

  1. LeetCode简单题之最后一块石头的重量
  2. SqlServer时间函数的使用例子整理
  3. linux编译安装网卡驱动详解(网卡丢包)
  4. python基础知识面试题-[面试] 1. 关于Python的基础知识
  5. 字典写入excel_使用Python扫描邮件/填写Excel表格实现办公自动化
  6. PMCAFF | 阿里PM的可用性测试秘籍:有理有据的用户体验优化
  7. 一个有第三方ebuild的网站
  8. 7.33oracle安装不了,在RedHat7.0下安装Oracle的经历
  9. 【渝粤题库】国家开放大学2021春2634推销策略与艺术题目
  10. Spring MVC源码——Servlet WebApplicationContext
  11. Boss直聘Python爬虫实战
  12. 解决kali linux找不到更新的问题
  13. 本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报“服务。...
  14. vue 打开摄像头保存图片
  15. 数字电子技术课程设计用单片机实现数字电子钟
  16. python短信验证码_Python如何实现手机验证码
  17. 王者荣耀android加ios好友,王者荣耀安卓和苹果能加好友吗 安卓和ios怎么加好友...
  18. Stegano之StegSolve、StegDetect、InvisibleSecrets
  19. Houdini `@pdg_output`找不到文件
  20. 模拟退火算法(SA)详解

热门文章

  1. uiiamgeview 设置圆角
  2. C# .net 命名规范
  3. 压缩归档文件审查工具p7zip-full
  4. Beaglebone Black教程使用SSH通过USB和因特网连接Beaglebone Black
  5. linux系统退出当前计算节点命令,Linux下60个系统命令详细解.doc
  6. mysql双数据源动态切换_Spring boot+Mybatis多数据源动态切换
  7. iOS无法引入头文件
  8. java话费清单_查询话费订单列表示例代码
  9. eva每一集片尾曲是谁唱的_【跪求】EVA 18集片尾曲的歌手名,考验大家的听力~...
  10. ubuntu 如何右上角显示键盘