当前位置:文档之家› 基于ARM32位单片机的机器人设计毕业论文

基于ARM32位单片机的机器人设计毕业论文

基于ARM32位单片机的机器人设计毕业论文目录摘要 (2)Abstract (3)第一章引言 (4)第二章S3C44B0X控制器介绍 (6)2.1 S3C44B0X控制器管脚 (6)2.2 Samsung S3C44B0X介绍 (8)第三章ARM开发工具简介 (12)3.1 ARM开发工具综述 (12)3.2 ARM STD安装和应用 (13)第四章S3C44B0X部资源编程 (20)4.1 LED显示 (20)4.2键盘控制 (23)4.3 数码管显示 (24)4.4 中断控制 (25)第五章机器人的设计 (27)5.1硬件结构 (27)5.2软件设计 (31)5.3结论 (44)第六章展望 (45)参考文献第一章引言ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。

技术具有性能高、成本低和能耗省的特点。

适用于多种领域,比如嵌入控制、消费、教育类、多媒体、DSP和移动式应用等。

ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。

利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。

目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。

至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。

ARM架构是面向低预算市场设计的第一款RISC 微处理器。

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开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。

ARM微处理器的特点ARM微处理器的特点采用RISC架构的ARM微处理器一般具有如下特点:1、体积小、低功耗、低成本、高性能;2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;3、大量使用寄存器,指令执行速度更快;4、大多数数据操作都在寄存器中完成;5、寻址方式灵活简单,执行效率高;6、指令长度固定;。

ARM微处理器的应用领域到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域:1、工业控制领域:作为32的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。

2、无线通讯领域:目前已有超过85%的无线通讯设备采用了ARM技术,ARM以其高性能和低成本,在该领域的地位日益巩固。

3、网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。

此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP 的应用领域提出了挑战。

4、消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。

5、成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。

手机中的32位SIM智能卡也采用了ARM技术。

除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用。

ARM运用和机器人设计ARM作为一项刚刚发展起来的新技术,具有很强的发展力。

由于是新生技术,因此在高校中只有研究生才开设这门课程,或者研究生在做研究型工作。

而在本科生中,由于各种原因,至今还没有开设这门课程。

因此,选择这个题目,一方面是希望能够在本科的学习阶段学习这门新技术,另一方面也是为以后在本科生开设这门课程做准备——开发实验系统。

在现有的(实验室拥有的设备)机器人的设计中,用的是摩托罗拉公司的68HC12单片机来进行开发的。

因此该设计希望将S3C44B0X运用在机器人身上,利用S3C44B0X优势,结合开放源码的UC/OS- II操作系统,开发出性能更高、可靠性更好的机器人。

第二章S3C44B0X控制器介绍2.1 S3C44B0X控制器管脚om[1:0]输入: om[1:0]设置S3C44B0X在测试模式和确定nGCS0的总线宽度,逻辑电平在复位期间由这些管脚的上拉下拉电阻确定.ADDR[24:0]输出: 地址总线输出相应段的存储器地址.DATA[31:0]输入输出:数据总线,总线宽度可编程为8/16/32 位.nGCS[7:0]输出:芯片选择,当存储器地址在相应段的地址区域时被激活.存取周期和段尺寸可编程.nWE输出 :写允许信号,指示当前的总线周期为写周期.nWBE[3:0]输出: 写字节允许信号.nBE[3:0]输出:在使用SRAM情况下字节允许信号.nOE输出 :读允许信号,指示当前的总线周期为读周期.nXBREQ输入: nXBREQ 总线控制请求信号,允许另一个总线控制器请求控制本地总线,nXBACK 信号激活指示已经得到总线控制权。

nXBACK输出:总线应答信号。

nWAIT输入:nWAIT请求延长当前的总线周期,只要nWAIT为低,当前的总线周期不能完成。

ENDIAN输入:它确定数据类型是little endian还是big endian,逻辑电平在复位期间由该管脚的上拉下拉电阻确定.nRAS[1:0]输出:行地址选通信号。

nCAS[3:0]输出:列地址选通信号。

nSRAS输出:SDRAM行地址选通信号。

nSCAS输出:SDRAM列地址选通信号。

nSCS[1:0]输出:SDRAM芯片选择信号。

DQM[3:0]输出:SDRAM数据屏蔽信号。

SCLK输出:SDRAM时钟信号。

SCKE输出:SDRAM时钟允许信号。

VD[7:0]输出:LCD数据线,在驱动4位双扫描的LCD时,VD[3:0]为上部显示区数据,VD[7:4]为下部显示区数据。

VFRAME输出:LCD场信号,指示一帧的开始,在开始的第一行有效。

VM输出:VM极性变换信号,变化LCD行场扫描电压的极性,可以每帧或可编程多少个VLINE 信号打开。

VLINE输出:LCD行信号,在一行数据左移进LCD驱动器后有效。

VCLK输出:LCD点时钟信号,数据在VCLK的上升沿发送,在下降沿被LCD驱动器采样。

TOUT[4:0]输出:定时器输出信号。

TCLK输入:外部时钟信号输入。

EINT[7:0]输入:外部中断请求信号。

nXDREQ[1:0]输入:外部DMA请求信号。

nXDACK[1:0]输出:外部DMA应答信号。

RxD[1:0]输入:UART接收数据输入线。

TxD[1:0]输出:UART发送数据线。

nCTS[1:0]输入:UART清除发送输入信号。

nRTS[1:0]输出:UART请求发送输出信号。

IICSDA输入输出:IIC总线数据线。

IICSCL输入输出:IIC总线时钟线。

IISLRCK输入输出:IIS总线通道时钟选择信号线。

IISDO输出:IIS总线串行数据输出信号。

IISDI输入:IIS总线串行数据输入信号。

IISCLK输入输出:IIS总线串行时钟。

CODECLK输出:CODEC系统时钟。

SIORXD输入:SIO接收数据输入线。

SIOTXD输出:SIO发送数据线。

SIOCK输入输出:SIO时钟信号。

SIORDY输入输出:当SIO的DMA完成SIO操作时的握手信号。

AIN[7:0] : ADC模拟信号输入AREFT输入:ADC顶参考电压输入。

AREFB输入:ADC底参考电压输入。

AVCOM输入:ADC公共参考电压输入。

P[70:0]输入输出:通用I/O口(一些口只有输出模式)。

nRESET:复位信号,nRESET挂起程序,放S3C44B0X进复位状态。

在电源打开已经稳定时,nRESET 必须保持低电平至少4个MCLK周期。

OM[3:2]输入:OM[3:2]确定时钟模式。

EXTCLK输入:当OM[3:2]选择外部时钟时的外部时钟输入信号线,不用时必须接高(3.3V). XTAL0模拟输入:系统时钟部振荡线路的晶体输入脚。

不用时必须接高(3.3V).EXTAL0模拟输出:系统时钟部振荡线路的晶体输出脚,它是XTAL0的反转输出信号。

相关主题