嵌入式系统
文章平均质量分 68
Think_Logo
这个作者很懒,什么都没留下…
展开
-
AT91初始化代码手册中文翻译版
介绍由于多种原因基于ARM的AT91的大多数应用代码使用C语言编写。然而,启动顺序需要初始化ARM处理器和严重依赖于寄存器结构的关键设备和内存映射处理机,和存储器重映射操作。由于这个原因,C启动序列必须用汇编编写。这个应用笔记描述了一个AT91的C代码启动序列示例。他是使用ARM ADS1.1研发工具为AT91评估板写的基于C启动序列。更多的可用C启动序列示例见AT91库。在上电并且复位后C启动序转载 2010-01-21 18:56:00 · 860 阅读 · 0 评论 -
2440中IO端口PULL-UP寄存器如何使用
转载 2009-12-27 20:55:00 · 895 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华七
1.12.处理器相关资料是否丰富 如果该款处理器在市场上已经用得很广了,那么我们可以获取更多的相关资料,观察人家的产品是如何使用处理器的,也能在网络上找到不少的相关的设计资料以及相关技术主题,这样就进一步降低了技术门槛,确保了使用该处理器做产品可行性,减低了风险; 反之,如果是厂商全新推出的处理器,因为市场上还没有可以借鉴的产品,我们就只能从全英文的芯片手册开始阅读,了解这款转载 2009-12-27 19:33:00 · 632 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华六
1.9.电源的要求 在某些设计中方案中,电源根本不存在问题,对电源唯一的要求就是可以为电路正常供电;实际上,选择电源主要要考虑三个方面的问题:1)要注意设计方案中是否对电源的供电方式有所限制,例如,是否像大多数家用电器那样需要使用屋内墙上的电源插座供电,或是是使用USB接口供电2)看系统是否需要使用电池供电方式,如果这样,我们就要考虑选择那种对驱动电流要求不高的处理器,然后再为其选择合适的转载 2009-12-27 19:31:00 · 582 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华五
1.5.实时处理方面的考虑 实时处理是一个涉及范围很广的题目,其主要内容与系统的处理速度有密切联系,实时事件是嵌入式微处理器需要关注的主要任务。例如:处理器跟串口进行通信时,通常通过上层软件(为了保证实时性,进行任务切换的时间足够短),然后再占用处理器去执行从串口拿数据的任务,并且要保证处理器的速率比串口速率快,那么处理器可以以最快的速度反应并处理串口的相关的任务,这样就可以达到最大的实时性;转载 2009-12-27 19:29:00 · 597 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华一
我写这篇文章的目的,是用本人20年的嵌入式经验来告诉大家,没有明确的目标,成功将无从谈起。做任何事的第一步必须明确目标。 与日常生活中的大多数事务一样,设计一个嵌入式产品的过程也必须从确定目标开始,对生产的产品进行明确定义。对产品进行定义主要是对产品是什么和能有什么功能进行描述,其次是在我们的整个开发过程中,应该要撰写一些开发文档,大概的框架的如下:1)产品需求文档:描述产品的转载 2009-12-27 19:19:00 · 555 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华四
1.4.需要使用的中断数量中断的主要用途是向中央处理器通报当前发生的某类特殊事件,这类事件包括诸如定时器超时事件、硬件引发的事件等。需要强调的是,多数系统设计师经常过多地使用中断功能,实际上,中断的主要作用只是中断现行程序的执行,中断最适用于必须要求中央处理器立即提供服务的事件。在需要设计和使用中断的情况下,一定要首先确认实际需要的中断数量,然后必须考虑到系统内部占用的中断资源,如果需转载 2009-12-27 19:26:00 · 577 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华三
需要注意的是,由于许多处理器具有的局限性没有在处理器技术资料中给予足够的说明,因此一定要仔细阅读处理器的指标说明。例如,在阅读资料的过程中发现,该资料可能会说明其串行接口可以在最高波特率下工作,但仔细研究该处理器的指标数据时,可能会发现并非该串口接口的所有操作模式都可以在最大波特率下运行。深入了解并明确接口要求的方法:可以自己动手编写一些程序来对接口进行实际测试,以确认某种处理器是否可以满足应转载 2009-12-27 19:24:00 · 561 阅读 · 0 评论 -
(转)20年嵌入式领域开发经验精华二
2.处理器的选择1.1.需要使用的I/O管脚数量多数处理器都是使用内存和外部管脚来控制输入输出设备的,通常处理器都会有内置ROM和RAM的,如果内置的内存就已经满足需要,那么处理器就可以节省产生引用外部存储器信号的引脚,这样处理器可为输入输出提供较多的设备管脚(某些处理器支持外部RAM或ROM的使用,但对外部存储器进行访问时,处理器一般需要占用8条到10条I/O管脚)。还有,有些处理器转载 2009-12-27 19:22:00 · 721 阅读 · 0 评论 -
在操作ARM开发板时候如何正确的操作ADS
在操作ARM开发板时候如何正确的操作ADS1、ads是由arm公司提供的编译和调试环境,非常好,不容质疑!搞arm开发的人员,不能不用ads,例如要开发一个驱动,首先是在ads中编译、调试通过,才会加入操作系统中,这是开发过程。2、Ads中codewarria是编译环境,在这个环境中,应正确设置程序工作或调试的地址,这两个地址不一定同址,每次只能设置一种,除非它们相同。设置转载 2009-12-25 22:31:00 · 760 阅读 · 0 评论 -
ARM ADS中的AXD 调试经验集锦
1、如何设置AXD连接的Target。在菜单的Configure Target…选项中可以设置。一般选择MutiIce或者ARMUL两种。ARMUL是一种ARM的模拟器。一般的算法或者一些无需和硬件中断等设备打交道的程序都可以通过这个进行调试。使用上非常简单。我们一般上板子进行调试都是通过MutiICE来进行。在刚刚安装了系统的时候,菜单中没有MutiICE,需要我们手转载 2009-12-25 22:01:00 · 849 阅读 · 0 评论 -
ARM学习总结
学习ARM也有一定时间了,想想还是记点东西,要不以后就忘了.这是我的第一片,简简单单.但比较基础.1. ARM中一些常见英文缩写解释MSB:最高有效位;LSB:最低有效位;AHB:先进的高性能总线;VPB:连接片内外设功能的VLSI外设总线;EMC:外部存储器控制器;MAM:存储器加速模块;VIC:向量中断控制器;SPI:全双工串行接口;CAN:控制器局域网,一种串行通讯协议;PWM:转载 2009-12-25 23:58:00 · 1061 阅读 · 0 评论 -
ARM与嵌入式linux入门的建议
由于很多人总问这个问题,所以这里做一个总结文档供大家参考。这里必须先说明,以下的步骤都是针对Linux系统的,并不面向WinCE。也许你会注意到,现在做嵌入式的人中,做linux研究的人远比做WinCE的人多,很多产家提供的资料也是以linux为主。我一直很难理解,其实WinCE的界面比linux的界面好看多了,使用起来也很方便,更为重要的是,WinCE的开发和Windows下的开发基本一样,学起转载 2009-12-13 20:55:00 · 679 阅读 · 0 评论 -
基于ARM的硬件启动程序设计-初始化堆栈
ARM有7种运行状态,每一种状态的堆栈指针寄存器(SP)都是独立的。所以,对于程序中需要用的每一种处理器模式,都要给SP定义一个堆栈地址。流程为:修改状态寄存器内的状态位,使处理器切换到需要的模式,然后给SP赋值。需要注意的是:不要切换到User模式进行该模式下的堆栈设置,因为进入User模式后就不能再操作CPSR返回到其他模式了。先定义各种模式对应的CPSR寄存器M[4:0]的值,该值决转载 2009-12-30 21:40:00 · 1093 阅读 · 0 评论