太原理工大学现代科技学院 毕业设计 - 图文 联系客服

发布时间 : 星期三 文章太原理工大学现代科技学院 毕业设计 - 图文更新完毕开始阅读d8aaceb2c850ad02df804101

●支持JTAG,SWD调试.配合廉价的J-LINK,实现高速低成本的开发调试方案。 ●多达80个IO(大部分兼容5V逻辑),4个通用定时器,2个高级定时器,2个基本定时器,3路SPI接口,2路I2S接口,2路I2C接口,5路USART,一个USB从设备接口,一个CAN接口,SDIO接口,可兼容SRAM,NOR和NAND Flash接口的16位总线-FSMC。

●3路共16通道的12位AD输入,2路共2通道的12位DA输出.支持片外独立电压基准。

●CPU操作电压范围:2.0-3.6V。

STM32F103ZET6硬件系统基本构成如图3-3。

图 3-3 STM32F103ZET6硬件系统构成图

硬件电路由STM32F103为主要核心,图中Flash主要为TFT-LCD提供字库,供电模块为整个系统提供3.3V稳定电压,电压输入为5V可由USB供电,同时可采用锂电池作为备用电源。串口转USB模块可将系统直接通过USB线连接至电脑,将图像数据以及系统信息传输至计算机(上位机)。同时SD卡可保存图像数据。TFT-LCD为2.8寸16位RGB显示屏,屏幕驱动单元为ILI9325主要显示系统的初始化信息,当前运行状态等主要信息。此外,实验过程中还使用了LED指示灯,可以指示当前运行状态,也可以编程使其显示当前帧速率。蜂鸣器,可以提示系统初始化情况。用户按键,可以控制系统保存图像。

–13–

由于微控制器I/O口功能通过程序定义,所以各个模块的连接方式将由微控制器的程序代码决定。

图 3-4 OV2640系统PCB图

本文设计将整个系统设计在一张PCB中大致结构如图3-4

3.4 本章小结

本章主要介绍了基于OV2640图像处理系统的硬件电路设计,包括OV2640传感器工作电路、STM32F103ZET6微控制器电路,上位机通信电路以及图像存储的硬件实现方式。提出了一套以OV2640+STM32F103ZET6的数字图像处理系统。

–14–

第4章 视频压缩存储系统软件设计

4.1 系统流程图

图4-1为系统的主程序流程图,图中while(1)为一个死循环。

开始 初始化系统硬否 While(1) 是 开始扫描按键 按键是否按下 是 执行jpeg采集函数 执行RGB图像采集函数 执行一次DMA传输 执行RGB图像采集函数 执行一次DMA传输 结束

图 4-1 系统流程图

–15–

4.2 系统硬件初始化

在STM32F103上电后,要对各个外设进行初始化,LED、串口、按键、LCD、W25Q128(内装字库)以及初始化OV2640,,以便在后续工作中可以使用各个硬件,随后要为一些变量申请内存,最后挂载SD卡与FLASH。系统初始化工作完成,继续执行后续工作。

4.2.1 LED初始化

本文设计的系统采用两颗红光LED,用于显示帧速率以及图像保存,帧速率设计每次亮暗交替为一帧图像采集及传输完成。LED初始化主要是初始化其对应的I/O口,对应的I/O口时钟等等。 4.2.2 串口初始化

串口采用STM32F103的USMART1,由于传输图像时数据量较大所以串口采用波特率921600,利用STM32库函数uart_init(921600)可将其波特率设置为921600。初始化完成后可采用USART_SendData(USART1,帧缓冲)函数配合循环发送图像。 4.2.3 按键初始化

按键采用了两个按键,用来保存图像,两个按键可分别保存成不同格式的图像,按键主要采用扫描方式监测是否按下按键,此外按键一般分为支持连按和不支持连按,这里初始化采用不支持连按设置。 4.2.4 LCD初始化

LCD初始化与OV2640初始化代码量是整个程序中最多的两个驱动程序,也是最复杂的两个模块。LCD初始化首先要初始化I/O口寄存器,配置输出模式、时钟。由于LCD采用FSMC(可变静态存储控制器)作为缓存,所以要对FSMC进行配置,主要有数据宽度、读写时序等,随后读取LCD器件ID并且通过串口打印ID。最后执行初始化序列,配置LCD各方面设置。最后清屏,初始化完成。 4.2.5 OV2640初始化

OV2640初始化与LCD类似,先初始化I/O寄存器,随后读取器件ID并且串口打印,最后执行初始化序列配置传感器各个工作状态,这里初始化序列通过SCCB写入

–16–