mini2440还值得学吗
“mini2440还值得学吗”相关的资料有哪些?“mini2440还值得学吗”相关的范文有哪些?怎么写?下面是小编为您精心整理的“mini2440还值得学吗”相关范文大全或资料大全,欢迎大家分享。
一起学mini2440裸机开发(十)--mini2440外部中断实验 - 图文
一起学mini2440裸机开发(十)--mini2440外部中断实验
我今天一整天都在试着将TQ2440的那种处理中断的方法(即安装中断向量表)移植到MDK中的mini2440,但是一直没成功,这种方法一直没成功,后来又想,还是先从最简单的开始吧,就是不利用中断向量表,直接像利用51单片机那样的中断一样使用它,但是也没成功。考虑到程序跑飞的可能性,将程序利用MDK中的Download功能下载到了Nor Flash中去,竟然行了,想了想原因,明白是怎么回事了。我原来是利用jlink调试的方法,这种调试方式是直接将程序放到了SDRAM的0x3000 0000处,如果发生中断后,比如发生了普通中断IRQ,那么PC指针被强制设为0x0000 0018,而我的程序是放在了0x3000 0000处,在地址0x0000 0018处有什么我也不知道,这样子程序就跑飞了。
下面还是简单说一下我的外部中断实验,结合具体的实验,分析中断的响应过程,以及中断服务函数的编写。 实验功能
本实验实现的功能:mini2440开发板上有6个按键,将其中的前4个按键设为外部中断方式,当按下K1时,LED1亮;当按下K2时,LED2亮;当按下K3时,LED3亮;当按
一起学mini2440裸机开发(十)--mini2440外部中断实验 - 图文
一起学mini2440裸机开发(十)--mini2440外部中断实验
我今天一整天都在试着将TQ2440的那种处理中断的方法(即安装中断向量表)移植到MDK中的mini2440,但是一直没成功,这种方法一直没成功,后来又想,还是先从最简单的开始吧,就是不利用中断向量表,直接像利用51单片机那样的中断一样使用它,但是也没成功。考虑到程序跑飞的可能性,将程序利用MDK中的Download功能下载到了Nor Flash中去,竟然行了,想了想原因,明白是怎么回事了。我原来是利用jlink调试的方法,这种调试方式是直接将程序放到了SDRAM的0x3000 0000处,如果发生中断后,比如发生了普通中断IRQ,那么PC指针被强制设为0x0000 0018,而我的程序是放在了0x3000 0000处,在地址0x0000 0018处有什么我也不知道,这样子程序就跑飞了。
下面还是简单说一下我的外部中断实验,结合具体的实验,分析中断的响应过程,以及中断服务函数的编写。 实验功能
本实验实现的功能:mini2440开发板上有6个按键,将其中的前4个按键设为外部中断方式,当按下K1时,LED1亮;当按下K2时,LED2亮;当按下K3时,LED3亮;当按
友善之臂mini2440配置方案
5.3 建立交叉编译环境
在Linux 平台下,要为开发板编译内核,图形界面Qtopia,bootloader,还有其他一 些应用程序,均需要交叉编译工具链。
之前的系统,要使用不同的编译器版本才能正常编译各个部分,因此要在开发过程不
断切换设置,这十分不利于初学者使用,也降低了开发的效率;自从Linux-2.6.29 开始,我
们把交叉编译器统一为arm-linux-gcc-4.3.2,下面是它的安装设置步骤。
Step1:将光盘目录linux\\中的arm-linux-gcc-4.3.2.tgz 复制到某个目录下如tmp\\,然后
进入到该目录,执行解压命令:
#cd \\tmp
#tar xvzf arm-linux-gcc-4.3.2.tgz –C /
注意:C 后面有个空格,并且C 是大写的,它是英文单词“Change”的第一个字母, 在此是改变目录的意思。
执行该命令,将把arm-linux-gcc 安装到/usr/loca/arm/4.3.2 目录。 解压过程如图所示:
Step2:把编译器路径加入系统环境变量,运行命令 #gedit /root/.bashrc 编辑/root/.bashrc
文
件
,
在
最
后
一
行
export
PA
使用QEMU建立Mini2440的模拟环境
使用qemu 建立mini2440的模拟仿真环境 1. 首先下载qemu for mini2440
git clone git://repo.or.cz/qemu/mini2440.git qemu 如果感觉速度慢,直接打包下载
http://repo.or.cz/w/qemu/mini2440.git/snapshot/HEAD.tar.gz 解压后,今日源代码的主目录中, 1 # ./configure --target-list=arm-softmmu 2 # make -j4 2. 下载u-boot for mini2440 git clone git://repo.or.cz/w/u-boot-openmoko/mini2440.git uboot 或者打包下载
http://repo.or.cz/w/u-boot-openmoko/mini2440.git/snapshot/HEAD.tar.gz (注意 采用打包下载的时候这几个包的文件名可能相同,注意区分)解压后,配置Makefile文件,打开Makefile文件,CROSS_COMPILE变量赋值,即自己所使用的交叉编译工具链,比如我的是arm-none-linu
基于mini2440的led驱动编写的总结
基于mini2440的led驱动编写的总结(可以成为模板) 该驱动用到I/O常见的端口操作函数:
s3c2410_gpio_cfgpin和s3c2410_gpio_setpin。前一函数实现了设置端口的状态为输入/输出/其他,后一函数实现了端口输出高/低电平。主要谈一下前一个函数的一些重要语句。首先是原型:
s3c2410_gpio_cfgpin(unsigned int pin,unsigned int function),那么我们在驱动中怎么运用呢?比如:s3c2410_gpio_cfgpin
(S3C2410_GPB(5),S3C2410_GPB_OUTPUT),那么里面两个函数是怎么操作的?请看下面的这几个定义:
1、#define S3C2410_GPB(_nr)
(S3C2410_GPIO_B_START+(_nr)) //定义在arch/arm/mach-s3c2410/include/mach/gpio-nrs.h 2、enum s3c_gpio_number{
S3C2410_GPIO_A_START = 0,
S3C2410_GPIO_B_START
=S3C2410_GPIO_NEXT(S3C2410_GPIO_A), ...
linux-2.6.32.2内核在mini2440上移植
移植环境(红色粗字体字为修改后内容,蓝色粗体字为特别注意内容)
3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-linux-gnueabi-gcc v4.5.1。 4,开发板:mini2440,2M nor flash,256M nand flash。 5,u-boot版本:u-boot-2009.08 6,linux 版本:linux-2.6.32.2 7,参考文章:
【1】嵌入式linux应用开发完全手册,韦东山,编著。
【2】http://blogold.chinaunix.net/u3/101649/showart_2276906.html 【3】Mini2440 之Linux 移植开发实战指南 1.1,构建自主开发环境
我们在进行u-boot移植时,在u-boot-2009.08在mini2440上的移植(六)---增加引导内核功能提到过机器码(MACH_TYPE),在引导测试时,为了便于测试,使用的是友善官方移植好的linux内核。现在我们将从这里着手,逐步开始linux内核的移植。 【1】下载并解压内核源码
在命令行终端中可以通过下列方式下载,当然用其它下载工具下载
[root@localhost
嵌入式Linux之我行 mini2440按键驱动
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。
? 共享资源,欢迎转载:http://hbhuanggang.cublog.cn
一、开发环境
? 主 机:VMWare--Fedora 9
? 开发板:Mini2440--64MB Nand, Kernel:2.6.30.4 ? 编译器:arm-linux-gcc-4.3.2
二、实现步骤
1. 硬件原理图分析。由原理图可知每个按键所用到的外部中断分别是EINT8、EINT11、EINT13、EINT14、EINT15、EINT19,所对应的IO口分别是GPG0、GPG3、GPG5、GPG6、GPG7、
GPG11。再由按键的接口电路可知,当按键按下时按键接通,中断线上原有的VDD33V高电平被拉低,从而触发中断的产生。
2. 开始编写合适mini2440的按键驱动(含去抖动功能),文件名:my2440_buttons.c
1)按键驱动基本框架。这里我就指定主设备号为232,简单的注册为字符设备,另定义了一个结构体把按键要用到的资源组织起来
#include
Linux-2.6.32.2内核在mini2440上的移植(四)
Linux-2.6.32.2内核在mini2440上的移植(四)---根文件系统制作(2)yaffs
移植环境(红色粗字体字为修改后内容,蓝色粗体字为特别注意内容) 1,主机环境:VMare下CentOS 5.5 ,1G内存。 2,集成开发环境:Elipse IDE
3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-linux-gnueabi-gcc v4.5.1。 4,开发板:mini2440,2M nor flash,128M nand flash。 5,u-boot版本:u-boot-2009.08 6,linux 版本:linux-2.6.32.2 7,参考文章:
嵌入式linux应用开发完全手册,韦东山,编著。 Mini2440 之Linux 移植开发实战指南
http://linux.chinaunix.net/techdoc/system/2009/08/24/1131864.shtml 接上篇,问题的解决
解题思路:用tar 压缩我自己做的rootfs根文件系统打包, 这个系统是可以启动到NFS的,所以东西是全的。然后用nand flash 工具将nand flash的mtdblock3分区格式化
基于busybox制作mini2440根文件系统及使用nfs挂载 - 图文
常见的文件系统有yaffs2, jffs2,他们是适用于根文件系统镜像存在于NAND Flash上的情况。而传统的Linux EXT2/EXT3文件系统格式适用于传统的block设备,比如SD卡或者硬盘。
cramfs同时适用于以上两种情况。其不管采用哪种格式,内核都必须支持它,这是根文件系统正确挂载的前提条件。其内核支持它是指:在对内核进行编译的时候必须加入对相应文件系统的支持。
由于在内核没有加入对yaffs2的支持,因此在最后根据mkyaffs2image制作yaffs2类型的根文件系统,在加载之前,必须要对linux内核进行打yaffs2的补丁。将yaffs文件系统编译进内核。之后在启动linux内核时候才能识别yaffs2文件系统。
我在自己的mini2440开发板上面通过nfs来加载制作好的\根文件系统\,这里的\根文件系统\指的是:没有经过像mkyaffs2image工具转化的原始的类linux目录结构的文件。其文件包括Linux启动时所必须的目录和关键性的文件。nfs便于加载及验证我们制作的文件系统的正确性。其加载时文件系统不用读写flash。
*******************************第一步:下载busy
大学教育值得吗?英语作文 - -Is college education worth it
Is college education worth it?
As we all know, many parents send their children to college in order to make them take a good life. Because they believe the truth that knowledge can change one’s life. But many fresh college graduates are finding that it becomes increasingly difficult to find jobs. Their average salaries are falling below those of migrant workers, in some parts. So many people think that knowledge is no longer enough to change lives in today’s China. But in my opinion, temporary problems in the job market don