基于stm32数码相框系统设计与实现软件论文内容摘要:
①系统内核小,由于嵌入式系统一般应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。 比如, ENEA 公司的 OSE分布式系统,内核只有 5KB,而 Windows 的内核则要大得多。 ②专用性强,嵌入式系统的个性化很强,其中的软件系统和硬件结合非常紧密,一般要 针对硬件进行系统的移植,同时针对不同的任务,往往需要对系统进行较大的更改。 另外,程序的编译下载要和系统相结合。 ③嵌入式系统一般没有 系统软件和应用软件的明显区分,不要求其功能的设计及实现过于复杂,这样既利于控制系统成本,也利于实现系统安全。 ④高实时性的操作系统软件是嵌入式软件的基本要求,而且软件要求固化存储,以提高速度 ,软件代码要求高质量和高可靠性。 ⑤嵌入式软件开发要想走向标准化,就必须使用多任务操作系统。 嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行,但为了更合理的调度多任务,利用系统资源、系 统函数,用户必须自行选配 RTOS开发平台。 ⑥执行的实时性、可靠性,并减少开发时间,保障软件质量。 嵌入式系统开发需要专门的开发工具和环境。 由于嵌入式系统本身不具备自主开发能力,即使完成设计后,用户通常也不能对其中的程序功能进行修改,因此必须有一套基于通用计算机的开发工具和环境才能进行开发。 数码相框模块 MCU主控模块 STM32 系列闪存微控制器是意法半导体公司( ST)基于 ARM 公司具有突破性的 CortexM3 内核的处理器,该处理器是专门设计于满足集高性能、低功耗、实时应用、具有竞争性 价格于一体的嵌入式领域的要求。 此次设计采用的具体型号是 STM32F103RBT6,如图 21所示。 图 21 STM32F103RBT6 处理器 STM32F103RBT6嵌入式处理器具有以下特点: 32位 RISC性能处理器; 32位 ARM CortexM3结构优化; 72 MHZ运行频率,单周期访问时速度可达 DMIPS/MHz; 硬件除法和单周期乘法; 快速可嵌套中断, 6~12个时钟周期; 具有 MPU保护设定访问规则 ; 片内具有 256KB FLASH, 48KB RAM; 80个快速 I/O端口, 16个 I/O可映射到外部中断,几乎所有的 I/O可以忍受 5V电压; 片上集成 12Bit A/D、 D/A、 PWM、 CAN、 USB、 SDIO、 FSMC等资源; ARM CortexM3 是一种基于 ARM7v 架构的最新 ARM 嵌入式内核,它采用哈佛结构,使用分离的指令和数据总线 (冯诺伊曼结构下,数据和指令共用一条总线 )。 从本质上来说,哈佛结构在物理上更为复杂,但是处理速度明显加快。 根据摩尔定理,复杂性并不是一件非常重要的事,而吞吐量的增加却极具价值。 除了使用哈佛结构, CortexM3 还具有其它显著的优点:具有更小的基础内核,价格更低,速度更快。 与内核集成在一起的是一些系统外设,如中断控制器、总线矩阵、调试功能模块,而这些外设通常都是由芯片制造商增加的。 CortexM3 还集成了睡眠模式和可选的完整的八区域存储器保护单元,只支持最新的 Thumb2指令集,最大限度降低了汇编器使用率。 CortexM3这样设计的优势在于: 免去 Thumb和 ARM代码的互相切换,对于早期的处理器来说,这种状态切换会降低性 能。 Thumb2指令集的设计是专门面向 C语言的,且包括 If/Then结 构 (预测接下来的四条语句的条件执行 )、硬件除法以及本地位域操作。 Thumb2指令集允许用户在 C代码层面维护和修改应用程序, C代码部分非常 易于重用。 Thumb2指令集也包含了调用汇编代码的功能: Luminary公司认为没有必要使用任何汇编语言。 综合以上这些优势,新产品的开发将更易于实现,上市时间也大为缩短。 STM32F103RBT6 的资源完全满足此次的嵌入式数码相框设计,通过设计电路开发一个支持 TFT 彩色液晶屏的驱动电路,在设计中搭配 TFT真彩触摸屏模块作为显示界面,同时支持一个 SD卡( SPI方式)可用于存储图片、数据等。 LCD模块 Thin Film Transistor(薄膜场效应晶体管 ),是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。 从而可以做到高速度 、 高亮度 、 高对比度显示屏幕信息 ,TFTLCD(薄 膜晶体管液晶显示器)是多数液晶显示器的一种。 TFT屏幕的优点如下: 大面积。 九十年代初第一代大面积玻璃基板( 300mm 400mm) TFTLCD生产线投产,到 2020年上半年玻璃基板的面积已经扩大到了 680mm 880mm),最近 950mm 1200mm的玻璃基板也将投入运行。 高集成度。 用于液晶投影的 TFT芯片的分辨率为 XGA含有百万个象素。 分辨率为 SXGA( 1280 1024)的 TFT阵列非晶体硅的膜厚只有 50nm,以及 TAB ON GLASS和 SYSTEM ON GLASS技术,其 IC的集成度,对设备和供应技术的要求,技术难度都超过传统的 LSI。 功能强大。 TFT最早作为矩阵选址电路改善了液晶的光阀特性。 对于高分辨率显示器,通过 06V范围的电压调节(其典型值 4V),实现了对象元的精确控制,从而使 LCD实现高质量的高分 辨率显示成为可能。 TFTLCD 是人类历史上第一种在显示质量上超过 CRT 的平板显示器。 现在人们开始把驱动 IC集成到玻璃基板上,整个 TFT的功能将更强大,这是传统的大规模半导体集成电路所无法比拟的。 低成本。 玻璃基板和塑料基板从根本上解决了大规模半导体集成电路的成本问题,为大规模半导体集成电路的应用开拓了广阔的应用空间。 工艺灵活。 除了采用溅射、 CVD(化学气相沉积) MCVD(分子化学气相沉积)等传统工艺成膜以外,激光退火技术也开始应用,既可以制作非晶膜、多晶膜,也可以制造单晶膜。 不仅可以制作硅膜,也可以制作 其他的Ⅱ Ⅵ族和Ⅲ Ⅴ族半导体薄膜。 应用领域广泛。 以 TFT 技术为基础的液晶平板显示器是信息社会的支柱产业,技术 可应用到正在迅速成长中的薄膜晶体管有机电致发光 (TFTOLED)平板显示器也在迅速的成长中。 TFT液晶显示屏亮度好、对比度高、层次感强、颜色鲜艳 ,其广泛应用于手机、 MP4等消费品。 因此,本系统选用 TFTLCD屏(如图 22所示)可显 26万色,分辨率 320*240,控制器为ILI9320,采用 16位的 80并口,配合触摸屏专用芯片 XPT2046,可对屏幕进行触摸操作,更显智能化和个性化。 为了方便用户使用,我们存储方式采用兼容 FAT 的文件系统,同时该文件系统也兼容FAT32等电脑主流的文件系统方式进行存储。 图 22 英寸 TFTLCD 模块 该模块的 80 并口有如下一些信号线: CS: TFTLCD片选信号。 WR:向 TFTLCD写入数据。 RD:从 TFTLCD读取数据。 D[15:0]: 16位双向数据线。 RST:硬复位 TFTLCD。 RS:命令 /数据标志( 0,读写命令; 1,读写数据)。 TFTLCD模块的 RST 信号线是直接接到 STM32 的复位脚上,并不由软件控制, 这样可以省下来一个 I/O 口。 另外我们还需要一个背光控制线来控制 TFTLCD的背光。 所以我们总共需要的 I/O 口数目为 21个。 模块的控制器为 ILI9320(可能为其他型号,但是他们的设置很相似,除了初始化序列有些区 别,其他大都是一摸一样的,这里仅以 9320为例介绍),该控制器自带显存,其显存总大小为 172820( 240*320*18/8),即 18位模式( 26万色)下的显存量。 模块的 16位数据线与显寸的对应关系为565方式,如下图所示: 图 23 16 位数据与显存对应关系图 最低 5位代表蓝色,中间 6位为 绿色,最高 5 位为红色。 数值越大,表示该颜色越深。 接下来介绍一下 ILI9320的几个重要命令,因为 ILI9320 的命令很多,这里不一一介绍。 这里我们要介绍的命令列表如下: 表 ILI9320 常用命令表 R0,这个命令,有两个功能,如果对它写,则最低位为 OSC,用于开启或关闭振荡器。 而如果对它读操作,则返回的是控制器的型号。 这个命令最大的功能就是通过读它可以得到控器的型号,而我们代码在知道了控制器的型号之后,可以针对不同型号的控制器,进行不同的初始化。 因为 93xx 系列的初始化,其实都比较类似,我 们完全可以用一个代码兼容好几个控制器。 R3,入口模式命令。 我们重点关注的是 I/D0、 I/D AM 这 3 个位,因为这 3 个位控制了屏幕的显示方向。 AM:控制 GRAM更新方向。 当 AM=0的时候,地址以行方向更新。 当 AM=1的时候,地址以列方向更新。 I/D[1:0]:当更新了一个数据之后,根据这两个位的设置来控制地址计数器自动增加 /减少 1,其关系如下图: 图 24 GRAM 显示方向设置图 通过这几个位的设置,我们就可以控制屏幕的显示方向了。 R7,显示控制命令。 该命令 CL位用来控制是 8位彩色,还 是 26万色。 为 0时 26万色,为 1时八位色。 D D0、 BASEE这三个位用来控制显示开关与否的。 当全部设置为 1的时候开启显示,全 0是关闭。 我们一般通过该命令的设置来开启或关闭显示器,以降低功耗。 R32, R33,设置 GRAM的行地址和列地址。 R32用于设置列地址( X 坐标, 0~239), R33用于设置行地址( Y坐标, 0~319)。 当我们要在某个指定点写入一个颜色的时候,先通过这两个命令设置到改点,然后写入颜色值就可以了。 R34,写数据到 GRAM 命令,当写入了这个命令之后,地址计数器才会自动的增加和减少。 该 命令是我们要介绍的这一组命令里面唯一的单个操作的命令,只需要写入该值就可以了,其他的都是要先写入命令编号,然后写入操作数。 R80~R83,行列 GRAM 地址位置设置。 这几个命令用于设定 显示区域的大小,我们整个屏的大小为 240*320,但是有时候我们只需。基于stm32数码相框系统设计与实现软件论文
相关推荐
图 Hibernate轻型应用体系 在前面解决体系中,对于应用程序来说,所有的底层 JDBC/JTA API 都被抽象了,Hibernate 会替你照管好所有的细节。 本文中所用到的就是这种体系。 FGSJJLKSJGKLJG JLS JGKJ KJ SKJ KJSKLGJKSJLKSJKL KSGK JKLGJSLSK JSGKL JLSGJSLJ GJGKL JLSJ KL JGKL
网的一种商务活动,互联网本身具有开放性全球性,特点,电子商务可为企业个人提供丰富的信息资源,为企业创造更多商业机会。 ( 3)网上购物简化了企业与企业,企业与个人之间的流通环节,最大限度地降低了流通成本,能有效地提高企业在现代商业活动中的竞争力。 ( 4)网上购物将大部商务活动搬 到网上进行,企业可以实行无纸办公化节省了开支。 ( 5)网上购物将传统的商务流程数字化、电子化
职 称 讲师 软件工程师 2020 年 6 月 1 日 Fir st pliance r eview of t he applicat ion of t he appr aisal Com m it t ee, only t hr ough t he pliance r eview of t he applicat ion t o t ake par t in a det ailed r
预先设定的时间 程序,分别对各个房间照明设备的开、关进行控制,并可自动调节各个房间的照度。 (5)窗帘的控制,按照预先设定的时间程序,对窗帘的开启 /关闭进行控制。 第 2 章 总体设计 整体介绍 本次设计以 STC89C52 芯片为控制核心,温度,湿度等传感器为环境信息采集源,以 Web 控制为辅助,来制作一个物联网空调监控系统。 在原有的机械式按键开关的基础上,采用无线遥控器与 Web
5,根据 INTEL 总线读时序时序图读数据程序: uchar read_12C887(uchar add)//在指定的地址读出数 据 { uchar read_data。 DS=1。 RW=1。 AS=1。 CS=0。 P0=add。 AS=0。 DS=0。 P0=0XFF。 read_data=P0。 DS=1。 AS=1。 CS=1。 return(read_data)。 } 19
址或间接 址 ,(data/idata)。 (2)高 128字节的内部 RAM(地址 :80HFFH) ,只能间接寻址 (普通 89C5有 ),(idata)。 (3)特殊功能寄存器 SFR(地址 :80HFFH) , 只能直接寻址 ,(data)。 特殊功能寄存器 SFR 和高 128 字节的内部 RAM 是通过寻址方式来区分的 ,传统的 8051 系 列单片机只有 128256 字节 RAM