电子名片设计论文 (2).doc

上传人:来看看 文档编号:3958043 上传时间:2019-10-11 格式:DOC 页数:60 大小:5.90MB
返回 下载 相关 举报
电子名片设计论文 (2).doc_第1页
第1页 / 共60页
电子名片设计论文 (2).doc_第2页
第2页 / 共60页
电子名片设计论文 (2).doc_第3页
第3页 / 共60页
电子名片设计论文 (2).doc_第4页
第4页 / 共60页
电子名片设计论文 (2).doc_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《电子名片设计论文 (2).doc》由会员分享,可在线阅读,更多相关《电子名片设计论文 (2).doc(60页珍藏版)》请在三一文库上搜索。

1、电子名片摘 要名片为个人信息载体,是重要的社交工具,而传统名片存在着种种弊端。本文提出了一种电子名片设计思想,克服了原有纸质名片的各种弊端,其基于STM32F107VC处理器,理论上能实现名片的海量存储,信息无线交换,并对操作者的不同手势进行识别,并执行相应的动作,当无动作时,电子名片装自动进入休眠状态,且便于进行查询。名片内容存储于FLASH存储器,可以方便的在计算机上进行编辑、导出、导入。原设计显示拟采用低功耗电子纸,但由于市面无对应货源,所以暂以TFT液晶屏代替,其功耗将有所增大。当电子纸货源充足时,电子名片功耗将大幅度降低。经实验,电子名片能实现所设计的功能,如进行改进,其将有很大的市

2、场潜力及应用价值。关键词: 电子名片 STM32F107VC 信息交换 识别目 录第一章 引言1第二章 系统的设计思想3第三章 硬件集成及设计43.1 硬件设计43.2 主控单元设计43.2.1 STM32F107VC介绍53.2.2 芯片内部结构介绍53.2.3 片上外围模块及功能介绍63.2.4 控制器的最小系统103.3 存储单元设计133.4 传感器单元设计153.5 无线通信单元设计213.5.1 Uart-WiFi模块的硬件说明213.5.2 Uart-WiFi主要功能特性253.6 外围接口单元设计253.7 电源单元设计27第四章 程序设计294.1 整体控制思想294.2 软

3、件流程图304.3 存储模块程序设计314.4 Wi-Fi数据传输流程设计374.5 加速度传感器模块流程设计384.6 BMP图像处理介绍394.7 FatFs文件系统介绍42第五章 调试445.1 Wi-Fi模块的调试445.2 模块化调试495.3 问题及解决方案505.3.1 Wi-Fi模块与电脑通信问题515.3.2 两个Wi-Fi模块连接51第六章 总结52附录53电子名片第一章 引言名片作为个人信息载体,是重要的社交工具,也是有效的宣传工具。名片是文明社会的象征之一,其起源于交往,随着现代社会信息化与商业化的推进,名片作为一种信息媒介,其作用日益突出,按发展过程其可分为:纸质名片

4、,手机名片,U盘名片。纸质名片:商务人士随身携带,需要有专门的名片,被频繁的交换,用于社交场所,但存储不便,易丢失,查找信息不方便。手机名片:手机型号各异,对接操作复杂,有各自格式要求,许多老式手机也不具备图片传送功能,而且只能实现点对点传送等.U盘名片:即光盘名片,把企事业单位的文字、图片、视频、声音等宣传资料整合成一种自动播放的多媒体文件刻录到名片大小的光盘内,但不易携带,且易损坏。使用操作复杂,不适宜个体间快速信息交互。在日常生活中,人们经常需要随时与别人进行名片交换。由于名片信息量小,不便于携带,查阅不便的缺点下,这里提出了一种新的名片设计思想,其功耗低,信息容量大,便于交换及查找,并

5、支持群交换的电子名片,它是信息交换的新媒介。本课题旨在设计一个电子名片,能实现信息无线交互、群发,界面无按键切换和海量信息存储的功能,可能情况下,也可实现与手机对传。并尽可能缩小其体积及功耗,以实用性作为其设计原则。数字领域需要新科技名片的出现,在强大的现代科技条件下Wi-Fi技术在掌上设备中的应用越来越广泛,与早前应用于手机上的蓝牙技术不同,Wi-Fi具有更大的覆盖范围和更高的传输速率,因此,我们在作品的设计中也使用Wi-Fi进行终端之间的通信,大幅缩短信息交互时间,提升通信距离和通信质量,增强了产品的实用性。所设计开发的这款电子名片外形美观,设计理念新颖独特,操作简单,使用方便,具有很强的

6、市场推广价值。可用于商家、企事业、个人之间的信息交流。电子名片美观大方,是名片中的“绅士”,是现代政要和企业老板身份的象征,是今后人们进行个人资料介绍,企事业单位进行宣传的必备工具,市场前景非常广阔。第二章 系统的设计思想电子名片的设计,是为了让人们更加方便地携带大量客户信息,并且能够很方便地与他人进行名片信息交换。本系统以STM32F107VCT6微处理器为控制核心,分别控制存储模块、显示模块、重力加速度传感器模块、Wi-Fi通信模块。显示屏在重力加速度传感器模块的配合下,能够自动翻页,让用户可以很方便地查看他人的名片信息。当需要与他人进行名片交换时,可以通过Wi-Fi通信模块进行名片传输,

7、系统在接收到对方的名片时,会在显示屏上自动显示,同时也会将名片存储起来,以便日后查询。存储模块采用大容量的SD卡,可以很方便地存储大量的名片信息,方便携带。系统结构如图2-1所示。电子名片功能:有相应的名片格式,传送简单,查询方便,可根据手势进行切换,可实现点对点传送,也可实现群发功能,理论上可实现海量存储。图2-1 系统构架图第三章 硬件集成及设计 本章主要介绍电子名片的硬件电路的设计,包括整体电路设计以及各个模块电路设计的详细介绍。3.1 硬件设计电子名片设计的硬件主要包括六个单元,总体结构如图3-1所示。图3-1 电子名片硬件总体结构图3.2 主控单元设计主控单元是电子名片的核心,在它的

8、协调控制下各个模块高效快捷的完成各种功能。它采用STM32107VCT6作为主处理器,主控单元包括晶振电路、滤波电容电路、实时时钟电路。主控单元主要完成传感器数据采集、数据处理、算法判断、过程控制等功能。STM32F107是意法半导体推出全新STM32互连型(Connectivity)系列微控制器中的一款性能较强产品,此芯片集成了各种高性能工业标准接口,且STM32不同型号产品在引脚和软件上具有完美的兼容性,可以轻松适应更多的应用。STM32的标准外设包括10个定时器、两个12位1-Msample/s、AD(模数转换器)(快速交替模式下2M sample/s)、两个12位DA(数模转换器)、两

9、个IIC接口、五个USART接口和三个SPI端口和高质量数字音频接口IIS,另外STM32F107拥有全速USB(OTG)接口,两路CAN2.0B接口,以及以太网10/100 MAC模块.此芯片可以满足工业、医疗、楼宇自动化、家庭音响和家电市场多种产品需求。本小节从处理器的基本知识、内部结构、外围模块功能、开发环境等方面对STM32F107VC单片机的基础理论知识进行介绍。3.2.1 STM32F107VC介绍STM32F107VC是基于ARMV7架构的Cortex-M3内核,主频72MHz,内含256K字节的FLASH和64K字节的SRAM,LQFP100封装。STM32F107属于互联型系

10、列,相对于STM32家族系列的其他芯片来说,资源非常丰富.STM32F107VC系列单片机的电源电压采用的是1.8v-3.6V电压。因而可使其在1MHz的时钟条件下运行时,芯片的电流会在200400uA左右,在系统中共有一种活动模式(AM)和五种低功耗模式(LPM0LPM4)。在等待方式下,耗电0.7uA,电方式下,最低可达0.1uA。在STM32F107VC系列中有两个不同的系统时钟系统:基本时钟系统和锁频环时钟系统或DCO数字振荡器时钟系统。由系统时钟系统产生CPU和各功能所需的时钟,实现对总体功耗的控制。3.2.2 芯片内部结构介绍STM32F107VC系列器件包括CPU、程序存储器、数

11、据存储器、运行控制、外围模块和振荡器和倍频器等主要功能模块。其内部结构如3-2所示。图3-2 STM32F107VC内部结构图3.2.3 片上外围模块及功能介绍STM32F107VC单片机集成了非常丰富的片内外设,分别是多达512K字节的FLASH,多达64K字节的SRAM,5个USART,3个SPI,2个IIC,4个16位定时器,内嵌RC振荡器,2个看门狗,80%管脚是通用的I/O口。72MHz的CPU。看门狗可以使程序失控时迅速复位,也可以当作定时器使用。模拟比较器进行模拟电压的比较,配合定时器,可设计出A/D转换器。有的器件更具有可实现异步、同步及多址访问串行通信接口可方便的实现多机通信

12、等应用。方便高效的开发环境,片内有JTAG调试接口,还有可电擦写的FLASH存储器,因此采用先下载程序到FLASH内,再在器件内通过软件控制程序的运行,由JTAG接口读取片内信息供设计者调试使用的方法进行开发,方便灵活。1模块STM32的通用同步异步收发器(USART)是相当丰富,功能也很强劲。最多可以提供5个串口。该USART有分数波特率发生器,发送和接收公用的可编程波特率,最高达4.5Mbit/s;可编程数据字长度(8位或9位);可配置停止位,支持1或2以及半个停止位;支持单线半双工通信;支持LIN;支持智能卡协议和IrDASIRENDEC规范,具有DMA等。串口最基本的设置,就是波特率的

13、设置。使用STM32的串口其实并不难,只要开启了串口时钟,并设置了相应的I/O口的模式,然后配置波特率,数据位长度,奇偶校验等信息,就可以使用。串口作为STM32的一个外设,其时钟由外设始终使能寄存器控制,STM32F107中串口1是在APB2ENR寄存器的第14位。说明除了串口1的时钟使能在APB2BNR寄存器,其他串口的时钟使能位都在APB1ENR。每个串口都有一个自己独立的波特率寄存器USART_BRR,通过设置该寄存器达到配置不同波特率的目的。该寄存器的各位描述如下图3-3所示。图3-3 寄存器设置前面提到STM32的分数波特率概念,其实就是在这个寄存器里面体现的。最低4位用来存放小数

14、部分DIV Fraction,15:4这12位用来存放整数部分DIV Mantissa。高16位未使用。这里波特率的计算通过如下公式计算:这里的(x=1、2)是给外设的时钟(PCLK1用于串口2、3、4、5,PCLK2用于串口1),USARTDIV是一个无符号的定点数,它的值可以有串口的BRR寄存器值得到。而我们更关心的是如何从USARTDIV的值得到USART_BRR的值,因为一般我们知道的是波特率和PCLKx的时钟,要求的就是USART_BRR的值。假设我们的串1要设置为9600的波特率,而PCLK2的时钟为72M。这样,我们根据上面的公式有:USARTDIV=72000000/9600*

15、16=468.75那么得到:DIV_Fraction=16*0.75=12=0X0C;DIV_Mantissa=468=0X1D4;这样,我们就得到了USART1 BRR的值为0X1D4C。只要设置串口1的BRR寄存器值为0X1D4C就可以得到9600的波特率。2IIC通信方式介绍加速度传感器与主控芯片的通信采用IIC通信模式。IIC串行总线有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到IIC总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。在IIC总线传输过程中,当SCL保持”高”时,SDA由”高”变为”低”为开始条件;当SCL保

16、持”高”且SDA由”低”变为”高”时为停止条件。开始和停止条件均由主控制器产生。使用硬件接口可以很容易地检测到开始和停止条件。开始和停止条件如图3-4所示。图3-4 IIC开始条件和停止条件在数据传输的过程中,SDA线上的数据在时钟”高”;期间必须是稳定的,只有当SCL线上的时钟信号为低时,数据线上的”高”;或”低”状态才可以改变。输出到SDA线上的每个字节必须是8位,每次传输的字节不受限制,但每个字节必须要有一个应答ACK。如果接收器件在完成其他功能前不能接收另一数据的完整字节时,它可以保持时钟线SCL为低,以促使发送器进入等待状态;当接收器准备好接受数据的其它字节并释放时钟SCL后,数据传

17、输继续进行。3.2.4 控制器的最小系统1模拟电源电路图中所示的VDDA和VREF分别是是STM32F107处理器数字/模拟转换电路中需要用到的模拟参考电源和模拟电源输入。模拟电源电路如下图3-5所示。图3-5 主控制器模拟电源电路图3-5中相关管脚定义如表3-6所示。表3-6 主控制器模拟电源电路管脚说明名称信号类型注解输入,模拟参考正极ADC使用的高端/正极参考电压,2.4V输入,模拟电源等效于的模拟电源且:2.4V(3.6V)输入,模拟参考负极ADC使用的低端/负极参考电压,=输入,模拟电源地等效于的模拟电源地2晶振电路STM32F107处理器包含8Mhz高速内部RC振荡电路,但其精度不

18、高,不能满足芯片工作时的要求,因此在外部增加了25Mhz的晶振电路,为系统的可靠工作提供时序基准。25Mhz的晶振电路如下图3-7所示。图3-7 25Mhz晶振电路STM32F107内部包含40Khz低速内部RC振荡电路LSE,但其精度不是很高,为此在外部增加了32.768Khz的晶振电路,可以驱动独立看门狗和通过程序选择驱动RTC实时时钟。32.768Khz的晶振电路如图3-8所示。图3-8 32.768Khz晶振电路3滤波电容电路为STM32F107处理器提供必要的储能电容、滤波和退偶。为整个系统提供一个干净的电源,保证整个系统的稳定可靠运行。滤波电容电路如图3-9所示。图3-9 滤波电容

19、电路实时时钟电路4实时时钟电路STM32处理器的VBAT采用CR1220纽扣电池和VCC3.3混合供电的方式,在有外部电源(VCC3.3)的时候,BT1不给处理器的VBAT供电,而在外部电源断开的时候,则有BT1给VBAT供电。这样VBAT总是有电的,以保证RTC的持续运行以及后备寄存器的内容不丢失。实时时钟电路如图3-10所示。图3-10 实时时钟电路3.3 存储单元设计存储单元可以实现名片数据信息及其它配置数据的存储,为了便于与PC机进行数据传送,设计中将采用SD卡作为存储单元的主要器件。SD卡(Secure Digital Memory Card)是一种基于半导体快闪记忆器的新一代记忆设

20、备。SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。大小犹如一张邮票的SD记忆卡,重量只有2克,但却拥有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性。可以通过专用优化速度的串行接口访问,数据传输可靠。通过他们的外部链接,接口允许几个卡垛叠。继而满足电子名片信息的海量储存。电子名片设计中的存储模块采用大容量的SD卡,STM32处理器与SD卡之间通过SPI模式进行通信。SPI模式下,SD卡与处理器之间采用4线通信,分别是MISO(主设备数据输入,从设备数据输出)、MOSI(主设备数据输出,从设备数据输入)、SCLK(时钟信号)、CS(从设备片选信号)。S

21、D卡VCC、VSS、GND分别为电源和地管脚。SD卡电路计如图3-11所示。图3-11 SD卡管脚电路3.4 传感器单元设计三轴加速度传感器模块构成传感器单元,使用ADXL345芯片,特性优异,具有超低功耗,用户可根据需要选取分辨率,电源电压范围2.0v-3.6v,I/O口电压范围0v-1.7v,常应用于手机、医疗设备、游戏和定点设备、工业仪器仪表、个人导航设备,本次电子名片的设计,使三轴加速度传感器模块与主控单元STM32F107VC单片机相连,用于检测翻页动作。加速力是当物体在加速过程中作用在物体上的力,比如晃动、跌落、上升、下降等各种移动变化。而加速度传感器就是能够感知到加速力的变化,加

22、速力转化为电信号的器件。一般地,加速度传感器所产生的电信号为微处理器接受,经过程序设计作出相应的动作。所谓的的动作,就能根据使用者的甩动方向,若把传感器放置在MP3中,就会前后更换歌曲,放进衣袋的时候也能够计算出使用者的前进步伐。个别高端笔记本例如IBM高端系列也内置了加速度传感器,在感知发生剧烈加速度时(如开始跌落),立即保护硬盘,避免硬盘损害。本节将以课题所使用的ADXL345加速度传感器为例,介绍重力传感器的硬件结构、产品功能、使用方法等。1引脚配置和功能介绍ADXL345是一款小而薄的超低功耗3轴加速度计,分辨率高(13位),测量范围达16g。数字输出数据为16位二进制补码格式,可通过

23、SPI(3线或4线)或IIC数字接口访问。ADXL345非常适合移动设备应用。ADXL345 采用3mm5mm1mm14引脚小型超薄塑料封装。如图3-12所示为ADXL345引脚配置。图3-12 ADXL345引脚引脚功能描述如下表3-13所示。表3-13 引脚功能描述引脚编号引脚名称描述1VDD I/O数字接口电源电压2GND接地3RESERVED保留。连VS或者保持断开4GND接地5GND接地6VS电源电压7CS片选8INT1中断1续表9INT2中断210NC内部不连接11RESERVED保留。接地或者断开12SDO/ALT ADDRESS串行数据输出(SPI 4线)/备用I2C地址选择1

24、3SDA/SDI/SDIO串行数据(I2C)/串行数据输入(SPI 4线)/串行数据输入和输出(SPI 3线)。14SCL/SCLK串行通信时钟。SCL为IC时钟,SCLK为SPI时钟。2加速度传感器电路设计加速度传感器ADXL345与微控制器之间的通信通过IIC接口。在本课题中,加速度传感器通过IIC接口和微控制器连接。如图3-14所示,为ADXL345实物图。图3-14 0ADXL345实物图本系统硬件设计合理,调试后运行稳定可靠,单片机、键盘运行稳定,具有良好的抗干扰性。优良的硬件系统为系统正常工作提供了有力保障,也为软件设计和调试打下了坚实基础。3ADXL345物理安装原理ADXL34

25、5是三轴加速度计。检测轴如下图3-15所示。图3-15 ADXL345的检测轴当ADXL345沿检测轴正向加速时,它对正加速度进行检测。在检测重力时用户需要注意,检测轴的方向于重力的方向相反时检测到是正加速度。图3-16所示为输出对重力的响应。图3-16输出响应与重力的方向4ADXL345工作原理ADXL345通过IIC或SPI(三线式或4线式)进行通信。图3-17所示为推荐的4线式SPI模式的电气连接。在使用SPI模式时,可断开SDO引脚。图3-18所示的为推荐的IIC模式电气连接。器件的7位IIC地址是0x53,紧随其后的是R/W位。用户通过将SDO/ALTADDRESS引脚连接到VDDI

26、/O引脚来选择IIC的替代地址。此配置下的7位IIC地址是0x1D,紧随其后的是R/W。图3-17 推荐的4线式SPI模式的连接图3-18 推荐的IIC模式的连接在本课题中,ADXL345加速度传感器使用的是IIC方式连接。如下图3-19所示的为IIC的工作时序图。图3-19 IIC的工作时序图a.限值基于特性数据:=400KHz和3mA吸电流,未经生产检测。b.为SCL下降沿测得的数据保持时间。适用于传输和应答数据。c.发送器件必须为SDA信号(相对于SCL信号的)内部提供至少300ns的输出保持时间,以便桥接SCL下降沿未定义区域。d.如果器件SCL信号的低电平周期()没有延长。则必须满足

27、最大值。e.最大值根据时钟低电平时间()时钟上升时间()和最小数据建立时间()而定,该值的计算公式为(max)=。f.Cb是一条总线的总电容(单位:pF)。ADXL345可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。其高分辨率(3.9mg/LSB),能够测量不到的倾斜角度变化。该器件提供多种特殊检测功能。活动和非活动检测功能通过比较任意轴上的加速度与用户设置的阈值来检测有无运动发生。敲击检测功能可以检测任意方向的单振和双振动作。自由落体检测功能可以检测器件是否正在掉落。这些功能可以独立映射到两个中断输出引脚中的一个。正在申请专利的集成式存储器管理系统采用一个32

28、级先进先出(FIFO)缓冲器,可用于存储数据,从而将主机处理器负荷降至最低,并降低整体系统功耗。低功耗模式支持基于运动的智能电源管理,从而以极低的功耗进行阈值感测和运动加速度测量。3.5 无线通信单元设计无线通信单元采用Uart-Wifi模块技术进行信息交换,其主要芯片是AX22001。AX22001是一款单芯片微控制器,内置802.11无线网MAC/基带的单芯片TCP/IP微处理器,提供高性能双CPU内核及用于代码存储的1MB共享闪存,内嵌用于主处理器(MCPU)的64KB数据存储器及用于Wi-Fi处理器(WCPU)的32KB数据存储器, 内置TCP/IP加速器,兼容802.11a/b/g的

29、无线网MAC/基带,快速以太网MAC及丰富的通信外设,可用于各类需要接入有线/无线以太网,局域网/互联网的设备.本次电子名片的设计,使用Uart-Wifi模块与主控器单元相连,用于电子名片数据的发送及接受。本课题使用的03A是第三代嵌入式Uart-WiFi模块产品,本节将以03A为例主要介绍Uart-WiFi模块的结构,原理,基本特征。3.5.1 Uart-WiFi模块的硬件说明03A在前两代产品的基础上进行了全面的软硬件升级,功能更加强大。图3-20为模块的俯视图,图3-21为模块的测试图。图3-20 模块的俯视图图3-21 模块的侧视图本模块提供了如图3-22所示的双列直插八个引脚。图3-

30、22 模块的8个引脚示意图引脚的功能如表3-23所示。表3-23 模块插针接口号码功能方向说明1nRTS/NreadyO可选功能引脚2nCTS/MODE/GPIOI/O可选功能引脚,连接至LED23LinkO可选功能引脚,无线传输指示,连接LED34NresetI复位,低电平有效5VDDI3.3V电源输入引脚6RXDI串口数据接收7TXDO串口数据发送8GNDI接地第三代的Uart-WiFi模块03A相较于前两代的无线传输产品功能更加强大,表3-24列出来03A的产品技术规格。表3-24 模块的技术规格无线部分项目参数无线标准IEEE80.2.11b/g频率范围2.4122.484GHz接收灵

31、敏度8.02.11b: -86 dBm 11Mbps8.02.11g: -71 dBm 54Mbps数据速率8.02.11g: 1,2,5.5,11Mbps8.02.11g: 6,9,12,18,24,36,48,54Mbps续表调制方式DSSS,OFDM,DBPSK,DQPSK,CCK,QAM16/64输出功率802.11b: 182 dBm(typical)802.11g: 151 dBm(typical)天线接口IPX硬件部分接口类型UART接口速率1200115200 bps工作电压3.30.3 V工作电流300mA (typical)存储温度-40+85 工作温度-2575 外形尺寸

32、55.225.411.5 环保认证RoHS软件部分网络类型Infra/Adhoc安全机制WEP/WPA-PSK/WPA2-PSK加密类型WEP64/WEP128/TKIP/CCMP(AES)工作模式自动/命令串口命令AT+指令集网络协议TCP/UDP/ARP/ICMP/DHCP/DNS/HTTP最大Socket连接15TCP连接最大连接数:83.5.2 Uart-WiFi主要功能特性03A在前两代产品的基础上进行了全面的软硬件升级,功能更加强大,使用更加简单:全面支持串口透明数据传输模式,真正实现串口的即插即用全新的AT+指令集,全部基于ASCII格式,简单易懂,使用更容易更加完备的TCP/I

33、P协议栈,支持DHCP协议动态IP地址分配和DNS域名解析功能。内置WEB服务器,实现使用IE浏览器通过无线网络远程配置模块参数更高的传输性能,最高可达110KB/S的发送速率。器件接口有以下特点: 双排插针式接口:HDR254M-2X4 支持波特率范围:1200115200bps 支持硬件RTS/CTS流控 单3.3V供电器件无线部分有以下特点: 支持IEEE802.11b/g无线标准 支持频率范围:2.4122.484GHz 支持两种无线网络类型:基础网(Infra)和自组网(Adhoc) 支持快速联网 支持无线漫游3.6 外围接口单元设计外围接口包括:轻触开关(复位按键,发送按键,删除按

34、键)和TFT彩屏。其外围接口功能就是人机交互,人为的控制器件或从器件那里得到相应的信息反馈,当按下发送按键时就会自动的将显示屏上的个人信息以图片形式发送的与之相连的设备,当按下删除按键时就自动的将当前信息从其该设备上删除。按下复位键就将该设备自动复位。TFT彩屏用于个人名片的显示。轻触开关,它是一种电子开关,使用时轻轻点按开关按钮就可使开关接通,当松开手时开关即断开,其内部结构是靠金属弹片受力弹动来实现通断的。由于接触电阻小、按动有清脆的声音、手感明显、高度规格等方面的原因,在家用电器方面得到广泛的应用如:影音产品、数码产品、遥控器、通讯产品、家用电器、安防产品、玩具、电脑产品等,本次电子名片

35、设计,轻触开关与主控单元STM32F107VC单片机相连,按下时,由于电平的变化,使单片机复位、发送信息、接受信息、删除信息。TFT彩屏模块是薄膜晶体管型液晶显示屏,它的每一个象素点都是由集成在其后的薄膜晶体管来驱动的这样不仅提高了显示屏的响应速度,同时可以精确控制显示色阶,所以TFT液晶的色彩更逼真TFT屏主要的构成包括:背光源、导光板、偏光板、滤光板、玻璃基板、配向膜、液晶材料、薄膜晶体管等,TFT显示屏和驱动IC(控制器)集成在一起,就成了TFT显示模块,本次电子名片使用的TFT彩屏模块使用ILI9320芯片驱动,TFT液晶模块与主控单元STM32F107VC单片机相连,用于显示图片信息

36、。TFTLCD显示屏电路电子名片设计中的显示模块用的是TFTLCD薄膜液晶显示屏,其中DB0:15为16位双向数据线,与STM32处理器PE0:15连接。CS为TFTLCD片选信号,WR为TFTLCD写入信号,RD为TFTLCD读取信号,RS为命令/数据标志,控制管脚分别与STM32相应管脚连接。如图3-25所示。图3-25 TFTLCD彩屏显示电路3.7 电源单元设计电源单元主要为其它各个单元提供必要的能量支持,以维持各个单元的正常运作。设计以充电锂电池供电,而电路需要5V与3.3V电源,因此电源单元包含了5V与3.3V的转换电路,电源模块图如图3-26所示。图3-26 电源管理模块图第四章

37、 程序设计本节主要介绍底层程序的设计思想,为功能算法提供基础。在此,主要介绍Wi-Fi传输数据和采集加速度传感器信息的底层程序开发。4.1 整体控制思想本系统软件的设计基于电子名片需要完成的功能。电子名片需要完成显示名片和传输名片两种功能,所以将系统分为存储显示、传输和接收三个方面来分析。存储显示部分:名片即个人的信息,本系统将名片制作成bmp格式的图片,通过TFT屏显示出来。本课题中bmp格式的图片每张为320*240像素,大约300K。图片存储在SD卡中,本系统支持的最大SD扩展存储空间为2GB。图片的切换通过读取重力传感器采集到的重力加速度的值进行翻页。传输部分:本课题传输的信息为图片信

38、息,采用Wi-Fi方式进行传输。在这个系统中,至少需要两个终端才可以实现传输功能,两个Wi-Fi无线连接后,可以进行数据的传输。本系统通过按键中断进入传输图片的模式,直接传输图片解析成的十六进制形式数据。因为图片的数据量比较大,所以采用无限透明传输模式。接收部分:本课题接收的信息为图片信息,采用Wi-Fi方式接收。接收采用中断方式接收,即当有数据传来时,停止主程序正在执行的动作,进入接收中断模式。将接收到的数据转化成图片格式存储,并通过TFT彩屏显示出来。单片机将这三个部分衔接起来,读取加速度传感器采集到的加速度,和预设的重力加速值进行比较,进行图片向前翻页和向后翻页的动作。当有键按下时,进入

39、按键中断,通过串口发送当前的图片,发送完后再继续执行主程序,当有数据到来时,进入接收中断,将接收到的图片数据转换图片存储并显示,显示完后继续执行主程序。根据题设要求,控制可按照功能要求实现模块化控制。整体的控制流程图如图4-1所示。图4-1 程序整体流程图4.2 软件流程图软件采用分模块思想设计,分为主控单元(包括系统时钟的设置,I/O口的设置,定时器的设置)、无线通信单元、SD卡存储单元、TFT LCD液晶显示单元、外围接口单元以及电源单元。软件的总体设计流程:系统初始化(包括串口初始化、TFT LCD液晶显示屏初始化、重力加速度传感器初始化、Wi-Fi通信模块初始化、SD卡存储器初始化、中

40、断初始化)后,等待判断是否有按键中断或者串口接收中断产生,进而进入相应的中断服务程序,中断处理流程及系统软件总体流程如图4-2所示。图4-2 中断处理流程及系统软件总体流程图若有串口接收中断产生,则执行接收中断服务子程序,将Wi-Fi模块接收到的名片信息存储在SD卡,并且显示在TFT LCD液晶显示屏上。STM32处理器与SD卡之间采用SPI模式通信,SPI模式是处理器通过SPI接口访问SD卡。4.3 存储模块程序设计程序储蓄模块用来海量信息的存储。存储程序设计中包括SD卡初始化、读数据、写数据三部分。利用SPI模式操作SD卡,先要进行软件初始化,初始化包括SPI模式配置和IO口配置,在延时7

41、4CLK之后复位SD,获取卡的类型,查询OCR及其供电状况,接下来设置读写数据块长度,最后发送8CLK后,初始化完成。初始化流程如图4-3所示。图4-3 SD卡初始化流程图根据上面初始化流程,在程序设置过程中,SD卡初始化函数如下:SD_Error SD_Init(void)/SD卡初始化函数 uint32_t i = 0; SD_LowLevel_Init(); /初始化为SPI模式,配置管脚 SD_CS_HIGH(); /将CS置高位 /*! Send dummy byte 0xFF, 10 times with CS high */ /*! Rise CS and MOSI for 80

42、 clocks cycles */ for (i = 0; i = 9; i+) /*! Send dummy byte 0xFF */ SD_WriteByte(SD_DUMMY_BYTE); /*! SD initialized and set to SPI mode properly */ return (SD_GoIdleState();在完成SD卡初始化之后,就可以读写数据了。SD卡读取数据的具体过程时:发送CMD17(SD_CMD_READ_SIGLE_BLOCK),接收卡响应R1 response,等待接收数据起始令牌0XFE,接收数据,接收2字节的CRC,最后发送8个CLK后读

43、取结束。SD卡读数据流程图如图4-4所示。图4-4 SD卡读写文件流程图根据上面读数据流程图,在程序设置过程中,SD卡读文件数据函数如下:SD_Error SD_ReadBlock(uint8_t *pBuffer,uint32_t ReadAddr,uint16_t BlockSize) uint32_t i = 0; SD_Error rvalue = SD_RESPONSE_FAILURE; SD_CS_LOW(); /发送CMD17指令 SD_SendCmd(SD_CMD_READ_SINGLE_BLOCK,ReadAddr, 0xFF); /判断SD卡响应R1为0x00 if(!SD

44、_GetResponse(SD_RESPONSE_NO_ERROR) /接收数据起始令牌0XFE if (!SD_GetResponse(SD_START_DATA_SINGLE_BLOCK_READ) for (i = 0; i BlockSize; i+)/读取SD卡块数据 *pBuffer = SD_ReadByte();/保存接收的数据 pBuffer+; SD_ReadByte(); SD_ReadByte(); rvalue = SD_RESPONSE_NO_ERROR;/接收数据成功标志 SD_CS_HIGH(); /将CS置高 SD_WriteByte(SD_DUMMY_BYT

45、E); /发送8个CLK return rvalue;SD卡初始化完成之后,SD卡写文件数据命令CMD24。SD卡读取数据的过程发送CMD24(SD_CMD_WRITE_SIGLE_BLOCK),接收卡响应R1 response,发送写数据起始令牌0XFE发送数据,发送2字节的CRC,最后发送8个CLK。SD卡写文件数据流程图如图4-4所示。根据上面写数据流程图,在程序设置过程中,SD卡写文件数据函数如下:SD_Error SD_WriteBlock(uint8_t *pBuffer, uint32_t WriteAddr, uint16_t BlockSize) uint32_t i = 0; SD_Error rvalue = SD_RESPONSE_FAILURE;SD_CS_LOW();/发送CMD24指令 SD_SendCmd(SD_CMD_WRITE_SINGLE_BLOCK, WriteAddr, 0xFF);/判断SD卡响应R1为0x00 if (!SD_GetResponse(SD_RESPONSE_NO_ERROR) SD_WriteByte(SD_DUMMY_BY

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1