有哪位大神试过100S PE11输出时钟的,怎么配置都无法输出时钟
离线
联系上下文看, 这个应该是 Camera 的 MCLK 引脚? 让摄像头省掉有源晶体的。
如果是的话, 是否需要使能 Camera ?
是的,驱动摄像头,想省掉晶振,使能了CSI时钟和使能CSI_EN,测试都没有发现有时钟输出
离线
引脚复用应该也设置了吧,最好贴一下代码分析
首先设置IO为CSI,然后配置上拉,打开CSI时钟,复位CSI,使能CSI_EN
//-----SET CSI IO ----------------------
PE_CFG0 &= 0X00000000;
PE_CFG0 |= 0X22222222;
PE_CFG1 &= 0XFFFF0000;
PE_CFG1 |= 0X00002222;
PE_PULL0 &= 0XFF000000;
PE_PULL0 |= 0X00555555;
DRAM_GATING_REG |= 0x02;
delay_ms(1);
//---open csi clk-------
BUS_CLK_GATING_REG1 |= (1 << 8);
//---CSI-CLK EN --------------
CSI_CLK_REG &= ~((1 << 15) | (7 << 8) | (0X0F << 1));
CSI_CLK_REG |= ((1 << 15) | (5 << 8) | (1 << 1));
//--csi reset--------------
BUS_SOFT_RST_REG1 |= (1 << 8);
//---CSI_EN----------
CSI_EN_REG |= 0x01;
离线
参考这个帖子: https://whycan.cn/t_2039.html
我在荔枝派zero跑是ok的,直接用V3s输出的时钟。
以下 2019-03-26 更新:
----------------------------------
驱动代码:
https://github.com/torvalds/linux/tree/master/drivers/media/platform/sunxi/sun6i-csi
https://github.com/torvalds/linux/blob/master/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
https://github.com/torvalds/linux/blob/master/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c设备树配置方法:
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/media/sun6i-csi.txt
谢谢晕哥!!!
离线
你是裸奔代码吗?参考https://whycan.cn/t_1457.html代码里的PWM驱动。duty和period要参考手册计算一下,忘了是多少了,可以调成12MHz占空比50%的波形。
还有这种操作,没想到用这一种方法,试一下
离线
period大概83的样子,12M波形
离线
请问大佬们,f1c200s手册上GPIO这章节,说PE11是CLK_OUT,PE12是DA_MCLK,请问这两个哪个是能够给摄像头提供24MHz主时钟的输出引脚?多谢大佬路过指导下了。感谢。
PE11输出CLK肯定是可以的,但是公开的手册上没有这部分寄存器内容
离线