System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及cmos传感器配置,具体为一种cmos传感器配置的二进制存储方法、存储结构。
技术介绍
1、cmos传感器通常需要进行大量的配置工作才能正常运行,特别在有多种输出格式和分辨率的情况下,用于初始化cmos传感器的主机或单片机通常需要存储这些配置。目前,大多数开发者选择直接将相关配置写入代码中,但这种方法存在一些问题。首先,直接将配置写入代码中使得修改配置变得繁琐、不易更新。其次,这种方法的通用性较差,不易移植到其他单片机平台上。此外,由于资源受限和处理能力限制,传统的二进制存储格式(如protobuffer)在单片机平台上的应用受到限制,其解析复杂且占用较大的代码空间,不适合单片机平台的使用。
2、因此,为解决在单片机平台上存储和解析cmos配置较为困难和繁琐的问题,需要一种更灵活、高效且易于移植的二进制存储方式,以满足在资源受限的单片机平台上存储和解析cmos配置的需求。
技术实现思路
1、基于此,有必要针对现有在主机或单片机上存储cmos传感器配置繁琐且局限性大的问题,提供一种cmos传感器配置的二进制存储方法、存储结构。
2、为实现上述目的,本专利技术采用了以下技术方案:
3、一种cmos传感器配置的二进制存储方法,包括以下步骤:
4、s1.获取cmos传感器已知信息并构建数据结构体;其中,cmos传感器已知信息包括子设备信息、传感器模式信息和对应的寄存器配置;构建数据结构体具体步骤如下:
5、获取传感器
6、将至少一个传感器模式信息集成传感器输出格式,进而将传感器输出格式设置为sensor mode的父节点pixelformat type;
7、获取子设备信息和相对应的寄存器配置,将子设备信息设置为父节点
8、subdev info,将相对应的寄存器配置设置为子节点sensor regn;
9、将子设备信息、传感器模式信息和对应的寄存器配置集成cmos传感器的基本信息,进而将cmos传感器的基本信息作为根节点sensor info;
10、将各节点按照相应的偏移地址设置,形成数据结构体;
11、s2.获取用于存储二进制基本信息的头部结构体和用于存储提示信息和cmos传感器已知信息原始文本的注释结构体,将头部结构体、数据结构体和注释结构体依次拼接,形成配置结构体;
12、s3.将配置结构体以二进制模式写入文件中,形成配置文件,并根据单片机上目标存储器类型和内存,将配置文件写入到目标存储器中,完成cmos传感器配置参数的存储。
13、进一步的,传感器模式信息包括模式宽度、模式高度、拜耳顺序、像素速率、行长、帧长度、传感器寄存器配置数组的偏移地址。
14、进一步的,传感器输出格式包括输出类型、传感器模式数组的偏移地址和传感器模式编号。
15、进一步的,传感器的基本信息包括芯片地址、访问模式、识别寄存器地址、传感器识别值、子设备信息数组偏移量和输出格式信息数组偏移量。
16、进一步的,二进制基本信息包括唯一标识、二进制格式的版本号、二进制总长度、数据结构体和注释结构体的偏移地址、生成时间,以及用于表示加密、只读、调试版本、压缩标志的flag。
17、进一步的,步骤s3中,通过spi/i2c编程器或jtag下载器将配置文件写入到目标存储器中。
18、本专利技术还涉及一种cmos传感器配置的二进制存储结构,其应用于前述的cmos传感器配置的二进制存储方法,cmos传感器配置的二进制存储结构包括依次拼接的用于存储二进制基本信息的头部块、用于存储cmos传感器已知信息中相关配置参数的数据块和用于存储提示信息和cmos传感器已知信息原始文本的注释块;数据块包括用于存储cmos传感器基本信息的节点sensor info、用于存储传感器输出格式的节点pixelformat type、用于存储子设备信息的节点subdev info、用于存储传感器模式信息的节点sensor mode、用于存储传感器模式信息对应寄存器配置的节点sensor regm、用于存储子设备信息对应寄存器配置的节点sensor regn;
19、其中,节点sensor info为根节点,自上而下依次为节点sensor info、节点subdevinfo、节点sensor regn,以及以节点sensor info为根节点自上而下依次为节点sensorinfo、节点pixelformat type、节点sensor mode和节点sensor regm。
20、本专利技术还介绍了一种二进制存储结构的加载方法,二进制存储结构采用如前述的cmos传感器配置的二进制存储结构,二进制存储结构的加载方法包括以下步骤:
21、根据相应的变量确定头部块的偏移地址,读取头部块中的数据后判断前m个字节是否与所需的头部块的前m个字节一致;
22、是则根据头部块中数据块的偏移地址读取数据块中的数据,判断前n个字节是否与正确的节点sensor info的前n个字节一致;
23、是则根据节点sensor info存储的芯片地址、访问模式、识别寄存器地址向cmos传感器发起读请求,得到对应的数值与节点sensor info中的传感器识别值作对比,根据对比结果作出如下决策:
24、(1)若传感器反馈的数值与节点sensor info中的传感器识别值不一致,则判定cmos传感器未正确连接,中断加载并上报错误;
25、(2)若传感器反馈的数值与节点sensor info中的传感器识别值一致,则判定cmos传感器正确连接,根据数据块的树状结构自上而下继续读取,直至读取到所需数据并配置相机,完成加载。
26、与现有技术相比,本专利技术的有益效果包括:
27、1、本专利技术通过设置头部、数据、注释三大块对cmos传感器配置数据进行存储,占用空间小,在面对不同的单片机时,只需更改数据,结构无需调整,节省了重新编译代码还需不断测试的过程;
28、2、本专利技术的二进制存储结构适配性高,易于移植到其它单片机平台上,开发者可以将cmos传感器配置数据独立于代码存储,并以一种灵活的方式进行更新,且解析简单,能够在单片机平台上快速解析配置文件。
本文档来自技高网...【技术保护点】
1.一种CMOS传感器配置的二进制存储方法,其用于在单片机平台上存储CMOS传感器配置参数,其特征在于,其包括以下步骤:
2.根据权利要求1所述的CMOS传感器配置的二进制存储方法,其特征在于,所述传感器模式信息包括模式宽度、模式高度、拜耳顺序、像素速率、行长、帧长度、传感器寄存器配置数组的偏移地址。
3.根据权利要求2所述的CMOS传感器配置的二进制存储方法,其特征在于,所述传感器输出格式包括输出类型、传感器模式数组的偏移地址和传感器模式编号。
4.根据权利要求3所述的CMOS传感器配置的二进制存储方法,其特征在于,所述传感器的基本信息包括芯片地址、访问模式、识别寄存器地址、传感器识别值、子设备信息数组偏移量和输出格式信息数组偏移量。
5.根据权利要求1所述的CMOS传感器配置的二进制存储方法,其特征在于,所述二进制基本信息包括唯一标识、二进制格式的版本号、二进制总长度、所述数据结构体和所述注释结构体的偏移地址、生成时间,以及用于表示加密、只读、调试版本、压缩标志的flag。
6.根据权利要求1所述的CMOS传感器配置
7.一种CMOS传感器配置的二进制存储结构,其应用于如权利要求1-6中任意一项所述的CMOS传感器配置的二进制存储方法,其特征在于,所述CMOS传感器配置的二进制存储结构包括依次拼接的用于存储二进制基本信息的头部块、用于存储CMOS传感器已知信息中相关配置参数的数据块和用于存储提示信息和CMOS传感器已知信息原始文本的注释块;所述数据块包括用于存储CMOS传感器基本信息的节点Sensor Info、用于存储传感器输出格式的节点Pixelformat Type、用于存储子设备信息的节点Subdev Info、用于存储传感器模式信息的节点Sensor Mode、用于存储传感器模式信息对应寄存器配置的节点Sensor Regm、用于存储子设备信息对应寄存器配置的节点Sensor Regn;
8.一种二进制存储结构的加载方法,其特征在于,所述二进制存储结构采用如权利要求7所述的CMOS传感器配置的二进制存储结构,所述二进制存储结构的加载方法包括以下步骤:
...【技术特征摘要】
1.一种cmos传感器配置的二进制存储方法,其用于在单片机平台上存储cmos传感器配置参数,其特征在于,其包括以下步骤:
2.根据权利要求1所述的cmos传感器配置的二进制存储方法,其特征在于,所述传感器模式信息包括模式宽度、模式高度、拜耳顺序、像素速率、行长、帧长度、传感器寄存器配置数组的偏移地址。
3.根据权利要求2所述的cmos传感器配置的二进制存储方法,其特征在于,所述传感器输出格式包括输出类型、传感器模式数组的偏移地址和传感器模式编号。
4.根据权利要求3所述的cmos传感器配置的二进制存储方法,其特征在于,所述传感器的基本信息包括芯片地址、访问模式、识别寄存器地址、传感器识别值、子设备信息数组偏移量和输出格式信息数组偏移量。
5.根据权利要求1所述的cmos传感器配置的二进制存储方法,其特征在于,所述二进制基本信息包括唯一标识、二进制格式的版本号、二进制总长度、所述数据结构体和所述注释结构体的偏移地址、生成时间,以及用于表示加密、只读、调试版本、压缩标志的flag。
6.根据权利要求1所述的cmos传感器配置的二...
【专利技术属性】
技术研发人员:姜黎,王加友,曹新星,张凯,吕彬,
申请(专利权)人:南京艾缔开姆电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。