cmos用的是sp82318
做了一块板子
ppifs1和ppifs2是两个同步信号 ppifs3接地了
主要是想用sda scl来实现iic来控制cmos的一些参数设置
不知具体的编程应该怎么实现
之前有看过openadsp的视频 那上面有给出ov9563的地址
这个不知道怎么找出cmos地址
build的时候有这个问题怎么解决?
".\DMA_CONFIG.c", line 25: cc0020: error: identifier "RESTART" is undefined *pDMA0_CONFIG = WNR | WDSIZE_16| DMA2D | RESTART | DI_EN; ^我把RESTART删了会有影响吗?
1. 你找一下 sp82318 的数据手册,数据手册中会有描述其 IIC器件地址为多少。
2. 你注意下你的摄像头复位为高复位还是低复位,确定是否就可以和DSP共用复位。
3. CMOS的驱动代码在OpenADSP网站 下载中可以下到,你直接使用CMOS驱动中的IIC代码即可。那个代码中IIC采用PF0和PF1。
4. RESTART没有定义,你可以查找VDSP自带的帮助文件,确认DMA0_CONFIG 寄存器中 RESTART位于哪一位,然后自己定义一下RESTART即可。或者直接将配置值写入该寄存器对应位。
那个复位的是用硬件实现 应该没多大影响 (暂时还没用)
主要是那个cmos地址 刚才看了器件手册 没有具体写(可能我没认真看到)
看下面一段 是不是说器件地址就是30H?
那个IIC的程序我有看 主要的问题是Bf526的头文件中没有*pFIO的寄存器
而bf533有
这个问题怎么解决呢?
刚才又看了一遍 写地址确实是30H
cmos设置中
void init_OV9653(void){ mcu_i2c.sclk = PF0; //时钟PF脚 mcu_i2c.sdata = PF1; //数据PF脚 mcu_i2c.low_ns = 7000; //低电平延时 ns mcu_i2c.high_ns = 6000; //高电平延时 ns i2c_init(&mcu_i2c);
我自己是用的61 63管脚 是不是不应该写成PF0 PF1?
BF526和BF533的IO控制方法完全不同,你看下VDSP下
Analog Devices\VisualDSP 5.0\Blackfin\Examples\ADSP-BF526 EZ-KIT Lite\Power_On_Self_Test
中的LED的例子,看IO是如何操作的。
使用的IO端口,可以看一下BF526 EZKIT的原理图,看61 63管脚的端口是多少,如PORTFx等。然后根据LED那个代码的配置方法配置你的IO。
或者你找到帮助文件中的端口描述表,搜索PORT F ,找到BF526就可找到更详细的端口描述。
61 63管脚应该是TWI的SDA和SCL管脚 不是普通的io口 这个是不是就不能用普通io的方法去控制了?
是说Analog Devices\VisualDSP 5.0\Blackfin\Examples\ADSP-BF526 EZ-KIT Lite\Power_On_Self_Test
里面的twi吗?我只看到一个
就是twi_interface.c
里面有两个函数
就是用这两个函数来替代之前的IIC的读写吗