蓝莓派项目地址: https://github.com/petit-miner/Blueberry-PI
购买链接(以下店主与楼主均没有PY关系):
OV2640模组: https://item.taobao.com/item.htm?id=573434138871
OV7670模组: https://item.taobao.com/item.htm?id=582340316449
荔枝派zero V3s 开发板: https://item.taobao.com/item.htm?id=548671148384
参考链接: https://whycan.cn/t_1513.html
参考链接: https://licheezero.readthedocs.io/zh/latest/%E5%BA%94%E7%94%A8/USB_cam.html
以下是 2019-01-10 更新 (9楼):
--------------------------------------------------------------------------
镜像dump到TF卡, 我用的是芯天下的sd nand:
sudo dd of=/dev/sdX if=V3s_linux_4_2_0_ov2640_debugdump.bin
本固件是 荔枝派新板(黑色一体板) https://item.taobao.com/item.htm?id=548671148384
配 ov2640 摄像头: https://item.taobao.com/item.htm?id=573434138871
登陆账号: root
登陆密码: root抓图命令:
fswebcam -S 1 -d /dev/video0 -p UYVY -r 800x600 test.jpg以上购买链接均与本人没有 PY 关系
围观蓝莓派(Blueberry-PI)之后, 一定要试一试 主线 Linux DVP CSI 摄像头
链接: https://whycan.cn/t_2039.html有事留言,无事围观
发布一个荔枝派新板子能用ov2640的固件: V3s_linux_4_2_0_ov2640_debugdump_20190110.7z (账号 root / 密码 root)
以下 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
离线
镜像dump到TF卡, 我用的是芯天下的sd nand:
sudo dd of=/dev/sdX if=V3s_linux_4_2_0_ov2640_debugdump.bin
本固件是 荔枝派新板(黑色一体板) https://item.taobao.com/item.htm?id=548671148384
配 ov2640 摄像头: https://item.taobao.com/item.htm?id=573434138871
登陆账号: root
登陆密码: root抓图命令:
fswebcam -S 1 -d /dev/video0 -p UYVY -r 800x600 test.jpg以上购买链接均与本人没有 PY 关系
围观蓝莓派(Blueberry-PI)之后, 一定要试一试 主线 Linux DVP CSI 摄像头
链接: https://whycan.cn/t_2039.html有事留言,无事围观
发布一个荔枝派新板子能用ov2640的固件: V3s_linux_4_2_0_ov2640_debugdump_20190110.7z
离线
晕哥 说:dearsohucom 说:晕哥能否写个指导让我等小白也学习下编译配置的过程:D
我还没有编译过, 只是把蓝莓派gihub仓库里面的文件打包了测试了一下而已,发现荔枝派可以直接运行
我用您编译的下载到SD卡上,拍摄的图片好暗啊,勉强能看出来拍到人像了,这是什么原因呢?
对, 我这里也一样,
应该是还要配 ov2460 的寄存器,
你可以发email与作者沟通:
marcel.thuermer#smail.emt.h-brs.de
我发过两次, 回复很快的
有消息可以发上来哦
离线
拍照图像过暗的问题, 不知道这个能否解决:
https://github.com/ArduCAM/Arduino/issues/170
void ArduCAM::set_Brightness(uint8_t Brightness)
{
switch(Brightness)
{
case Brightbess4:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x40);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess3:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x30);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess2:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x20);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess1:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x10);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess0:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x00);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
}
}
https://github.com/torvalds/linux/blob/master/drivers/media/i2c/ov2640.c
修改这个 ov2640_init_regs
还有一些网友反应摄像头有条纹,
猜测可能是摄像头电源没有处理好。
离线
@晕哥 我也刚买了个CSI的摄像头, 正在翻论坛的帖子.
看以往的记录, 主线linux 不支持csi 摄像头?
https://github.com/torvalds/linux/blob/master/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
看这个文件的历史提交记录:
https://github.com/torvalds/linux/commits/master/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c
2018-11-23 之后主线才正式支持 CSI DVP 摄像头, 南京一家公司提交的代码.
理论上支持 V3s(S3), A31, H3, A64 等全志芯片了
static const struct of_device_id sun6i_csi_of_match[] = {
{ .compatible = "allwinner,sun6i-a31-csi", },
{ .compatible = "allwinner,sun8i-h3-csi", },
{ .compatible = "allwinner,sun8i-v3s-csi", },
{ .compatible = "allwinner,sun50i-a64-csi", },
{},
};
离线
离线
那个命令行里面的 /dev/sdX 要根据你的实际插入读卡器,
在生成linux系统生成的设备确定是 sdb, sdc, sdd
一般来说是 sdb, 可以通过 dmesg 命令查看内核日志确定
如果是 sdb, 那么命令就是:
sudo dd of=/dev/sdb if=V3s_linux_4_2_0_ov2640_debugdump.bin
离线