
嵌入式开发入门
文章平均质量分 59
ti_tantbx
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
搭建嵌入式开发环境Part I
设置minicom minicom-s->serial port setup ┌───────────────────────────────────────────── │ A - Serial Device : /dev/ttyS0 │ 注:如果是USB转串口,请改为/dev/ttyUS原创 2011-11-28 09:48:01 · 634 阅读 · 0 评论 -
中断实验(1)
首先,就我感觉控制终端还是一件相当复杂的事情,包括很多寄存器要熟悉,很多步骤。很难说开头在哪里。试验设备TQ2440,J-link, 注意,这里是2440。使用6410的同学可以参考思路,但6410中断的结构并不一样,详见6410手册!所以我还是对着代码说的比较好。 本次试验是以中断控制LED的亮灭。下图是中断示意图。首先简介一下arm的终端体系,原创 2011-11-30 09:18:28 · 856 阅读 · 0 评论 -
中断寄存器详解
对2440平台有效●SUBSRCPND寄存器:它用来表示INT_RXD0、INT_TXD0等中断是否发生(注:这些中断是某一大类中断中的子类),每位对应一个中断。当这些中断发生并且没有被INTSUBMSK寄存器屏蔽,则它们中的若干位将汇集出现在SRCPND寄存器的某一位上。要清除中断,往此寄存器中某位写1。●INTSUBMSK寄存器:与SUBSRCPND寄存器对应,它用原创 2011-11-30 12:41:49 · 4440 阅读 · 0 评论 -
中断实验(5)后续
最后一个部分,因为以上代码都是在linux下完成的,完成后我们需要将他们编译成可执行文件放到板子上测试,于是需要写一个Makefile文件来集中编译他们。interrupt.bin:head.S init.c interrupt.c main.c //包含的文件arm-linux-gcc -g -c -o head.o head.S原创 2011-11-30 09:31:54 · 828 阅读 · 0 评论 -
中断实验(4)
下面我们来看看interrupt.c这个文件,这个程序主要是处理中断和清除中断,处理中断说白了就是规定了我们按下每个按键后按什么规则处理他们。清除中断,如果我们不及时在中断处理完后清除他们,arm就会不断地执行中断,无法跳回正常的程序。下面是代码:#define INTOFFSET (*(volatile unsigned long *) 0x4A000014)#define E原创 2011-11-30 09:27:54 · 1063 阅读 · 0 评论 -
中断实验(3)
接上文,我们进入到init.c中#define GPBCON (*(volatile unsigned long *) 0x56000010)#define GPBDAT (*(volatile unsigned long *) 0x56000014)#define GPFCON (*(volatile unsigned long *) 0x56000050)#define GPFDA原创 2011-11-30 09:26:27 · 1004 阅读 · 0 评论 -
中断实验(2)
接上一篇文章,上面写到外部中断的3层屏蔽。由于我们今天用到的器材TQ2440,的4个按键K1~K4使用的是EINT0、EINT1、EINT2、EINT4,这四个中断,其中三个都只需要打开最后一级屏蔽。下面我们一边对着代码一边介绍怎样打开屏蔽。最后实现中断。首先,我们的程序包含4个需要自己编写的文件,head.S init.c interrupt.c main.c首先看he原创 2011-11-30 09:20:00 · 815 阅读 · 0 评论 -
CPSR_c是什么
众所周知,ARM每种工作模式除R0~R15共16个寄存器外,还有第17个寄存器CPSR,叫做 当前程序状态寄存器,CPSR中一些位被用于标识各种状态,一些位被用于标识当前出于什么工作模式其中cpsr_c代表的是这32位中的低8位,也就是控制位当你看到有些程序里这样写msr cpsr_c 0xd2 //msr原创 2011-11-28 10:39:45 · 11627 阅读 · 3 评论 -
写一个检测网线是否被拔出的守护进程(嵌入式设备上)
/* 博主注明: 编译环境: Ubuntu 10.4 编译器:arm-linux-gcc 硬件环境:i.mx28 嵌入式linux版本 2.6.15 介绍: 参考ethtool工具源代码,发现在对网卡的ioctl操原创 2011-11-28 14:57:40 · 4981 阅读 · 0 评论 -
搭建嵌入式开发环境Part II
1. cp /u-boot-1.1.6_smdk6410/tools/mkimage /usr/bin(mkimage在编译u-boot-bin时生成)---------------------------------------编译内核cd /urbetter-linux2.6.28-v1.0vim .cross_compile加入: /usr/local/arm/4原创 2011-11-28 10:20:21 · 974 阅读 · 0 评论 -
用查询方式,用按键控制led灯亮灭
本次试验条件,在TQ2440下,使用串口与电脑相连,串口软件DNW。鉴于前面已经写过一篇关于如何在裸板条件下点亮LED灯,这次介绍如何用查询方式,使用板子上的小按键k1~k4控制led1~4的亮灭。其主要目的还是防止自己不记得...首先查看电路图如下:由上图可知道K1对应的中断是EINT1K1~~EINT1K2~~EINT4K3~~EINT2K4~~原创 2011-11-28 16:38:44 · 7797 阅读 · 1 评论 -
ctags 和 cscope查找源代码中的函数
首先在代码目录里cscope -R 或是ctags -R 递归的建立一个函数符号表。如果是在cscope里,直接就进入搜索页面,直接按照提示进行搜索就可以了,找到目标之后按回车进入到文件中查看。如果想要搜索其它内容,退出当前正在看的文件,会回到搜索界面,再按tab跳转到下面输入文字。基本的cscope用法就是这样。ctags是生成一个标签保存函数信息,用ctags -R建立完函数表后,原创 2011-12-28 10:12:26 · 3405 阅读 · 0 评论