科伟奇论坛 - [简约版本]
献给ARM初学者 - Power By team board
标题: 献给ARM初学者 -
[楼主] / 用户名:julia
发布时间:2009/11/28 11:58:41 / 查看 1
ARM简介与编程 
 
 
1.ARM简介(摘录) 

  ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
  ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。
  目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。
  ARM架构是面向低预算市场设计的第一款RISC微处理器。
  2.产品介绍
  ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。
   ①CPU内核
   --ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。
  -- ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。
  --ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。
  ②体系扩展
  -- Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。
  ③嵌入式ICE调试
  由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。
  ④微处理器
  --ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。
   --ARM940T、920T系列:低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。
  --StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。
  --ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC)。

Windows CE的Pocket PC只支持ARMWindows CE可支持多种嵌入式处理器,但基于Windows CE的Pocket PC则只支持ARM一种。微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比较好的选择。由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。

2. ARM芯片CL-PS7111主要特点
 
电平2.7v/3.3v.相对应CPU工作频率13MHz/18MHz. 13MHz位节电模式, 性能相当于33MHz Inter 486 PC
ARM710A内核
ARM7 CPU 
8K 4向缓存(cache) 
MMU 带有64入口TLB(Transition Look-aside Buffer) 
DRAM控制器
支持16位和32位DRAM 
ROM/SRAM/Flash Memory 控制
可译码4,5或6个独立的256M存储空间段 
每个存储段支持8位,16位和32位操作,并支持分页模式 
可编程ROM/SRAM/Flash Memory 
支持两个低功耗CL-PS6700 PC卡(PCMCIA)控制器
2K 片内 SRAM用于程序快速执行
片内Boot ROM (128Byte)
两个同步串行接口
支持SPI,或Microwire2兼容 
音频解码器(Audio Codec) 
27位通用接口GPIO(general-purpose I/O port)
3个8位和1个3位GPIO port 
支持键盘阵列扫描(Scanning keyboard matrix) 
两个异步串口 UARTs
支持高达115.2K 波特率 
内有两个接收发送(TX,RX) 16Bytes FIFOs缓冲 
支持MODEM控制信号 
DC-to-DC转换器接口
提供两个96KHz时钟输出,通过编程duty ratio(1/16---15/16)操作 
LCD控制器
直接信号扫描板接口,单色LCD 
面板的大小可编程从16到1024个像素,16个像素为一个单位 
视频帧大小可编程到128K byte 
每个像素点的位数可编程1,2,4位 
计时器和实时时钟
两个16位计时器(Timer counter)和一个32位实时时钟(RTC) 
 
3. 调试工具及调试方法
ARM Project Manager (APM) include ARM Debuger: 这个工具由ARM提供主要是开发程序, 编程调试ARM芯片, 有相当不错的开发环境和远端调试功能, 支持汇编和C. 它带有一个ARM自己的嵌入式操作系统ARM Angel, 用户可以在它的上面开发自己的嵌入式软件, 不过这个操作系统不是实时多任务的. 
通过计算机串口与处理器UART相连,设置计算机的超级终端 ( Hyper Terminal ), 通过超级终端察看硬件情况(寄存器设置,数据等)和程序运行情况,当然程序重要加入向UART送出数据的指令, 用Beep报警也是经常用的. 这种调试方法是用于底层调试硬件,找出硬件存在的问题. 
VxWorks 在Shell 不能正常运行前,也是采取这种方法来调试程序,不过一般不是硬件问题,而是BSP中存在的问题,需要根据硬件,修改BSP. 
需要说明的是:上述方法是在没有硬件仿真器的情况下采用的,仿真器是底层调试硬件程序最好,最简便直观的办法。
 
4. ARM7 编程要点及示例 
ARM编程可参考程序示例 ARM_Boot Flash ROM驱动 
VxWorks image 装入ARM的过程: 
ARM7 有两种运行模式, Boot 模式和 Normal 模式, Boot模式主要是把程序装入(down load 或load )Flash ROM中用的, Normal模式是一般运行程序用的.
ARM7 Boot 模式时, Flash 的地址是0x70000000片选型号是CS0 (Normal模式下,Flash地址为0x00000000)
ARM7内部有128byte的BootROM和2K的SRAM,当需要Download VxWorks image时,ARM启动采用Boot方式启动运行存在128byte BootROM中的程序初始化ARM内部的COM口,从COM口接受数据到2K的SRAM,这2K程序是用来真正Load VxWorks的,2K程序Load完毕后系统自动跳转到这2K程序执行,它的作用是再次初始化内部的COM口,通过COM口接受VxWorks到DRAM,然后由DRAM写入FLASH。在主板2K SRAM运行的Boot Load程序执行过程,可参看程序示例中ARM Boot Load程序

写入完毕后,切换到Normal模式重新启动系统,系统自动跳到FLASH 0X00000000开始运行VXWORKS。 
用PC机上的COM1与ARM内部的UART1(COM)通信来Download VxWorks。

主要管脚定义 
32条数据线: D0-------D31
28条地址线: A0-------A27 little endian 定义, 相对应数据排列 0 1 2 3 4 5 6--------27
6条片选信号脚: CS0-------CS5, 其实作用相当于地址线 A28------A31
4个8位的PORT口: PORT A, PORT B , PORT D主要用于外围芯片信号的控制. PORT E有双作用.
例如 PORT A 控制键盘的行信号, PORT B 用于RS232, PORT D 用于控制MODEM, FPGA..
外部中断信号EINT, EXTFIQ. 
编程时要根据主板原理图和硬件手册进行. 
看硬件图纸, 该芯片和CPU的那些管脚连结. 特别是 PORT 口和片选线. 
查CPU手册, 得到PORT 口和该片选的硬件地址. 
编程: 用PORT口直接对芯片操作,如开,关,RESET等, 用片选地址和芯片内地址结合对该外围芯片操作. 
  
Exception vectors, 中断向量表及中断分配 

Vector 地址 Exception
Exception Mode Priority(1=High) 
0x0 Reset
Svc 1 
0x4 Undefined Instruction
Undef 6 
0x8 Software Interrupt
Svc 6 
0xC Prefetch Abort
Abort 5 
0x10 Data Abort
Abort 2 
0x14 Reserved
Not applicable Not applicable 
0x18 Interrupt (IRQ)
irq 4 
0x1C Fast Interrupt (FIQ)
Fiq 3 
 
这个向量表必须要放置在系统地址0x00000000 (一般是逻辑地址, 即经过MMU映射后的地址)处.
一般是在这些地址上放跳转指令 BL, 跳到相应的地址空间执行相应的程序.
如系统执行从0x00000000 Reset开始, Reset 跳转到某一地址开始运行操作系统.
 
程序示例,中断向量表 (ARM asm):
 
__VectorStart  Start of ARM processor vectors
LDR pc,ResetV  00 - Reset
LDR pc,UndefV  04 - Undefined instructions
LDR pc,SWIV  08 - SWI instructions
LDR pc,PAbortV  0C - Instruction fetch aborts
LDR pc,DAbortV  10 - Data access aborts
LDR pc,UnusedV  14 - Reserved (was address exception)
LDR pc,IRQV  18 - IRQ interrupts
LDR pc,FIQV  1C - FIQ interrupts
 
 
中断号分配 (FIQ, IRQ)
中断类型 中断号 Name
说明
FIQ 0 外部中断 EXTFIQ 管脚 NEXT FIQ 
… … … … 
IRQ 5 外部中断 EINT1 管脚 NEINT1 
IRQ 6 外部中断 EINT2 管脚 NEINT2 
IRQ 7 外部中断 EINT3 管脚 NEINT3 
… … … … 
IRQ 12 内部中断 UTXINT1 UART1 TX FIFO 为空 
… … … … 
 
中断号也是寄存器INTMR和INTSR的位,所以在ARM中中断的编程要点是
看硬件图纸, 该外设和CPU的那一个管脚连结. 
查CPU手册, 得到中断号及INTMR,INTSR的地址. 
编程 
注: 如果不是写底层driver, 只是在系统上层编程(如VxWorks, Linux) 知道中断号即可.
程序示例(VxWorks): 
//登记中断号 5, 和相应的中断例程 ComISR.
intConnect ( ( VOIDFUNCPTR * ) 5, ComISR, 0 )  
//使能这中断
intEnable ( ( VOIDFUNCPTR * ) 5 );
……
ARM Interrupts: ARM processors implement fast and normal level of interrupt,signalled externally, synchronise interrupts before an exception is raised. A fast interrupt requst (FIQ) will desable subsequent normal and fast interrupt by setting the I and F bit in CPSR,and a normal interrup request(IRQ) will disable subsequent normal interrupt by setting I bit in CPSR.
 
计时器中断编程过程
ARM7一般内部有两个16位计时器(Timer counter)和一个32位实时时钟(RTC),计时器中断属于IRQ中断,这里以计时器1为例叙述一下中断的编程过程
设置interrup mask INTMR1寄存器 0x80000240 第8位TC1OI计时器1为使能. 在0x800000300 计时器 1 的数据寄存器TC1D写入指定数据,这样数据开始从这个给定的数开始递减计数,计数递减至 0 后,会产生一个溢出underflow IRQ中断请求,中断状态寄存器INTSR1 0x80000240 第8位TC1OI置位.系统会跳到中断向量表地址 0x00000018 处,执行相应的中断程序,中断程序通过判断中断的类型(判断中断状态寄存器的位),来执行相应的中断服务程序ISR. 中断状态寄存器标志位复位,计时器开始重新开始计时.

 
存储空间管理单元(MMU) 
物理地址映射 
重点在于片选地址CS的选取,另外MMU映射需要参考这个物理地址
 
ARM7 物理地址映射表
地址 内容
大小
备注
0xF000.0000 Unused 256Mbytes 
0xE000.0000 Unused 256Mbytes 
0xD000.0000 DRAM Bank 1 256Mbytes 
0xC000.0000 DRAM Bank 0 256Mbytes 外接DRAM 
0x8000.2000 Unused --1Gbytes 
0x8000.0000 内部寄存器地址 8Kbytes 主要的I/O和控制 
0x7000.0000 Boot ROM 128 bytes 片内,封有Boot程序 
0x6000.0000 On-chip SRAM 2 Kbytes 片内,存放Load程序 
0x5000.0000 PCMCIA-1(NCS[5]) 4*64 Mbytes 
0x4000.0000 PCMCIA-0(NCS[4]) 4*64 Mbytes 
0x3000.0000 外部扩展(NCS[3]) 256Mbytes 
0x2000.0000 外部扩展(NCS[2]) 256Mbytes 
0x1000.0000 ROM Bank 1(NCS[1]) 256Mbytes 
0x0000.0000 ROM Bank 0(NCS[0]) 256Mbytes 外接Flash ROM 
 
MMU 虚拟(逻辑)地址和物理地址的映射实例
Vxworks支持的ARM架构的处理器,一般是RAM的起始位置为0x0,而实际上ARM的物理地址0x0是ROM的起始地址,RAM在高位地址.这就需要系统在Boot过程中,执行MMU程序,重新映射RAM和ROM的地址.即RAM起始地址为0x0.
MMU主要有ARM7中协处理器coprocessor 15控制,coporocessor主要控制:
片内的MMU 
指令和数据缓存(IDC) 
Write Buffer(WB) 
MMU有两层页表(two-level page table)用来进行虚拟地址向物理地址转换,CP15定义16个寄存器,只有MRC和MCR指令才能对它们操作.
在VxWorks系统中,MMU表分成两部分:boot up table和final table.在文件ramAtHigh.h中定义.该表在文件romInit.s中初始化,语句为: 
BL _ramAtHigh_1(2)
MMU映射实例
虚拟(逻辑)地址(VxWorks系统) 硬件物理地址
RAM 首地址 0x0000.0000 
Low Address 0x0000.1000 
High Address 0x0060.0000 
ROM   0x0100.0000 
 
 
 
其他的地址逻辑地址和物理地址映射地址不变 
0x8000.0000 内部寄存器 
.................. 
................. 
相同的颜色映射对应的地址
 
 
 
 
 
 
ROM 0x0000.0000 VxWorks image和文件系统 
RAM 首地址 0xC000.0000 存放LCD,MMU表等 
0xC004.0000 中断向量表等 
0xC004.1000 VxWorks运行位置 
0xC064.0000 VxWorks从ROM解压后Copy的位置 
其他的地址映射地址不变 
0x8000.0000 内部寄存器 
.............. 
..............

Linux初学之学习方向和方法浅谈
由于本人是做Linux培训的,所以对于初学Linux系统的朋友接触的比较多,对于初学Linux时遇到的问题了解的也够深刻,以下言论有不周到的地方望朋友们指出:
首先说明希望学Linux的朋友能够忘记Windows2000,最起码忘记Windows下的盘符、应用程序等基础的东西,其次要深刻明白Linux和Windows是2个不同的系统平台,可以去对比着学习,但不要直接拿Windows那套东西直接套用到Linux学习中。
一、桌面系统
就是系统安装好后的视窗系统,在Windows下叫Windows,在Linux下叫 X Windows,其实只是名字不一样而已(看看红旗做的桌面,真是跟Windows要做象有多象,真 晕,这样虽然有助于Linux桌面的使用,但对于Linux系统的推广真是没什么好处)
很多初学Linux人的安装好Linux后,进入其 X Windows桌面,兴奋不已,以为大功告成,Linux自己会了,这种想法是很可怕的;如果我告诉你Linux的X Windows环境不是Linux 系统,它只是在Linux下面运行的应用程序(类似于在Windows下运行office2000),你是怎么想的?
Windows下的应用程序几乎是不能直接在Linux系统下安装和使用,学编程的应该明白,所以不要去找Windows工具盘安装你的RAR,QQ,realone等常用工具,你是装不上的。
你可以尝试去安装你硬件的最新驱动程序,安装Linux下的常用工具,做一些Linux简单的汉化,你就会理解经常在论坛里问这方面问题的朋友的困难了。
总之,学桌面,不是学Linux系统。
二、内核源代码学习
跟unix操作系统一样都是用C语言编写。
去买正版的Linux系统(不是很贵),会附带一张或者2张Linux源代码盘,Linux程序员从这里开始,是起点也是终点。
三、系统管理
也就是管理Linux系统环境:SHELL、图形、系统服务、硬件驱动等等。
系统管理Linux跟UNIX类似(是看了些Unix系统管理才这样说的),基本上都是通过命令----->配置文件----->脚本文件。
初学这建议从这里开始,不要一味去安装XWindows,这个X Windows环境只要你尽量保持经常使用,相信学会是自然而然的事情.(感觉那真实没什么好学的,只要计算机应用在1年以上的朋友,应该都能在下面操作吧)
四、应用开发
在Linux应用上,Linux确实跟它的竞争对手Windows相比还有一定的差距。不过在高端的应用上,Linux的市场是越来越大,如:
Linux内核开发:
----PDA个人掌上电脑;
----专用的网络设备;防火墙设备,VPN设备等是用Linux编写的,国产的,现在销售的十分不错;
----硬件驱动程序;
Linux网络编程:
----php编程,建立动态站点;
----jsp编程;
----perl,cgi编程;
Linux系统下数据库的开发:
----my sql中小型数据库系统;
----oracle数据库;
----DB2数据库,IBM数据库系统;
五、服务器领域
一说Linux,很多自然就想到了做服务器,但现在网络服务器方面,Linux的市场占有率确实是第一的;
Linux服务器领域:
----代理服务器,使用的是Linux的iptables功能;
----电影服务器,使用的是Linux的samba服务的功能,文件和打印共享服务器;
----游戏服务器,cs服务器,在Linux系统下使用cs的Linux版本建立的服务器;
----客户存档服务器,采用的Linux的ftp服务器,常用的有:wu-ftp,pro-ftp软件建立的
----www服务器,使用的是Linux下的apache服务器软件;
----ftp服务器,下载服务器,使用的是Linux下的wu-ftp,pro-ftp,vs-ftp软件;
----mail服务器,采用的是Linux下的sendmail,qmail软件;
----dns服务器,使用的是Linux下的bind软件;
----数据库服务器,使用的是mysql或者oracle软件;
----防火墙,软件防火墙服务器,使用的是Linux的iptables功能建立的;
----路由器,软路由器,使用的是Linux下的routed软件建立的;
----拨号服务器,vpn服务器等等;
六、系统集成
范围太广,内容太多。相信IBM等建立的Linux研发中心主要就是做这个的。
ARM的开发步骤
1. 做个最小系统板:如果你从没有做过ARM的开发,建议你一开始不要贪大求全,把所有的应用都做好,因为ARM的启动方式和dsp或单片机有所不同,往往会遇到各种问题,所以建议先布一个仅有Flash,SRAM或SDRAM、CPU、JTAG、和复位信号的小系统板,留出扩展接口。使最小系统能够正常运行,你的任务就完成了一半,好在ARM的外围接口基本都是标准接口,如果你已有这些硬件的布线经验,这对你来讲是一件很容易的事情。

2. 写启动代码,根据硬件地址先写一个能够启动的小代码,包括以下部分:
初始化端口,屏蔽中断,把程序拷贝到SRAM中;完成代码的重映射;配置中断句柄,连接到C语言入口。也许你看到给你的一些示例程序当中,bootloader会有很多东西,但是不要被这些复杂的程序所困扰,因为你不是做开发板的,你的任务就是做段小程序,让你的应用程序能够运行下去

3. 仔细研究你所用的芯片的资料,尽管ARM在内核上兼容,但每家芯片都有自己的特色,编写程序时必须考虑这些问题。尤其是女孩子,在这儿千万别有依赖心理,总想拿别人的示例程序修改,却越改越乱。

4. 多看一些操作系统程序,在ARM的应用开放源代码的程序很多,要想提高自己,就要多看别人的程序,linux,uc/os-II等等这些都是很好的原
码。

6.如果你是作硬件,每个厂家基本上都有针对该芯片的DEMO板原理图。先将原理图消化。这样你以后做设计时,对资源的分配心中有数。器件的DATSHEET一定要好好消化。

7.如果做软件最好对操作系统的机理要有所了解。当然这对软件工程师来说是小菜一碟。但如果是硬件出身的就有点费劲。 

问:做最小系统板是2层还是4层好?
答:只有AT91可以用两层板,其他的最少4层;44b0的地和电源处理好也可用两层板;

谈四层板和33欧电阻:
选用四层板不仅是电源和地的问题,高速数字电路对走线的阻抗有要求,二层板不好控制阻抗。33欧电阻一般加在驱动器端,也是起阻抗匹配作用的;布线时要先布数据地址线,和需要保证的高速线;
在高频的时候,PCB板上的走线都要看成传输线。传输线有其特征阻抗,学过传输线理论的都知道,当传输线上某处出现阻抗突变(不匹配)时,信号通过就会发生反射,反射对原信号造成干扰,严重时就会影响电路的正常工作。采用四层板时,通常外层走信号线,中间两层分别为电源和地平面,这样一方面隔离了两个信号层,更重要的是外层的走线与它们所靠近的平面形成称为“微带”(microstrip) 的传输线,它的阻抗比较固定,而且可以计算。对于两层板就比较难以做到这样。这种传输线阻抗主要于走线的宽度、到参考平面的距离、敷铜的厚度以及介电材料的特性有关,有许多现成的公式和程序可供计算。
33欧电阻通常串连放在驱动的一端(其实不一定33欧,从几欧到五、六十欧都有,视电路具体情况) ,其作用是与发送器的输出阻抗串连后与走线的阻抗匹配,使反射回来(假设解收端阻抗没有匹配) 的信号不会再次反射回去(吸收掉),这样接收端的信号就不会受到影响。接收端也可以作匹配,例如采用电阻并联,但在数字系统比较少用,因为比较麻烦,而且很多时候是一发多收,如地址总线,不如源端匹配易做。
这里梭说的高频,不一定是时钟频率很高的电路,是不是高频不止看频率,更重要是看信号的上升下降时间。通常可以用上升(或下降) 时间估计电路的频率,一般取上升时间倒数的一半,比如如果上升时间是1ns,那么它的倒数是1000MHz,也就是说在设计电路是要按500MHz的频带来考虑。有时候要故意减慢边缘时间,许多高速IC其驱动器的输出斜率是可调的
ARM开发详解全集[下载]
本书比较适合于开发者和初学者,非常有学习价值,如对ARM感兴趣的可以留下邮箱或给我发邮件,大家共同讨论学习,我的邮箱henry518@163.com.下面是《ARM开发详解》全文和本书介绍,本书共八章: 



第一章:简要介绍目前ARM微处理器的种类及主要结构特征。通过对本章的阅读,可使读者对ARM技术、ARM微处理器及应用有一个总体的认识。

第二章:介绍ARM编程模型的基本知识,包括寄存器的组织和ARM微处理器的工作模式,ARM体系结构中异常及处理等基本概念。通过本章的阅读,可使读者了解ARM编程模型的基本知识,为进一步的开发做准备。

第三章:详细介绍ARM体系的指令系统和寻址方式,着重介绍32位的ARM指令集。16 位的Thumb指令集为32位ARM指令集的一个子集,在了解了ARM指令集的基础上,就很容易理解Thumb指令。本章所介绍的内容适用于所有具有ARM7TDMI内核的ARM微处理器。

第四章:介绍ARM汇编语言程序设计的基本知识。通过阅读本章,读者可以掌握ARM汇编语言的设计方法。

第五章:本章是全书的重点,详细介绍基于S3C4510B的系统的设计全过程,包括存储器及外围芯片的选型,各单元电路的设计、调试等。通过对本章的阅读,具有一定系统设计知识的读者应该可以掌握基于S3C4510B的系统设计,同时由于ARM体系结构的一致性和系统外围电路的通用性,本章所描述的设计方法也同样适合于其他ARM芯片。

第六章:详细介绍基于S3C4510B的系统的各功能模块工作原理与应用编程示例,包括:通用I/O口、串行接口、定时器、中断控制器、GDMA控制器、MAC控制器等的工作原理与编程示例,Flash存储器的编程与擦除等。通过本章的阅读,可使读者了解S3C4510B各功能模块的编程方法,并在自己设计的系统中加以充分利用。

第七章:详细介绍嵌入式操作系统的基本概念、操作系统在S3C4510B上的编译、运行过程,以及在uClinux操作系统上的简单应用程序的设计。通过本章的阅读,可使读者了解uClinux操作系统及在S3C4510B的运行,并能进行进一步的应用程序的开发。

第八章:详细介绍ADS集成开发环境的使用方法,这也是进行应用程序开发的基本工具。

[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[ 点击下载 ]
[第2楼] / 用户名:nihao
发布时间:2018/9/11 16:13:29
北京私家侦探 上海搬家公司
« 首页1 »1/共1页
[查看原帖]
查看完整版本: [-- 科伟奇论坛 --] [-- top --]
Powered by TEAM 2.0.5 Release - ACC
Time 108 second(s),query: 8