这段时间一直想学习嵌入式程序设计。于是搞了一块mini2440的开发板,按照韦东山的《嵌入式Linux应用开发完全手册》,开始了我的嵌入式学习之路。
虽然网上关于mini2440的资料有一大堆,但是真正能够用得上的却不多。特别是友善最新版的mini2440上更换了新的NOR和NAND,针对这些硬件的开发资料却非常少。
我用的是友善之臂最新版mini2440,首先介绍开发板配置:
处理器:S3C2440A
SDRAM: EM63A165TS
NOR: SST39VF1601 (2M)
NAND: K9K8G08U0E (1G)
网卡: DM9000EP
开发环境:
华硕 R455L
64位Ubuntu
openjtag/JLink
本文将从基本配置开始,记录博主的学习过程。博主使用64位Ubuntu 14.04开发环境。
1. 安装交叉编译工具链
可参照tekkamanninja大神的方法制作自己的交叉编译工具链。
这里我就偷懒了,直接使用友善提供的,可点这里下载。
压缩包直接解压即可安装到/opt/FriendlyARM/toolschain/4.4.3目录中。
修改.bashrc文件,增加
PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin
即可。
2. 配置TFTP和NFS服务
参照博文http://www.cnblogs.com/shenhaocn/archive/2011/03/13/1983042.html
3. 安装和配置minicom或Ckermit
参照博文http://blog.csdn.net/charistain_huang/article/details/5882127
经过上述过程,开发环境基本搭建完毕。从下一篇开始,将介绍u-boot移植过程。
关键字:友善之臂 mini2440 开发板架构 搭建开发环境
引用地址:
友善之臂最新版mini2440学习笔记——开发板架构和搭建开发环
推荐阅读最新更新时间:2024-11-03 13:42
关于mini2440的一个裸机程序——LED与按键中断
span style= font-size:18px; deep= 5 /* *File : main.c *Description : When you press the key, * the LED will show the key_value of key by the binary * and produce the buzzer. *Author : Cong *Copyright : Cong * * *History *--------------------- *Rev
[单片机]
linux2.6.32.2移植到ARM平台(mini2440)
1、指定交叉编译变量 即修改顶层Makefile文件,vim打开,修改如下: 原 export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= $(SUBARCH) CROSS_COMPILE ?= 改为 export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= arm //指定目标平台为ARM CROSS_COMPILE ?= arm-linux- //指定交叉编译器,此处是系统默认的,若指定其他的需要把路径完整列出 修改完毕之后,先编译一下,看是否能通过, # make s3c2410_defconfig # make 2、
[单片机]
mini2440烧写裸机程序(linux+supervivi+dnw)
一、编写源程序(init.S、testledC.lds、testledC.c、Makefile) @****************************************************************************** @ File:init.S @ 功能:通过它转入C程序 @****************************************************************************** .text .global _start _start: ldr r0, =0x53000000 @ WATCHDOG寄存器地址
[单片机]
友善之臂Micro2440下的Embedded Linux的定时reboot
因为在实习公司里做的ARM服务器用到定时重启,于是今天就查了一下相关的资料。发现没有针对我目前的开发平台的具体方法,于是自己研究出来一套方法,供大家互相学习。 友善之臂Micro2440下的Embedded Linux是自带crontab这个命令的,但是默认没有开启。大家可以参照以下的命令,实现定时重启功能。 #config reboot time 1. mkdir -p /var/spool/cron/crontabs/ 2. cp /sdcard/bin/root /var/spool/cron/crontabs/ 3. crond start 4. crontab -l 命令1:创建一个目录,绝对路径为/var/spoo
[单片机]
建立交叉编译环境——mini2440开发板
Ubuntu 64位 直接安装arm-linux-gcc-4.4.3 会出错 ~$ sudo apt-get install ia32-libs 装一些32位的库 ``` 开发环境:Fedora9 32位 注:vmbox桥接网络时 需要设置静态IP,否则无法联网 第一步:安装arm-linux-gcc-4.4.3 将光盘目录 linux中的 arm-linux-gcc-4.4.3.tgz 复制到某个目录下如 tmp,然后 进入到该目录,执行解压命令: #cd /tmp tar -xzvf arm-linux-gcc-4.4.3.tar.gz -C / 注意:C 后面有个空格,并且 C 是大写的,它是英文单词
[单片机]
mini2440驱动分析之PWM
1. pwm驱动也是作为杂项设备注册的,同样为了防止并发造成的竞态,有个信号量保护。模块的初始化函数 static int __init dev_init(void) { int ret; init_MUTEX(&lock); ret = misc_register(&misc); printk (DEVICE_NAME tinitializedn ); return ret; } 这个函数就是初始化了一个信号量,然后调用misc_register注册到杂项设备 2. 这个pwm驱动的基本功能体现在ioctl方法上 static int s3c24xx_pwm_ioctl(struct i
[单片机]
Linux下arm裸机开发环境搭建与实例
折腾了很长时间,总算是弄明白怎么在linux编译运行arm裸机程序了。编译运行arm裸机程序可以考虑用arm工具链搭建编译环境,由minicom和dnw来下载程序,至于调试,还没有去耐心研究,着急来这里先备份一下,免得时间久了,忘记怎么回事。 首先是arm工具链,arm工具链的编译我就不写了,一方面很麻烦,另一方面是这方面的资料网上已经有很多了,我就不在这里多言浪费大家时间了。我这里有自己编译的arm工具链,当然,用网上现成的也不是不可以,但是最好是自己熟悉过程,免得必要的时候不会从源码配置。我将工具链上传到空间,如果需要,尽管拿去,链接地址为,使用说明看资源备注: http://download.csdn.net/detail/
[单片机]
linux2.6.32.2 mini2440平台移植-- ADC 驱动移植
1.2.1 关于 S3C2440 的 ADC 和触摸屏接口 Linux-2.6.32.2 内核并没有提供支持 S3C2440 的 ADC 驱动程序,因此我们自行设计了一个,这个驱动比较简单,属于字符设备,。在 S3C2440 芯片中,AD 输入和触摸屏接口使用共同的 A/D 转换器,见S3C2440芯片手册第 16 章节,如图。 1.2.2 在内核中添加 ADC 驱动 在 S3C2440 芯片中,AD 输入和触摸屏接口使用共同的 A/D 转换器,因此,ADC 驱动和触摸屏驱动若想共存,就必须解决共享 A/D 转换器 资源这个问 题,因此在 ADC 驱动程序中声明了一个全局的 ADC_LOCK 信号量。 (1)将
[单片机]