ImageVerifierCode 换一换
格式:DOCX , 页数:62 ,大小:1.24MB ,
资源ID:11484769      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11484769.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业设计基于ARM32位单片机的机器人设计.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

毕业设计基于ARM32位单片机的机器人设计.docx

1、毕业设计基于ARM32位单片机的机器人设计摘要 2Abstract3第一章 引言 4第二章 S3C44B0X控制器介绍62.1 S3C44B0X控制器管脚62.2 Samsung S3C44B0X介绍8第三章 ARM开发工具简介 123.1 ARM开发工具综述123.2 ARM STD安装和应用13第四章 S3C44B0X内部资源编程 204.1 LED显示204.2键盘控制234.3 数码管显示244.4 中断控制25第五章 机器人的设计27 5.1硬件结构 27 5.2软件设计 31 5.3结论44第六章 展望45参考文献摘要ARMT7TDMI是通用的32位RISC微处理器成员之一,在非常

2、低的功耗和价格下提供了很高性能。Samsung S3C44B0X微处理器是三星公司专为手持设备和一般应用提供的高性价比和高性能的微处理器解决方案。它使用ARM7TDMI核,工作在66MHZ。为了降低系统总成本,该芯片集成了8KB Cache、外部存储器控制器、LCD控制器等,是一款高效的微处理器。关键词:ARMT7TDMI 32位 微处理器 Samsung S3C44B0X 66MHZAbstractThe ARM7TDMI is a member of the Advanced RISC Machines (ARM) family of general purpose 32-bit micr

3、oprocessors, which offer very high performance for very low power consumption and price.SAMSUNGs S3C44B0X microprocessor is designed to provide a cost-effective and high performance micro-controller solution for hand-held devices and general applications. The S3C44B0X was developed using a ARM7TDMI

4、core,up to 66MHZ。To reduce total system cost, S3C44B0X also provides the following: 8KB cache, optional internal SRAM, LCD controller and so on,which is a high performance microprocessors.Keywords: ARM7TDMI 32-bit microprocessors S3C44B0X 66MHZ第一章 引言ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能

5、、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费、教育类、多媒体、DSP和移动式应用等。ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。ARM架构是面向低预算市场设计的第一款RI

6、SC微处理器。ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。CPU内核-ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。- ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。-ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Har

7、vard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。体系扩展- Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。嵌入式ICE调试由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。微处理器-ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。-ARM940T、920T系列:低价、低能耗、高性能系统微处

8、理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。-StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。-ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC

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

10、、高性能;2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;3、大量使用寄存器,指令执行速度更快;4、大多数数据操作都在寄存器中完成;5、寻址方式灵活简单,执行效率高;6、指令长度固定;。ARM微处理器的应用领域到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域:1、工业控制领域:作为32的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。2、无线通讯领域:目前已有超过85%的无线通讯设备采用了ARM技术

11、,ARM以其高性能和低成本,在该领域的地位日益巩固。3、网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。4、消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。5、成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用。ARM运用和机器人设计ARM作为一项刚刚发展起来的新技术,具有很强的发展力。由于是新

12、生技术,因此在高校中只有研究生才开设这门课程,或者研究生在做研究型工作。而在本科生中,由于各种原因,至今还没有开设这门课程。因此,选择这个题目,一方面是希望能够在本科的学习阶段学习这门新技术,另一方面也是为以后在本科生开设这门课程做准备开发实验系统。在现有的(实验室拥有的设备)机器人的设计中,用的是摩托罗拉公司的68HC12单片机来进行开发的。因此该设计希望将S3C44B0X运用在机器人身上,利用S3C44B0X优势,结合开放源码的UC/OS- II操作系统,开发出性能更高、可靠性更好的机器人。第二章S3C44B0X控制器介绍2.1 S3C44B0X控制器管脚om1:0输入: om1:0设置S

13、3C44B0X在测试模式和确定nGCS0的总线宽度,逻辑电平在复位期间由这些管脚的上拉下拉电阻确定.ADDR24:0输出: 地址总线输出相应段的存储器地址.DATA31:0输入输出:数据总线,总线宽度可编程为8/16/32 位.nGCS7:0输出:芯片选择,当存储器地址在相应段的地址区域时被激活.存取周期和段尺寸可编程.nWE输出 :写允许信号,指示当前的总线周期为写周期.nWBE3:0输出: 写字节允许信号.nBE3:0输出:在使用SRAM情况下字节允许信号.nOE输出 :读允许信号,指示当前的总线周期为读周期.nXBREQ输入: nXBREQ 总线控制请求信号,允许另一个总线控制器请求控制

14、本地总线,nXBACK信号激活指示已经得到总线控制权。nXBACK输出:总线应答信号。nWAIT输入:nWAIT请求延长当前的总线周期,只要nWAIT为低,当前的总线周期不能完成。ENDIAN输入:它确定数据类型是little endian还是big endian,逻辑电平在复位期间由该管脚的上拉下拉电阻确定.nRAS1:0输出:行地址选通信号。nCAS3:0输出:列地址选通信号。nSRAS输出:SDRAM行地址选通信号。nSCAS输出:SDRAM列地址选通信号。nSCS1:0输出:SDRAM芯片选择信号。DQM3:0输出:SDRAM数据屏蔽信号。SCLK输出:SDRAM时钟信号。SCKE输出

15、:SDRAM时钟允许信号。VD7:0输出:LCD数据线,在驱动4位双扫描的LCD时,VD3:0为上部显示区数据,VD7:4为下部显示区数据。VFRAME输出:LCD场信号,指示一帧的开始,在开始的第一行有效。VM输出:VM极性变换信号,变化LCD行场扫描电压的极性,可以每帧或可编程多少个VLINE信号打开。VLINE输出:LCD行信号,在一行数据左移进LCD驱动器后有效。VCLK输出:LCD点时钟信号,数据在VCLK的上升沿发送,在下降沿被LCD驱动器采样。TOUT4:0输出:定时器输出信号。TCLK输入:外部时钟信号输入。EINT7:0输入:外部中断请求信号。nXDREQ1:0输入:外部DM

16、A请求信号。nXDACK1:0输出:外部DMA应答信号。RxD1:0输入:UART接收数据输入线。TxD1:0输出:UART发送数据线。nCTS1:0输入:UART清除发送输入信号。nRTS1:0输出:UART请求发送输出信号。IICSDA输入输出:IIC总线数据线。IICSCL输入输出:IIC总线时钟线。IISLRCK输入输出:IIS总线通道时钟选择信号线。IISDO输出:IIS总线串行数据输出信号。IISDI输入:IIS总线串行数据输入信号。IISCLK输入输出:IIS总线串行时钟。CODECLK输出:CODEC系统时钟。SIORXD输入:SIO接收数据输入线。SIOTXD输出:SIO发送

17、数据线。SIOCK输入输出:SIO时钟信号。SIORDY输入输出:当SIO的DMA完成SIO操作时的握手信号。AIN7:0 : ADC模拟信号输入AREFT输入:ADC顶参考电压输入。AREFB输入:ADC底参考电压输入。AVCOM输入:ADC公共参考电压输入。P70:0输入输出:通用I/O口(一些口只有输出模式)。nRESET:复位信号,nRESET挂起程序,放S3C44B0X进复位状态。在电源打开已经稳定时,nRESET必须保持低电平至少4个MCLK周期。OM3:2输入:OM3:2确定时钟模式。EXTCLK输入:当OM3:2选择外部时钟时的外部时钟输入信号线,不用时必须接高(3.3V).X

18、TAL0模拟输入:系统时钟内部振荡线路的晶体输入脚。不用时必须接高(3.3V).EXTAL0模拟输出:系统时钟内部振荡线路的晶体输出脚,它是XTAL0的反转输出信号。不用时必须悬空。PLLCAP模拟输入:接系统时钟的环路滤波电容(700PF)。XTAL1模拟输入:RTC时钟的晶体输入脚。EXTAL1模拟输出:RTC时钟的晶体输出脚。它是XTAL1的反转输出信号。CLKout输出:时钟输出信号.nTRST输入:TAP控制器复位信号,nTRST在TAP启动时复位TAP控制器。若使用debugger,必须连接一个10K上拉电阻,否则nTRST必须为低电平。TMS输入:TAP控制器模式选择信号,控制T

19、AP控制器的状态次序,必须连接一个10K上拉电阻。TCK输入:TAP控制器时钟信号,提供JTAG逻辑的时钟信号源,必须连接一个10K上拉电阻。TDI输入:TAP控制器数据输入信号,是测试指令和数据的串行输入脚,必须连接一个10K上拉电阻。TDO输出:TAP控制器数据输出信号,是测试指令和数据的串行输出脚。VDD :S3C44B0X内核逻辑电压(2.5V)VSS: S3C44B0X内核逻辑地.VDDIO: S3C44B0X I/O口电源(3.3V).VSSIO: S3C44B0X I/O地.RTCVDD:RTC电压(2.5V或3V,不支持3.3V).VDDADC:ADC电压(2.5V).VSSA

20、DC:ADC地.2.2 Samsung S3C44B0X 介绍 Samsung S3C44B0X微处理器是三星公司专为手持设备和一般应用提供的高性价比和高性能的微控制器解决方案,它使用ARM7TDMI核,工作在66MHZ。为了降低系统总成本和减少外围器件,这款芯片中还集成了下列部件:8KB Cache、外部存储器控制器、LCD控制器、4个DMA通道、2通道UART、1个多主I2C总线控制器、1个IIS总线控制器,5通道PWM定时器及一个内部定时器、71个通用I/O口、8个外部中断源、实时时钟、8通道10位ADC等。S3C44B0X 体系结构:用于手持设备和通用嵌入式应用的完整系统;16/32位

21、RISC结构和带ARM7DMICPU核的功能强大的指令集;Thumb协处理器在保证性能的前提下使代码密度最大;片上ICE中断调试JTAG调试方式.32*8位硬件乘法器;S3C44B0X控制器内部资源简介系统管理:支持大/小端模式;地址空间:每个Bank32MB(一共256MB);每个Bank支持8/16/32位数据总线编程;固定的Bank起始地址和7个可编程的Bank;1个起始地址和尺寸可编程的Bank;8个内存Bank::个用于ROM、SRAM;2个用于ROM/SRAM/DRAM;所有内存Bank的可编程寻址周期;在能量低的情况下支持DRAM/SDRAM自动刷新模式; 支持DRAM的非对称/

22、对称寻址; 缓冲内存和内部SRAM; 4路带8K字节的联合缓存;不使用缓存的0/4/8K内容SRAM;伪LRU(最近最少使用)的替代算法;通过在主内存和缓冲区内容之间保持一致的方式写内存;当缓冲区出错时,请求数据填充技术; 时钟和能量管理 低能耗; 时钟可以通过软件选择性地反馈回每个功能块; 能量模式: 正常模式:正常运行模式; 低能模式:不带PLL的底频时钟; 休眠模式:只使CPU的时钟停止; 停止模式:所有时钟都停止; 用EINT或RTC警告中断从停止模式唤醒;中断控制器30个中断源(看门狗定时器,6个定时器,6个UART,8个外部中断,4个DMA,2个RTC,1个ADC,1个I2C,1个

23、SIO; 矢量IRQ中断模式减少中断响应周期;外部中断源的水平/边缘模式;可编程的水平/边缘极性;对紧急中断请求支持FIQ(快速中断请求);带PWM的定时器 5个16位带PWM的定时器/1个16位基于DMA或基于中断的定时器;可编程的工作循环,频率和极性;死区产生;支持外部时钟源;实时时钟全时钟特点:毫秒、秒、分、小时、天、星期、月、年;32.768KHz运行;CPU唤醒的警告中断;时钟记号中断;通用输入输出端口8个外部中断端口;71个多路输入输出口; 2个带DMA和中断的UART;支持5位,6位,7位,8位串行数据传送/接收;当传送/接收时支持双向握手;可编程波特率;支持IrDA1.0(11

24、5.2KBPS);测试的循环返回模式;每个通道有2个内部32位FIFODMA与A/DDMA控制器;2路通用无需要CPU干涉的DMA控制器;2路桥式DMA控制器;采用6种DMA请求的桥式DMA支持IO到内存,内存到IO,IO到IO:软件,4个内部功能块(UART,SIO,实时器,IIS),外部管脚;DMA之间可编程优先级次序;突发传送模式提高到FPDRAM、EDODRAM和SDRAM的传送率;A/D转换;10位多路ADC;最大500KSPS/10位;LCD控制器支持彩色/单色/灰度LCD;支持单扫描和双扫描显示;支持虚拟显示功能;系统内存作为显示内存;专用DMA用于从系统内存中提取图象数据;可编

25、程屏幕尺寸;灰度:16级;256色;看门狗定时器与I2C总线接口16位看门狗定时器;定时中断请求和系统复位;1个带中断的多主机I2C总线;串行,8位,双向数据传送器能够以100KB/S的标准模式和400KB/S的快速模式传送;IIS总线接口1个I带DMA的音频IS总线接口;串行,每路8/16位数据传送器;支持MSB数据格式; SIO(同步串行I/O)1个带DMA和中断的SIO;可编程波特率;支持8位串行数据传送/接收操作 ;操作电压范围 内核:2.5V;I/O:3.0V到3.6V; 运行频率 最高到75MHz;封装 160LQFP/160FBGA;第三章ARM开发工具简介3.1、ARM开发工具

26、综述根据功能不同,ARM应用软件的开发工具分别有:编译软件、汇编软件、链接软件、调试软件、嵌入式实时操作系统、函数库、评估板、JTAG仿真器和在线仿真器等,目前世界上约有四十家公司提供以上不同类别的产品。用户选用ARM处理器开发嵌入式系统时,选择合适的开发工具可以加快开发进度,节省开发成本。因此一套含有编辑软件、编译软件、汇编软件、链接软件、调试软件、项目管理及函数库的集成开发环境(IDE)一般来说是必不可少的。至于嵌入式实时操作系统、评估板等其他开发工具,则可以根据应用软件规模和开发计划选用。使用集成开发环境开发基于ARM的应用软件,包括编辑、编译、汇编和链接等全部工作,在PC机上即可完成,

27、调试工作则需要配合其他的模块或产品方可完成。目前常用的调试方法有以下几种。1、 指令集模拟器。部分集成开发环境提供了指令集模拟器,可方便用户在PC机上完成一部分简单的调试工作。但是,由于指令集模拟器与真实的硬件环境相差很大,所以,即使用户使用指令集模拟器调试通过的程序,也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。2、 驻留监控软件。驻留监控软件是一段运行在目标板上的程序,集成开发环境中的调试软件通过以太网口、并行端口和串行端口等通信端口,与驻留监控软件进行交互,由调试软件发布命令通知驻留监控软件控制程序的执行、存储器的读写、寄存器的读写和断点的设置等。 驻留

28、监控软件是一种比较低廉有效的调试方式,不需要任何其他的硬件调试和仿真设备。ARM公司的Angel就是该类软件,大部分嵌入式实时操作系统也是采用该类软件进行调试的。不同的是,在嵌入式实时操作系统中,驻留监控软件是作为操作系统的一个任务存在的。 驻留监控软件的不便之处在于它对硬件设备的要求比较高,一般在硬件稳定之后才能进行应用软件的开发;同时,它占用目标板上的一部分资源,而且不能对程序的全速运行进行完全仿真。因此,对一些要求严格的情况,它是不适合的。3、 JTAG仿真器。JTAG仿真器也称JTAG调试器,是通过ARM芯片的JTAG边界扫描口进行调试的设备。JTAG仿真器比较便宜,连接比较方便。它通

29、过现有的JTAG边界扫描与ARM CPU核通信,属于完全非插入式(即不使用片上资源)调试;它无须目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。另外,由于JTAG调试的目标程序是在目标板上执行,仿真更接近于目标硬件,因此,许多接口问题,如高频操作限制、AC和DC参数不匹配以及电线长度的限制等被最小化了。使用集成开发环境配合JTAG仿真器进行开发,是目前采用最多的一种调试方式。4、 在线仿真器。在线仿真器使用仿真头完全取代目标板的CPU,可以完全仿真ARM芯片的行为,提供更加深入的调试功能,但这类仿真器为了能够全速仿真时钟速度高于100MHZ的处理器,通常必须采用极其复杂的设

30、计和工艺,因而其价格比较昂贵。4.2、ARM STD ARM STD的英文全称是ARM Software Development Kit,是ARM公司为方便用户在ARM芯片上进行软件开发而推出的一整套集成开发工具。ARM STD 经过ARM公司逐年的维护和更新,目前的最新版本是2.5.2. ARM STD由于价格适中,同时经过长期的推广和普及,目前拥有最广泛的ARM软件开发用户群体,也被相当多的ARM公司的第三方开发工具合作伙伴集成在自己的产品中,比如美国EPI公司的JEENI仿真器。 3.2 ARM STD 的安装和应用。一、 安装SDT2.51点击SDT2.51安装程序中的setup.exe,出现如下安装界面:一路点击next继续,一般默认设

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1