OV7670中文版数据手册
- 格式:pdf
- 大小:1.07 MB
- 文档页数:31
2012-03-24 20:42OV7670调试的问题拿出来请大家共同解决硬件:STM32+OV7670+AL422B (电路参照zidong404的)软件思路也是参考zidong404的,现在图像显示基本出来了,但是效果很不好,最关键的是不知道从哪修改。
液晶ssd1289显示的图片如下:输出格式:QVGA RGB565 320*240出现的问题:1、图像分块,而且三块显示的是同一幅图片,不知道是缓存指针读写复位不正常的是不,程序和zidong404的一样的?2、图像重叠,一次显示不是全屏,只是半屏?好像写入的数据不够?我现在很模糊的几个问题是:1、配置QVGA RGB565格式写入缓存AL422的数据是不是320*240*2个字节?如果是,那为何一次显示只有半屏呢?2、还有窗口设置我不是太懂OV7660_config_window(272,16,320,240);// set 240*320 ,谁能帮忙解释一下,272和16这几个数据是怎么得到的?3、还有__nop();这条指令的运用,是直接用吗?需要包含什么文件吗? 51里面用它不是包含一个文件才能使用它吗?弄了半天终于弄出来了!在这里要感谢zidong404的指点。
现在分享一下我的调试结果:1、上面第一和第二个问题出现的原因很简单,摄像头配置出来的图片数据是横屏格式240行,每行320个点,每个像素2个字节,而我的液晶屏配置是竖屏显示的,所以图像分块。
这一点虽然没问题了,但我感觉这样的话图像分块应该是不规则的,而结果是三块一样的图像。
2、还有读写指针复位,如果写指针复位延时不够也会图像分块。
3、还有XCLK时钟我的是8M,这个我试了36M的影响不大,但是不能超过50M,STM32系统时钟72M直接加上也能显示图像,但是有一层绿色的背景色。
4、还有PLL倍频选择旁路PLL图像也会分块,图像发生畸变,大于输入时钟*4就OK了。
5、显示的时候有时液晶背景颜色会是淡黄的不知为何?图像显示正常。
OV7670带FIFO的CMOS摄像头使用说明OV7670是一款带有FIFO的CMOS摄像头芯片,广泛应用于各种嵌入式系统中。
它具有低功耗、高灵敏度和高图像质量等特点,适合于图像采集和处理应用。
以下是OV7670带FIFO的CMOS摄像头的使用说明。
一、硬件连接1.连接供电:将模块的VCC引脚连接到3.3V的电源,GND引脚连接到地。
2.数据传输:-使用I2C协议进行配置:将模块的SDA引脚连接到主控芯片的SDA 引脚,SCL引脚连接到主控芯片的SCL引脚。
-使用FIFO模式进行数据传输:将模块的FIFO_WR引脚连接到主控芯片的写使能引脚,FIFO_RD引脚连接到主控芯片的读使能引脚,FIFO_WE 引脚连接到主控芯片的写时钟引脚,FIFO_OE引脚连接到主控芯片的读时钟引脚,FIFO_RST引脚连接到主控芯片的复位引脚,DATA引脚连接到主控芯片的数据引脚。
二、软件配置1.I2C配置:通过I2C协议对OV7670进行配置。
首先初始化I2C总线,然后发送配置指令给OV7670的I2C地址,通过写入特定的寄存器来配置图像参数,如分辨率、亮度、对比度等。
2.FIFO配置:通过FIFO模式进行数据传输。
首先对OV7670进行FIFO模式的配置,设置FIFO的像素格式、帧率等参数。
然后初始化主控芯片的访问FIFO的接口,设置读写使能信号并根据需要配置写时钟和读时钟。
最后,在读取FIFO数据之前,先进行FIFO的复位以确保数据的正确读取。
三、数据采集和处理1.数据采集:通过FIFO模式进行数据采集,将摄像头拍摄到的图像数据存储到FIFO缓存中。
2. 数据处理:从FIFO缓存中读取图像数据,并进行相关的图像处理操作,如图像解码、颜色空间转换、图像滤波等。
可以使用各种图像处理算法和库来实现不同的功能,如OpenCV等。
四、常见问题和解决方案1.图像质量问题:如果发现图像质量差,可以尝试调整摄像头的参数,如增加亮度、对比度等,或者使用图像后处理算法进行图像增强。
废话后面说,先直接上OV7670寄存器的配置部分const uint8_t OV7670_Reg[][2]={//Frame Rate Adjustment for 24Mhz input clock//30fps PCLK=24MHz{0x11, 0x80},//软件应用手册上设置的是0x80,例程设置的是0x00{0x6b, 0x0a},//PLL控制,软件应用手册上设置的是0x0a,例程设置的是0x40,将PLL调高的话就会产生花屏{0x2a, 0x00},{0x2b, 0x00},{0x92, 0x00},{0x93, 0x00},{0x3b, 0x0a},//Output format{0x12, 0x14},//QVGA(320*240)、RGB//RGB555/565 option(must set COM7[2] = 1 and COM7[0] = 0){0x40, 0x10},//RGB565,effective only when RGB444[1] is low{0x8c, 0x00},//Special effects - 特效//normal{0x3a, 0x04},{0x67, 0xc0},{0x68, 0x80},//Mirror/VFlip Enable - 水平镜像/竖直翻转使能{0x1e, 0x37},//修改配置值将产生图像显示上下或左右颠倒//Banding Filter Setting for 24Mhz Input Clock - 条纹滤波器//30fps for 60Hz light frequency//{0x13, 0xe7},//banding filer enable//{0x9d, 0x98},//50Hz banding filer//{0x9e, 0x7f},//60Hz banding filer//{0xa5, 0x02},//3 step for 50Hz//{0xab, 0x03},//4 step for 60Hz//{0x3b, 0x02},//select 60Hz banding filer//Simple White Balance - 白平衡//{0x13, 0xe7},//AWB、AGC、AGC Enable and ...//{0x6f, 0x9f},//simple AWB//AWBC - 自动白平衡控制(Automatic white balance control)//{0x43, 0x14},//用户手册里这些寄存器的值都是保留(Reserved),不用设置的呀?//{0x44, 0xf0},//{0x45, 0x34},//{0x46, 0x58},//{0x47, 0x28},//{0x48, 0x3a},//AWB Control//{0x59, 0x88},//用户手册连寄存器都是保留,初始值都没提供//{0x5a, 0x88},//{0x5b, 0x44},//{0x5c, 0x67},//{0x5d, 0x49},//{0x5e, 0x0e},//AWB Control//{0x6c, 0x0a},//{0x6d, 0x55},//{0x6e, 0x11},//{0x6f, 0x9f},//AGC/AEC - Automatic Gain Control自动增益补偿/Automatic exposure Control自动曝光控制//{0x00, 0x00},//{0x14, 0x20},//{0x24, 0x75},//{0x25, 0x63},//{0x26, 0xA5},//AEC algorithm selection - AEC公式选择//{0xaa, 0x94},//基于平均值的AEC算法Average-based AEC algorithm/基于直方图的AEC算法Histogram-based AEC algorithm//基于直方图的AGC/AEC的控制//{0x9f, 0x78},//{0xa0, 0x68},//{0xa6, 0xdf},//{0xa7, 0xdf},//{0xa8, 0xf0},//{0xa9, 0x90},//Fix Gain Control - 固定增益控制//{0x69, 0x5d},//Fix gain for Gr channel/for Gb channel/for R channel/for B channel//Color saturation 颜色饱和度+ 0//{0x4f, 0x80},//{0x50, 0x80},//{0x51, 0x00},//{0x52, 0x22},//{0x53, 0x5e},//{0x54, 0x80},//{0x58, 0x9e},//Brightness - 亮度+ 0//{0x55, 0x00},//Contrast - 对比度+ 0//{0x56, 0x40},//Gamma Curve - 伽马曲线//{0x7a, 0x20},//{0x7b, 0x1c},//{0x7c, 0x28},//{0x7d, 0x3c},//{0x7e, 0x55},//{0x7f, 0x68},//{0x80, 0x76},//{0x81, 0x80},//{0x82, 0x88},//{0x83, 0x8f},//{0x84, 0x96},//{0x85, 0xa3},//{0x86, 0xaf},//{0x87, 0xc4},//{0x88, 0xd7},//{0x89, 0xe8},//Matrix Coefficient - 色彩矩阵系数//{0x4f, 0x80},//{0x50, 0x80},//{0x51, 0x00},//{0x52, 0x22},//{0x53, 0x5e},//{0x54, 0x80},//Lens Correction Option - 镜头补偿选项 //{0x62, 0x00},//{0x63, 0x00},//{0x64, 0x04},//{0x65, 0x20},//{0x66, 0x05},//{0x94, 0x04},//effective only when LCC5[2] is high//{0x95, 0x08},//effective only when LCC5[2] is high//注释这些配置的话,就倾斜显示,并显示多块,这到底是控制什么的?跟时序图有关?{0x17, 0x16},//行频Horizontal Frame开始高八位(低三位在HREF[2:0]){0x18, 0x04},//行频Horizontal Frame结束高八位(低三位在HREF[5:3]){0x19, 0x02},//场频Vertical Frame开始高八位(低二位在VREF[1:0]){0x1a, 0x7b},//场频Vertical Frame结束高八位(低二位在VREF[3:2]){0x32, 0x80},//HREF{0x03, 0x06},//VREF//注释这个配置的话,就显示花屏了{0x15, 0x02},//配置PCLK、HREF、VSYNC相关//Automatic black Level Compensation - 自动黑电平校正{0xb0, 0x84},//调试时注释这项配置时,颜色显示不正常了,红色练绿色,绿色变红色,但用户手册对这寄存器是保留RSVD//{0xb1, 0x0c},//{0xb2, 0x0e},//{0xb3, 0x82},//{0xb8, 0x0a},//SCALING_xx寄存器//{0x70, 0x00},//{0x71, 0x00},//{0x72, 0x11},//{0x73, 0x08},//{0x3e, 0x00},//ADC//{0x37, 0x1d},//ADC控制ADC Control//{0x38, 0x71},//ADC和模拟共模控制ADC and Analog Common Mode Control//{0x39, 0x2a},//ADC偏移控制ADC Offset Control//零杂的寄存器//{0x92, 0x00},//空行低八位Dummy Line low 8 bits//{0xa2, 0x02},//像素时钟延时//{0x0c, 0x0c},//{0x10, 0x00},//{0x0d, 0x01},//{0x0f, 0x4b},//{0x3c, 0x78},//{0x74, 0x19},//用户手册里这几个寄存器都是保留RSVD//{0x0e, 0x61},//{0x16, 0x02},//{0x21, 0x02},//{0x22, 0x91},//{0x29, 0x07},//{0x33, 0x0b},//{0x35, 0x0b},//{0x4d, 0x40},//{0x4e, 0x20},//{0x8d, 0x4f},//{0x8e, 0x00},//{0x8f, 0x00},//{0x90, 0x00},//{0x91, 0x00},//{0x96, 0x00},//{0x9a, 0x80},};刚开始学OV7670摄像头,我想大家跟我一样心里很毛躁吧,一个模块需要你配置100多个寄存器,但用户手册对寄存器的介绍却草草的一笔带过,自己无从下手啊,只能看开发板给的例程和上网找一些大虾的帖子了。
OV7670的SCCB波形记录OV7670是一种具有SCCB(Serial Camera Control Bus)接口的图像传感器。
SCCB是一种串行的、双向的、主从模式下的总线协议,用于控制和配置摄像头的相关参数。
本文将记录OV7670的SCCB波形,分析不同控制命令的传输过程。
OV7670的SCCB总线使用两条线进行传输,即SDA(Serial Data Line)和SCL(Serial Clock Line)。
SDA负责数据的传输,而SCL则提供时钟信号。
SCCB的通信过程包括起始条件、地址传输、数据传输和停止条件。
首先,我们记录起始条件的波形。
起始条件是指在传输数据之前首先发送一个低电平到高电平的跳变来表示传输开始。
在波形上可以看到SCL在高电平状态,而SDA发生从高电平到低电平的跳变。
这个跳变表示起始条件的建立。
接下来是地址传输的波形。
地址传输用于确定要访问的寄存器或摄像头的内存地址。
先发送设备地址,然后发送寄存器地址。
设备地址是通过SDA线传输的,而时钟信号由SCL提供。
通过观察SCL和SDA信号的变化,我们可以找到传输过程中的起始、终止和数据位。
然后是数据传输的波形。
数据传输用于读取或写入寄存器的内容。
在读取时,先发送设备地址和寄存器地址,然后摄像头返回数据。
在写入时,先发送设备地址和寄存器地址,然后发送要写入的数据。
我们可以通过观察SCL和SDA信号的变化来确定传输过程中的数据位。
最后是停止条件的波形。
停止条件是指在传输数据之后发送一个高电平到低电平的跳变来表示传输结束。
在波形上可以看到SCL在高电平状态,而SDA发生从低电平到高电平的跳变。
这个跳变表示停止条件的建立。
通过对OV7670的SCCB波形的记录和分析,我们可以了解SCCB协议的传输过程。
这对于理解OV7670的工作原理和调试可能的问题很有帮助。
而具体的SCCB波形记录由于篇幅限制无法在此详述,请参考相关的技术文档和资料。
OV7670 Camera Board (B)使 用 说 明 V1.2微雪电子w ww.w a v e s目录1.OV7670一般摄像头模块1.1简介1.2管脚定义1.3控制方式说明 1.4采集图像的基本方法2.OV7670带FIFO 摄像头模块2.1简介 2.2管脚定义2.3控制方式说明 2.4图像采集的基本方法3.问题解答3.1图像采集难吗3.2学习图像方面的知识需要哪些基础 3.3初学者遇到问题该怎么解决 3.4模块提供那些资料3.5单片机能够真正的采集图像吗3.6带FIFO 和不带FIFO 的模块到底哪个好,有什么区别 3.7模块上有晶振好,还是没晶振好 3.8摄像头寄存器该怎么设置3.9 微雪电子模块提供的Demo 输出的数据是什么格式的w ww.w a ve s3.10如果想真正实现图像的采集并且能够处理图像数据该如何做 3.11 微雪电子的那个模块能够适合飞思卡尔小车的比赛 3.12 微雪电子的模块输出到底是模拟的还是数字的3.13 微雪电子模块的质量如何3.14 微雪电子几种驱动板的功能,区别是什么 3.15如何检测微雪电子摄像头模块是否损坏 3.16 微雪电子摄像头模块和模组的区别是什么w ww.w a ve s1.OV7670一般摄像头模块1.简介:OV7670一般模块指微雪电子推出的低成本数字输出CMOS 摄像头,其摄像头包含30w 像素的CMOS 图像感光芯片,3.6mm 焦距的镜头和镜头座,板载CMOS 芯片所需要的各种不同电源(电源要求详见芯片的数据文件),板子同时引出控制管脚和数据管脚,方便操作和使用。
图1.OV7670一般模块2.管脚定义:如图,控制传感器所需的管脚定义如下:3V3-----输入电源电压(推荐使用3.3,5V 也可,但不推荐使用) GDN-----接地点SIO_C---SCCB 接口的控制时钟(注意:部分低级单片机需要上拉控制,和I2C 接口类似)w ww.w a ve sSIO_D---SCCB 接口的串行数据输入(出)端(注意:部分低级单片机需要上拉控制,和I2C 接口类似)VSYNC---帧同步信号(输出信号) HREF----行同步信号(输出信号)PCLK----像素时钟(输出信号) XCLCK---时钟信号(输入信号) D0-D7---数据端口(输出信号) RESTE---复位端口(正常使用拉高)PWDN----功耗选择模式(正常使用拉低)图2.微雪摄像头接口定义3.控制方式说明采集图像数据需要严格按照OV 公司的芯片时序进行,这些时序包括:(1) S CCB 通讯时序,其作用是设置芯片内部寄存器,以控制图像的各种所w ww.w a ve s需功能。
OV7670的SCCB波形记录OV7670是一款基于SCCB(串行摄像头控制总线)协议的摄像头模块,它可以通过SCCB协议与主控设备进行通信和控制。
在本文中,我将为你记录OV7670的SCCB波形,以便更好地理解其通信原理和工作机制。
SCCB协议是一种针对摄像头模块的串行通信协议,类似于I2C协议。
它通过两根信号线(SIOC和SIOD)实现主控设备与摄像头模块之间的数据传输和控制。
下面是一份OV7670的SCCB波形记录:1.启动信号:在开始进行SCCB通信之前,主控设备需要发送一个启动信号,以表明接下来要进行SCCB通信。
启动信号由SIOC引脚拉低,SIOD引脚先拉高再拉低构成。
2.设备地址:主控设备需要发送一个设备地址,以指定要控制的摄像头模块。
设备地址由SIOC引脚拉高,SIOD引脚先拉高再拉低构成。
3.寄存器地址:主控设备需要发送一个寄存器地址,以指定要写入或读取的寄存器。
寄存器地址由SIOC引脚拉高,SIOD引脚先拉高再拉低构成。
4.写入数据:主控设备将要写入的数据发送给摄像头模块。
写入数据由SIOC引脚拉高,SIOD引脚的高低电平表示二进制数据的1和0。
5.等待应答:主控设备在发送完写入数据后,需要等待摄像头模块发送应答信号。
应答信号由摄像头模块通过SIOD引脚拉低来表示。
6.读取数据:主控设备需要读取摄像头模块的数据时,向摄像头模块发送一个读取命令。
读取命令由SIOC引脚拉高,SIOD引脚先拉低再拉高构成。
7.读取数据应答:摄像头模块在收到读取命令后,会发送要读取的数据给主控设备。
读取的数据由SIOC引脚拉高,SIOD引脚的高低电平表示二进制数据的1和0。
以上是OV7670的SCCB通信过程中的一些重要波形记录。
通过这些波形,我们可以清楚地了解到每个步骤的具体控制信号和数据传输情况。
这有助于我们更好地理解OV7670和SCCB协议的工作原理,并可以根据需要进行相关的控制和操作。
总结起来,OV7670的SCCB波形记录包括启动信号、设备地址、寄存器地址、写入数据、等待应答、读取数据和读取数据应答等几个重要步骤的信号和数据情况。
废话后面说,先直接上OV7670寄存器的配置部分const uint8_t OV7670_Reg[][2]={//Frame Rate Adjustment for 24Mhz input clock//30fps PCLK=24MHz{0x11, 0x80},//软件应用手册上设置的是0x80,例程设置的是0x00{0x6b, 0x0a},//PLL控制,软件应用手册上设置的是0x0a,例程设置的是0x40,将PLL调高的话就会产生花屏{0x2a, 0x00},{0x2b, 0x00},{0x92, 0x00},{0x93, 0x00},{0x3b, 0x0a},//Output format{0x12, 0x14},//QVGA(320*240)、RGB//RGB555/565 option(must set COM7[2] = 1 and COM7[0] = 0){0x40, 0x10},//RGB565,effective only when RGB444[1] is low{0x8c, 0x00},//Special effects - 特效//normal{0x3a, 0x04},{0x67, 0xc0},{0x68, 0x80},//Mirror/VFlip Enable - 水平镜像/竖直翻转使能{0x1e, 0x37},//修改配置值将产生图像显示上下或左右颠倒//Banding Filter Setting for 24Mhz Input Clock - 条纹滤波器//30fps for 60Hz light frequency//{0x13, 0xe7},//banding filer enable//{0x9d, 0x98},//50Hz banding filer//{0x9e, 0x7f},//60Hz banding filer//{0xa5, 0x02},//3 step for 50Hz//{0xab, 0x03},//4 step for 60Hz//{0x3b, 0x02},//select 60Hz banding filer//Simple White Balance - 白平衡//{0x13, 0xe7},//AWB、AGC、AGC Enable and ...//{0x6f, 0x9f},//simple AWB//AWBC - 自动白平衡控制(Automatic white balance control)//{0x43, 0x14},//用户手册里这些寄存器的值都是保留(Reserved),不用设置的呀?//{0x44, 0xf0},//{0x45, 0x34},//{0x46, 0x58},//{0x47, 0x28},//{0x48, 0x3a},//AWB Control//{0x59, 0x88},//用户手册连寄存器都是保留,初始值都没提供//{0x5a, 0x88},//{0x5b, 0x44},//{0x5c, 0x67},//{0x5d, 0x49},//{0x5e, 0x0e},//AWB Control//{0x6c, 0x0a},//{0x6d, 0x55},//{0x6e, 0x11},//{0x6f, 0x9f},//AGC/AEC - Automatic Gain Control自动增益补偿/Automatic exposure Control自动曝光控制//{0x00, 0x00},//{0x14, 0x20},//{0x24, 0x75},//{0x25, 0x63},//{0x26, 0xA5},//AEC algorithm selection - AEC公式选择//{0xaa, 0x94},//基于平均值的AEC算法Average-based AEC algorithm/基于直方图的AEC算法Histogram-based AEC algorithm//基于直方图的AGC/AEC的控制//{0x9f, 0x78},//{0xa0, 0x68},//{0xa6, 0xdf},//{0xa7, 0xdf},//{0xa8, 0xf0},//{0xa9, 0x90},//Fix Gain Control - 固定增益控制//{0x69, 0x5d},//Fix gain for Gr channel/for Gb channel/for R channel/for B channel//Color saturation 颜色饱和度+ 0//{0x4f, 0x80},//{0x50, 0x80},//{0x51, 0x00},//{0x52, 0x22},//{0x53, 0x5e},//{0x54, 0x80},//{0x58, 0x9e},//Brightness - 亮度+ 0//{0x55, 0x00},//Contrast - 对比度+ 0//{0x56, 0x40},//Gamma Curve - 伽马曲线//{0x7a, 0x20},//{0x7b, 0x1c},//{0x7c, 0x28},//{0x7d, 0x3c},//{0x7e, 0x55},//{0x7f, 0x68},//{0x80, 0x76},//{0x81, 0x80},//{0x82, 0x88},//{0x83, 0x8f},//{0x84, 0x96},//{0x85, 0xa3},//{0x86, 0xaf},//{0x87, 0xc4},//{0x88, 0xd7},//{0x89, 0xe8},//Matrix Coefficient - 色彩矩阵系数//{0x4f, 0x80},//{0x50, 0x80},//{0x51, 0x00},//{0x52, 0x22},//{0x53, 0x5e},//{0x54, 0x80},//Lens Correction Option - 镜头补偿选项 //{0x62, 0x00},//{0x63, 0x00},//{0x64, 0x04},//{0x65, 0x20},//{0x66, 0x05},//{0x94, 0x04},//effective only when LCC5[2] is high//{0x95, 0x08},//effective only when LCC5[2] is high//注释这些配置的话,就倾斜显示,并显示多块,这到底是控制什么的?跟时序图有关?{0x17, 0x16},//行频Horizontal Frame开始高八位(低三位在HREF[2:0]){0x18, 0x04},//行频Horizontal Frame结束高八位(低三位在HREF[5:3]){0x19, 0x02},//场频Vertical Frame开始高八位(低二位在VREF[1:0]){0x1a, 0x7b},//场频Vertical Frame结束高八位(低二位在VREF[3:2]){0x32, 0x80},//HREF{0x03, 0x06},//VREF//注释这个配置的话,就显示花屏了{0x15, 0x02},//配置PCLK、HREF、VSYNC相关//Automatic black Level Compensation - 自动黑电平校正{0xb0, 0x84},//调试时注释这项配置时,颜色显示不正常了,红色练绿色,绿色变红色,但用户手册对这寄存器是保留RSVD//{0xb1, 0x0c},//{0xb2, 0x0e},//{0xb3, 0x82},//{0xb8, 0x0a},//SCALING_xx寄存器//{0x70, 0x00},//{0x71, 0x00},//{0x72, 0x11},//{0x73, 0x08},//{0x3e, 0x00},//ADC//{0x37, 0x1d},//ADC控制ADC Control//{0x38, 0x71},//ADC和模拟共模控制ADC and Analog Common Mode Control//{0x39, 0x2a},//ADC偏移控制ADC Offset Control//零杂的寄存器//{0x92, 0x00},//空行低八位Dummy Line low 8 bits//{0xa2, 0x02},//像素时钟延时//{0x0c, 0x0c},//{0x10, 0x00},//{0x0d, 0x01},//{0x0f, 0x4b},//{0x3c, 0x78},//{0x74, 0x19},//用户手册里这几个寄存器都是保留RSVD//{0x0e, 0x61},//{0x16, 0x02},//{0x21, 0x02},//{0x22, 0x91},//{0x29, 0x07},//{0x33, 0x0b},//{0x35, 0x0b},//{0x4d, 0x40},//{0x4e, 0x20},//{0x8d, 0x4f},//{0x8e, 0x00},//{0x8f, 0x00},//{0x90, 0x00},//{0x91, 0x00},//{0x96, 0x00},//{0x9a, 0x80},};刚开始学OV7670摄像头,我想大家跟我一样心里很毛躁吧,一个模块需要你配置100多个寄存器,但用户手册对寄存器的介绍却草草的一笔带过,自己无从下手啊,只能看开发板给的例程和上网找一些大虾的帖子了。