4412开发版led控制

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

一.再开发板上我们的外部设备led,在核心板.所以我们需要打开核心板电路图.
  [email protected]:~/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命令加上&符号的意思是,再后台打开该文件.他不会占用当前的控制终端.)
 [email protected]:~/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控制.

二: 这时,我们需要打开另外一个手册,路径如下.
 [email protected]:~/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手册.
   [email protected]:~/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: [email protected]
	    > 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: [email protected]
	    > 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);
	}

时间: 2024-11-09 00:16:32

4412开发版led控制的相关文章

迅为4412开发板平台-嵌入式开源平台

转载:http://www.topeetboard.com/ 4412核心板介绍 两种封装形式:Exynos4412有两种封装形式, 其中POP封装的芯片内含1GB内存, 所以不需要外扩DDR, 可大大节省 PCB 面积,功耗控制方面也更好,多用于手持设备当中: SCP 封装优点是内存扩展更灵活,生产工艺相对更容易控制. 4412POP 封装 长宽:5CM * 6CM,高度 1.5MM,320 个引脚(80 * 4): 板载 1GB 内存,电源管理: 和底板装配的时候注意“防呆箭头”. 4412

4412开发板疯狂大促销,团购火热进行中

特大喜讯:九鼎创展全新四核x4412开发板正值上市推广期,特拿出100套开发板进行团购疯狂大促销,仅此100套,卖完即恢复原价.团购QQ群:16073601 团购优惠价: x4412开发板+7寸高清电容屏[1024*600]=699元 x4412开发板+7寸高清电容屏[1024*600]+优质红外遥控器[提供源码]=699元 x4412开发板+7寸高清电容屏[1024*600]+优质红外遥控器[提供源码]+USB WIFI=699元 x4412开发板+7寸高清电容屏[1024*600]+优质红外

嵌入式学习-4412开发板学习-迅为4412开发板can测试技术分享

迅为CAN 测试 详情了解:http://topeetboard.com  更多了解:https://arm-board.taobao.com 本文档适用的范围 ① 硬件平台 :4412精英版以及全能版开发板.(4418/6818开发板以及imx6q开发板测试的道理是一样的可能细节有些不同,在这里我没有做实验,感兴趣的可以按照这个文档测试一下) ②软件平台 :Android4.0.Android4.4.QT.ubuntu 测试程序: 这个在网盘上有提供,另外我也会上传 一.硬件连接 can 通信

新手如何学习嵌入式开发板-迅为4412开发板

网站:http://www.topeetboard.com Q Q:2551456065 产品优势: 1. 涵盖当在嵌入式技术热点:Linux,Android,QT,Ubuntu系统 2. 专为iTOP-4412量身打造,手把手全视频讲义,让学习嵌入式ARM开发像单片机一样简单!3. 完善的售后支持:提供论坛.认证QQ. 当前ARM处理器参数对比: 4412开发板介绍: 1. iTOP-4412精英版:搭载三星Exynos四核处理器,配备1GB内存,4GB固态硬盘EMMC存储,兼具快速读取与超大

4412开发板Linux系统编程实战-字符设备控制

在 linux 驱动中字符驱动是必须掌握的,本章主要介绍字符设备应用的程序,无论是学习了后面的知识自己写的字符驱动,还是已有的字符驱动,都需要能够写一些简单的应用程序. 即使从事 linux 驱动的工作,linux 驱动写出来之后,也需要由驱动程序员编写简单的应用进行测试的. 另外,关于驱动部分,迅为电子有专门的驱动实验教程提供给大家学习,大家有了这些基础之后再去学习底层的知识就会很容易了. 在使用手册的第八章,大家可以看到这些 c 程序也是可以在 Android 下面运行的,只不过没有图形界面

4412开发板三星cortex-A9四核开发板友坚科技

UT4412BV03开发板介绍 4412开发板三星cortex-A9四核开发板友坚科技 友坚恒天科技urbetter.net专注于三星平台产品的研发,是三星在中国最具实力的方案公司.公司主打的三星平板电脑方案销量,连续多年稳居第一.公司定位于中高端产品的研发,具有多年的嵌入式产品研发经验:基于三星 A15-Exynos 5250.A9-Exynos 4412.A8-S5PV210.ARM11-S3C6410.ARM9-S3C2416等处理器,开发了系列化的产品,为客户提供了全面的产品选择及专业化

嵌入式开发-迅为4412开发板QT鼠标和触摸的问题解决方案

迅为4412开发板-QT鼠标和触摸的问题解决方案: 一. 背景 在使用迅为提供的QT4.7的时候,鼠标可以正常使用,有触摸但是触摸会出现问题.尤其是在左右滑动qt界面的时候,总是会出现往左滑动,画面急速往右走,然而往右滑动,画面急速的往左走. 在使用迅为提供的Qtopia4的时候,只能用触摸不能用鼠标. 二.解决办法 ① QT4.7系统 打开/bin/qt4 找到这句话: export QWS_MOUSE_PROTO='MouseMan:/dev/input/mice Tslib:/dev/in

【嵌入式4412开发板学习教程】Uboot教程之uboot基础概念和框架

[4412开发板教程]Uboot教程之uboot基础概念和框架 正在学习uboot,教程讲解的很详细,先上个笔记,视频上传到网盘后再补上...... 知识点: 1.操作系统分层的概念 Windows:bios→内核模式→用户模式→用户程序 linux:bootloader→内核→文件系统→用户程序 2.bootboader种类介绍 U-boot是最通用的bootboader.(210,4412等等) vivi 针对三星的ARM来定制2440上有用到 3.4412休眠问题 它可以直接跳过uboot

4412开发板TF卡制作uboot

转自:http://topeetboard.com 硬件:迅为iTop 4412精英版 & TF卡 软件:系统自带终端即可 首先,我们应该清楚TF/SD卡可以看作一张完全空白的"白纸",之所以有分区.分区格式的区别不过是在在这张"白纸"的某些特定位置写入了一些数据来指示分区.分区格式. 其次,我们还应该清楚,在TF/SD启动模式下,exynos 4412一上电,内部iROM会从TF/SD的第1个Block(第512个字节开始)读取8KB的数据到内部iRAM,