以ARM Cortex-M3为基础STM32开发板设计与实现.docVIP

以ARM Cortex-M3为基础STM32开发板设计与实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
以ARM Cortex-M3为基础STM32开发板设计与实现

以ARM Cortex-M3为基础STM32开发板设计与实现   【摘要】Cortex-M3A是ARM推出了新的产品,其在低成本、低功耗上具有很高的优势。本文对ARM Cotex-M3和STM32微控制器进行了研究,通过选择意法半导体STM32F开发板,对STM32的基本模块GPIO、RTC、USART、TFTLCD等的研究完成了相关设计,从而实现了万年历在液晶屏和PC端的显示,同时在液晶屏上实现了小容量的数码相册及图片的循环播放。   【关键词】STM32ARM Cortex-M3TFTLCD通用同步异步收发器万年历   一、引言   意法半导体(ST Microelectronics,简称ST)推出的STM32微控制器,是ST第一个基于ARM Cortex-M3内核的控制器。STM32的出现将当前微控制器的性价比水平提升到了新的高度,同时它在低功耗场合和硬实时控制场合中亦能游刃有余[1],考虑到用户应用的多样性和大跨度的需要,STM32很好的在整个系列保持了引脚的兼容性及外设的配置的兼容性[2]。   2008年5月ST推出扩展升级的STM32些列产品线,新系列配备最高达512KB的片上闪存、存储空间更大的SRAM和更多的外设功能,以用于显示、声音、存储和高级控制。STM32系列给MCU用户带来了前所未有的自由空间,提供了全新的32位产品选项,结合了高性能、实时、低功耗、低电压等特性,同时保持了高集成度和易于开发的优势[3]。   ARM在1990年成立,当初的名字是“Advanced RISC Machines Ltd.,”,当时它是三家公司的合资―――它们分别是苹果电脑,Acorn电脑公司,以及VLSI技术(公司)。   基于ARM Cortex-M3的STM32的优势有:(1)可以选择采用固件库开发,不必接触底层寄存器,大大缩短开发周期,降低上手难度;(2)性价比高,32位的控制器有着接近于16位甚至高端8位控制器的价格;(3)功能丰富,从工控、小嵌入式均能胜任。STM32已经广泛应用在工业控制、建筑与安防、低功耗、家用电器及计算机网络和通信等领域。STM32最多5个串口,外围通讯方便自由,如对讲机、空中鼠标、游戏手柄、电话POS等[4]。   本文旨在对STM32微控制器的深入研究,对意法半导体开发板STM32F(100脚)进行调试与开发。对此开发板中的各个模块如GPIO、定时器、USART、中断、BKP(备份寄存器)、PWR(电源控制)、RCC(复位和时钟控制)、 FSMC、TFTLCD等进行研究。在此基础上,实现功能:将图片显示到TFTLCD上,万年历通过串口在PC上显示,并且可以在TFTLCD上显示。   一、系统模块与开发平台   1.1STM32开发板   RealView MDK的突出特性:(1)启动代码生成向导,自动引导;(2)软件模拟器,完全脱离硬件的软件开发过程;(3)性能分析器,看得更远、更细、更清;(4)Cortex-M3支持;(5)RealView编译器,代码更小,性能更高。   1.3软件系统的设计流程   在实际开发中,需要使用外设的时候一般有三个步骤,这里以GPIO外设为例简单介绍一下开发流程:   (1)修改配置文件stm32f10x_conf.h。   将配置文件gpio的宏打开,如图4。   (2)加载stm32f10x_gpio.c文件   stm32f10x_gpio.c是GPIO对应的库文件,对GPIO的一系列操作都是封装完成并存放在这类文件里。加载过程如图5所示。   (3)参数设置。   包括配置使用管脚、输入或输出模式、选中管脚的速率,开发人员只需根据所需要求在对应的参数位置进行设置即可。一个简单的实例如下:   void GPIO_Configuration(void)   {   GPIO_InitTypeDef GPIO_InitStructure;   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;   //D1   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   GPIO_Init(GPIOC, GPIO_InitStructure);}   其它模块的应用也类似于此,这样就屏蔽了寄存器配置细节,同时加快了开发速度。   二、TFTLCD显示图片的实现   此设计中实现了两幅图片的循环播放,为实现数码相框奠定一定的基础。图片每循环一次,D1、D2、D3和D4循环闪烁一次。第一幅图片显示结果以及第二幅图片显示结果如

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档