版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
低像素图像传感器硬件二值化系统的程序设计与调试案例分析目录TOC\o"1-3"\h\u7532低像素图像传感器硬件二值化系统的程序设计与调试案例分析 [18],对于大部分单片机的初学者而言,keil是最好的选择,keil可以选用C语言进行编程,C语言相交于其它语言来说更加容易进行学习,使用更加灵活,对于程序的调试也更加方便。1.2软件程序总体设计1.2.1系统软件总体程序设计对于整个设计系统而言,无论是软件还是硬件的设计都是十分重要的,缺少任何一部分,本次设计都将无法完成,硬件是程序功能实现的载体,软件是硬件功能实现的保障,只有软件和硬件搭配好,软件按照硬件的需求设计,硬件按照软件的设计工作,设计的系统才能按照要求完成相应的功能。对于本次设计而言,系统软件的总体设计包括:(1)摄像头初始化、设置好摄像头的参数;(2)单片机读取二值化后的数据;(3)显示屏初始化,设置好显示屏的参数;(4)将单片机存储的数据传输给显示屏;(5)显示屏显示图片。系统软件的总体设计流程框图如图1.1所示。
图1.1系统软件总体流程图1.2.2OV7670摄像头模块程序设计OV7670的驱动需要单片机通过SCCB总线来实现,单片机对OV7670寄存器的读写都是通过SCCB来实现的,SCCB时序图如下图1.2所示。由SCCB时序图可知,两线制SCCB只需要SIO_C和SIO_D即可,通过对SIO_C和SIO_D的0、1配置即可启动或停止。SCCB的起始信号的编程需要先将SIO_D置1,将SIO_C置1,经过一定的 图1.2SCCB时序图 图1.3OV7670程序设计流程图时间间隔之后,需要将SIO_D置0,经过一定的时间延迟,再将SIO_C置0,至此SCCB的起始信号就完成了,SCCB起始信号的编程如:SCCB_SID=1;SCCB_SIC=1;Delayus(175);SCCB_SID=0;Delayus(175);SCCB_SIC=0;同理,由SCCB时序图可得到SCCB的停止信号编程如:SCCB_SID=0;Delayus(175);SCCB_SIC=1;Delayus(175);SCCB_SID=1;Delayus(175);SCCB总线的编程结束就该编写OV7670的驱动程序了,OV7670的程序设计流程图如图1.3所示,先要对OV7670的寄存器进行配置,寄存器配置完成后就可以对摄像头进行初始化,初始化完成摄像头开始存储图像数据,摄像头存储数据的过程为:等待OV7670信号、FIFO写指针复位、FIFO写使能、等待第二个OV7670信号、FIFO写禁止。一帧图像数据存储完成之后,将对读取图像数据,读取图像数据的过程为:FIFO写指针复位、给FIFO读时钟(FIFO_RCLK)、读取一个像素字节、循环读一帧像素图像结束。图1.4摄像头存储数据过程图1.5读取图像数据过程1.2.312864显示程序设计12864屏幕被分为上下两个半屏,对12864写数据首先需要写入垂直坐标,紧接着要写入水平坐标,将坐标定好才能写入数据,需要足以的是12864使用时水平地址可以自动加1,但是垂直地址不会,需要设计程序的时候进行设置,且在写数据时,需要关闭图形显示。12864程序设计流程图如下图1.6所示,首先需要与其它器件的程序设计一样,需要对12846进行初始化,初始化里要包括清屏指令,要对屏幕进行清屏。初始化完成后就可以设计读取数据的程序了,LCD12864需要从单片机存储器内读出保存的图像数据信息,读取完成后需要将数据写到显示屏上进行显示,LCD12864使用前需要进行查忙,只有当LCD_busy为0时,才能对LCD写指令和数据。图1.612864程序设计流程图1.3本章小结本章的内容是对整个系统的程序进行设计,首先对整体程序设计进行介绍,本次设计的任务是完成硬件图像二值化的设计,所以总体程序设计流程是先对各器件需要进行初始化的进行初始化,初始化完成后需要驱动摄像头进行工作,摄像头要获取图像数据,将图像数据经过二值化电路后传输给单片机,单片机将图像数据进行存储,最后再将图像数据传输给显示屏,通过显示屏对图像进行显示。在对整体设计思路了解后就需要对各模块进行具体的程序设计,要想驱动摄像头工作必须经过SCCB总线,对摄像头进行配置,SCCB信号的起始和停止的设计需要参照SCCB时序图进行配置,工作完成后就可以驱动摄像头进行工作了;摄像头程序设计完成还需要对显示屏进行程序设计,读取数据,将数据写入进行显示。第2章系统调试2.1程序的编译本文前几章已经将硬件电路搭建好,并且完成了对单片机程序的编写,本次设计的大部分工作已经完成,接了下来只需要对单片机进行程序的烧录和电路的调试,本次设计的工作就算是完成了。对于keil和单片机来说,用C语言写好的程序并不能直接烧录到单片机内,单片机不能识别,需要对程序进行编译,编译好生成的HEX文件才能往单片机内烧录。Keil的编译过程如下:(1)创建新的工程项目文件,并对项目工程进行保存如下图2.1;图2.SEQ图表\*ARABIC1创建工程项目(2)利用魔术棒(目标选项设置)对芯片型号进行选择如下图2.2所示,本设计选用的是STC8A8K64S4A12;(3)创建main.c文档如下图2.3所示,主程序将在该文档中进行编写;(4)将main.c文档添加到项目中;(5)在新建的main.c文档输入编写的程序代码,如下图2.4;(6)保存创建的源程序项目文件;图2.2选择芯片类型图2.3新建main.c文档图2.4输入程序代码(7)程序代码输入完成之后要对程序进行编译,在编译之前需要利用魔术棒将生成HEX文件勾选上如图2.5所示,否则编译之后不会生成HEX文件;图2.5设置生成HEX文件(8)一系列设置完成之后就可以对程序进行编译,编译无错误警告,如下图2.6所示;图2.6编译提示程序编译完成,无错误、无警告,接下来就可以把程序下载到单片机里,下载用到的软件是由STC公司提出的STC-ISP软件,其页面如下图2.7所示,首先将电脑连接单片机,选择单片机型号,选择串口号,串口号如果不知道也可用软件自带的扫描,可以自动识别串口号,其次需要选择程序运行时单片机的工作频率,设置完成之后只需要选择之前编译完成的HEX文件,点击下载即可将程序下载到单片机内部,当然,下载时也可对波特率、起始地址等进行选择,单片机的下载过程首先需要擦除之前的程序,擦除完成之后才能够将新的程序下载进去,故单片机程序的下载需要一定的时间。图2.7程序下载软件2.2电路测试对于二值化电路的设计是否成功,选用仿真软件进行仿真,仿真结果如下图2.8所示,将仿真结果在示波器上进行显示,由示波器可知,二值化电路能够正常工作,能够很好的将电压置为0或1。打出板子之后需要按照原理图将各器件焊接到板子上,焊接时需要注意要按照原理图对应的器件位置进行焊
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSPSTC 170-2025隧道掘进机(TBM)数据采集、存储与前处理技术规程
- T/ZAWS 009-2024加氢站用高压氢气管道安装及检测规范
- T/HBSL 14-2025生产建设项目水土保持单元工程施工质量验收规范
- T/CIE 265-2024硅基无源光电器件电磁仿真规范
- T/CAOE 93-2025智慧海洋应急通信试验网络终端设备技术要求
- T/CSAE 482-2025纯电动与混合动力越野乘用车爬坡与脱困性能试验方法
- 2025~2026学年江西吉安市吉水县人教版五年级下册期末数学试卷【附答案】
- AI在梵语巴利语中的应用
- 2026学年广东省河源市三年级数学期末自测模拟难点突破题详细参考解析详细答案和解析
- PHP 上机考试试题(含详细答案解析)
- 《低空经济概论》课件 学习情境6 低空经济政策法规与标准体系
- 2026年广东省学法考试年度考试(考场一)参考答案
- 2026年脑血管介入考试题及答案
- 危化品重大危险源管理
- SK型静态混合器设计计算书
- 2026年5月23日甘肃省兰州市直机关公开选调笔试真题及解析
- 2025艾梅乙工作制度及流程
- 2026年全国肿瘤防治宣传周知识普及讲座课件
- 路由和交换技术(第四版)教案 项目13 IPv6技术
- AI赋能中小学英语写作教学:实 用策略与案例分析【课件文档】
- 议论文主体段写作(专项训练)-2026年高考语文一轮复习
评论
0/150
提交评论