基于STM32的嵌入式系统原理与设计 教学课件 卢有亮 第3章.ppt

基于STM32的嵌入式系统原理与设计 教学课件 卢有亮 第3章.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于STM32的嵌入式系统原理与设计 第三章 STM32软件开发 要点 第三章 STM32软件开发 3.6.3 汉字输出 3.6.3 汉字输出 3.6.4 图片显示和操作 3.6.4 图片显示和操作 3.6.4 图片显示和操作 作业 P220 1,3,5,7,8,11,12,15,18,20 实验1 自己动手从无到有的构建基于MDK的工程,并下载到实验板,调试运行,写出实验报告。 要求:实验板上4个LED灯全部点亮,1秒后全部熄灭,然后继续点亮和熄灭。 实验2 编程实现流水灯,当按键1的时候流水灯提速,按键2时流水灯降速。下载到实验板,调试运行,写出实验报告。 3.9.3 使用uIP实现PING响应 配合uIP的定时器,系统中还需要实现一个定时器,这个定时器的中断时间设置为10毫秒,每10毫秒将全局变量uip_timer的值加1。选择定时器6,该定时器设置为每10毫秒中断一次。在中断服务程序中简单的实现将32位整型全局变量uip_timer的值加1。代码3-65 主程序部分代码3-66 P211 该代码流程为: 1.初始化定时器6,每10毫秒产生中断。 2.调用tapdev_init实现网络设备的初始化。 3.调用uip_init初始化uIP。 4. 调用uip_ipaddr分别设置IP地址、网关地址和子网掩码。 5. 调用uip_polling进行轮询。 uip_polling代码3-67. 3.9.3 使用uIP实现PING响应 3.9.4 AD采集和网络UDP传输 产生一个周期性的斜波,用一个AD通道采集这个斜波。同时,将采集到的数据通过网络传送到远程计算机,在远程计算机使用VC编写代码接收数据并以图形的方式显示在屏幕上。 1.DAC斜波发生器,该斜波发生器在3.8节已实现。 2.ADC的DMA方式数据采集,采样率为每秒60K字节,也在3.8节实现。 3. 使用uIP的UDP数据传输,这是要实现的主要内容。 4. 使用网络调试助手,将采集的数据显示在计算机屏幕上。 3.6.4 图片显示和操作 本节图片操作分为三个部分: 1:将TF卡中的图片文件分部读取到内存(内存空间有限,只能循环使用),然后向RA8875发送位图传输指令,然后连续发送数据更新RA8875显示缓存达到图片显示的目的。该操作可以实现图片显示,但是速度较慢,且严重占用CPU时间。 2:将TF卡中的图片转存到SPIFALSH中,向RA8875卡发送指令,令其以DMA方式读取图片自动更新显存。该方式速度快,不占用CPU时间。笔者用该种方式现在了简单的电子相框。 3:使用块传输引擎实现一些快速位图操作功能。 3.6.4 图片显示和操作 1 TF卡中图片的显示 首先分析的是文件头,从字节0到13共14个字节称为字节头结构,字节头结构包含的信息 P173 剩余的文件头从字节14到字节53,称为位图信息头 P173-174 位图信息结构体定义 (代码3-41) 3.6.4 图片显示和操作 实现将TF卡中图片显示在液晶屏上,代码3-42 主程序部分代码,代码3-43 P176 3.6.4 图片显示和操作 2基于DMA方式的快速图片显示实现电子相框 首先,将图片文件转换为565格式的bmp文件,分辨率是480X272。 编程将图片拷贝到SPI FLASH,谨慎的规划目标地址,不要相互覆盖或覆盖掉原来拷贝进来的字库! 向RA8875发指令,告诉它的工作方法,让它去SPIFLASH取数据,告诉它图片在SPIFLASH中的起始地址,告诉它显示位置,然后让它开启DMA模式拷贝数据到显存。 之后就可以去做其它工作,任务已经分配下去了有人完成,完全的并行!读者会看到图片显示的速度非常快,如果不加延时地循环显示就会快的看不清楚。RA8875的DMA工作方式的确比单纯用STM32读取图片和显示图片的能力强很多。 代码3-44 P177 3.6.4 图片显示和操作 3块传输引擎BTE操作 RA8875 内建一2D 加速引擎功能,称为BTE (Block Transfer Engine),可增强区块数据处理的效率。当区块性数据需要搬移或需特定逻辑处理时,可透过RA8875 的BTE 功能快速地完成且可简化MCU的程序。 RA8875支持13 种BTE操作模式。关于BTE引擎操作码说明,请参考RA8875手册。对于每一种BTE操作模式,可搭配最多16 种的光栅运算码 (ROP,Raster Pperations),提供以区块为范围的多功能的逻辑运算。 基于BTE引擎块操作的三个实例 代码3-45 3.6.4 图片显示和操作 在实例1为BTE块填充,流程

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档