折腾了一天了,还没有解决TVP5150晶振不起振的问题,奇怪了,我的电路是按照官方原理图画的,PDN、RESET几个重要引脚测量电平也是正常的。
实在不行,只好买一个现成的模块来研究一下了,这种模块与我需要的接口和电平又对不上
最近又看了终结者系列的电影,里面的机器人识别人类,物体的视觉效果让人印象深刻,一个大胆的想法在我脑中产生,希望能做类似这样高科技感的东西
在目前,已经有一些人工智能识别解决方案,K210是一款低成本的risc-v芯片,带有人工智能的模块。开源的MaixPY项目支持此芯片,有一些简单的测试用例。可以用来做一些简单的分类应用。如下图
市面上卖的开发板通常配套的是一颗OV2640的摄像头,只能拍摄可见光图像
这显然是不满足我对高大上的需求的,最好做到红外波段的,这样可以在夜晚也拥有灵敏的视觉。而且最好能够叠加
计划整个系统如下:
两路摄像头通路,一路是接热成像摄像头,一路接星光级低照度CMOS摄像头,K210采集两路图像,可以用按键进行切换。
K210的重要作用是,还可以对热成像图像进行识别打上标签。这一点是目前市面上所有的热成像搜索仪做不到的。
热成像摄像头是CVBS输入模式的,暂时先使用FLIR-HS324来调试,目前大部分热成像摄像头都是CVBS-NTSC输出的。接口通用,后期也可换成其他型号的热成像摄像头
拍摄的热成像图像效
目前K210的M5Stack社区已经有K210接入热成像的实例了,问我为什么不用那个,原因很简单
这一款使用的FLIR Lepton 3.0 分辨率只有160x120,帧率只有可怜的9Hz,镜头也只有针尖小,无法拍摄超过10m远的物体,只能用于近距离测温等场景,无法用于远距离观察。更重要的是,接口是特殊的,无法用其他模组替换升级。
整个项目工程量非常的大,只能一步一步做起,首先,K210没有CVBS输入接口,只能用外部的芯片转换了,我选了TI的TVP5150,可以把CVBS转成成YUV422,BT656输出,附件是PDF
再买了一块K210的板子,摄像头接口是OV2640的,因此得想办法把TV5150的数据送到K210的CSI接口。没办法,只好自己做转接板。
工程地址
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
原理图
PCB
打样回来后,焊接起来,CVBS输入的系统如下
TVP5150的I2C地址是0xB9,0x80和0x81寄存器放的是ID,先编译一个固件读一下试试
结果是沮丧的,读到的不正确。
用示波器测了一下TV5150的晶振,我勒个去,又不起振,之前做msisdr项目的时候,已经被无源晶振弄怕了。
查了一下网上,也没有人做过TVP5150对接K210,又是第一个吃螃蟹,只有自己慢慢折腾了。
计划项目里程碑如下:
TVP5150 I2c通路调通
TVP5150 视频通路调通,出图像
工程迁移到MaixPY,编写tvp5150的驱动,可以使用maixpy的分类用例
调通K210 CSI双路输入
打样做板,支持双路CVBS,一路热成像,一路星光摄像头
显示LCD替换为铁电体取景器(可选)
3D打印外壳
看上去整个项目工程量非常大,现在还在1阶段,后面会分享调试的经验,论坛的大佬也不少,大家指点一下也对研发有利,
不知不觉就写了那么多啦
折腾了一天了,还没有解决TVP5150晶振不起振的问题,奇怪了,我的电路是按照官方原理图画的,PDN、RESET几个重要引脚测量电平也是正常的。
实在不行,只好买一个现成的模块来研究一下了,这种模块与我需要的接口和电平又对不上
最新发现TVP5150不支持IO电压1.8V,要TVP5151才行,巨坑
,但这个应该不是不起振的原因
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
淦、调试了接近一个月了,重新改版了一下,自己做的硬件终于通了,晶振起振了,PCLK有输出,但是I2C一直没调通。用K210的I2C读取不到数据,用ESP32的Wire库读取也有问题
换成用买的模块调I2C,不得不说,TVP5150这颗芯片的I2C真的做得太特么烂了,
最后,我居然是用CH552 8051单片机的GPIO模拟I2C,可以正常访问的地址,读取的数据依然有问题,但是写下去的正常,把参数设置下去,最后示波器上终于有信号了,CVBS信号已经转化成了数字信号