关于ESP在I2C Camer从机模式下FIFO 模式的请教
Posted: Tue Jan 31, 2023 12:48 pm
学习ESP32摄像头的样例,例子跑通,但对于ll_cam.c(components\esp32-camera\target\esp32)中FIFO模式,确有不解,希望有人能帮忙解释
参考代码和esp32_technical_reference_manual_cn.pdf,大致知道上述3个枚举对应FIFO 模式(I2S_RX_FIFO_MOD[2:0])中的3种。
对于样例中设置FIFO模式的函数ll_cam_set_sample_mode,确实不甚明了,该函数根据下面两个参考因素,确定使用哪种模式
1.摄像头的型号
2.摄像头输入的时钟频率(XCLK)
摄像头型号可能可以理解,因为不同摄像头可能时序不同,但和时钟频率是什么关系呢?
Code: Select all
typedef enum {
/* camera sends byte sequence: s1, s2, s3, s4, ...
* fifo receives: 00 s1 00 s2, 00 s2 00 s3, 00 s3 00 s4, ...
*/
SM_0A0B_0B0C = 0,
/* camera sends byte sequence: s1, s2, s3, s4, ...
* fifo receives: 00 s1 00 s2, 00 s3 00 s4, ...
*/
SM_0A0B_0C0D = 1,
/* camera sends byte sequence: s1, s2, s3, s4, ...
* fifo receives: 00 s1 00 00, 00 s2 00 00, 00 s3 00 00, ...
*/
SM_0A00_0B00 = 3,
} i2s_sampling_mode_t;
对于样例中设置FIFO模式的函数ll_cam_set_sample_mode,确实不甚明了,该函数根据下面两个参考因素,确定使用哪种模式
1.摄像头的型号
2.摄像头输入的时钟频率(XCLK)
摄像头型号可能可以理解,因为不同摄像头可能时序不同,但和时钟频率是什么关系呢?