Skip to main content
Version: Next

相机寄存器的工作原理与相关操作

引言

为了控制和配置盛相3D相机的功能,通常包含一系列参数操作,而参数的操作又与寄存器紧密关联。盛相相机包含两个寄存器:运行寄存器Flash寄存器,本文将详细介绍盛相相机这2个关键寄存器和软件操作的概念(写入设置/保存默认设置/载入默认设置),并解释它们之间的关系。

image

运行寄存器

运行寄存器是相机中最重要的寄存器之一。它用于控制相机的实时运行模式和参数设置。通过修改运行寄存器中的值,可以改变相机的工作模式,例如不同的扫描分辨率、帧速率和曝光时间等。运行寄存器通常位于相机的内部芯片中,并且可以通过特定的接口进行访问和修改。相机在每次拍摄前都会去读取运行寄存器的值,运行寄存器的值只对当此拍照生效,也就是说当正在拍摄时通过软件修改参数并不会对此次拍摄生效。

Flash寄存器

Flash寄存器是另一个关键的寄存器类型,用于存储相机的默认设置。Flash寄存器拥有和运行寄存器完全一样的所有参数,例如白平衡、对比度、饱和度和曝光模式等。当相机重新启动或断电后,Flash寄存器中的默认设置将被加载到运行寄存器中,以确保相机在每次启动时都使用预设的参数配置。

软件操作

除了硬件寄存器之外,软件操作也是控制相机的重要手段。通过软件界面或API,用户可以进行一系列操作,包括保存默认设置、载入默认设置和写入特定设置等。这些操作与运行寄存器Flash寄存器密切相关。

  • 写入设置:软件操作允许用户直接写入特定的参数设置到运行寄存器中,控制相机的运行参数。注意,此处不涉及Flash寄存器,因此如果此时断电,这些设置将丢失。

  • 读取设置:读取设置允许用户直接从运行寄存器中读取控制相机的运行参数。

  • Head PackHead pack包含设备信息,相机设置及设备状态等数据,被频繁且规律的发送回PC,并且被包含在每一个数据帧之中。其中寄存器的值都是从运行寄存器读出,比如设备序列号,设备分辨率,曝光设置等等。

  • 保存默认设置:这个操作允许用户将当前的运行寄存器中的参数配置保存到Flash寄存器中。通过这种方式,用户可以将自定义的配置设置为默认值,以便在下次启动相机时自动加载。保存默认设置对应API接口为:SaveSettingsAsDefault();

  • 载入默认设置:当相机启动时,它会自动从Flash寄存器中读取默认设置,并将其加载到运行寄存器中。这样做可以确保相机始终以预定义的参数配置进行工作。载入默认设置对应API接口为:LoadDefaultSettings();

关系解释

运行寄存器、Flash寄存器和软件操作之间存在以下关系:

  1. 运行寄存器是相机的实时控制寄存器,用于改变相机的工作模式和参数设置。
  2. Flash寄存器用于存储相机的默认设置,确保相机在每次启动时都使用相同的参数配置。
  3. 软件操作通过保存默认设置、载入默认设置和写入特定设置等功能,与Flash寄存器紧密合作。
  4. 通过软件操作,用户可以保存当前的运行寄存器配置到Flash寄存器中,并将其作为下次启动时的默认设置。
  5. 在下次相机启动时,Flash寄存器中的默认设置被加载到运行寄存器中,确保相机以预定义的参数进行工作。
  6. 用户还可以使用软件操作直接写入特定的设置值到运行寄存器中,覆盖默认设置。