按照上述思路改一下下面这个 if(RC_Ctl.key.Q == 1) { q_state = !q_state; } if(q_state) { Control_data.Flip_angle += (RC_Ctl.rc.ch1-1024)*0.5f; }
时间: 2024-02-03 09:13:42 浏览: 23
修改后如下:
```
if(RC_Ctl.key.Q == 1) {
q_state = !q_state;
if(q_state) { // 如果切换到 Q 状态
Control_data.Flip_angle = 0; // 将翻转角度清零
}
}
if(q_state) { // 如果处于 Q 状态
Control_data.Flip_angle += (RC_Ctl.rc.ch1-1024)*0.5f; // 根据遥控器通道 1 的值调整翻转角度
}
```
修改后的代码,在切换到 Q 状态时,会将翻转角度清零,避免了切换状态后翻转角度不连续的问题。
相关问题
imx178_sensor_ctl.c
imx178_sensor_ctl.c是一个驱动程序文件,用于控制IMX178图像传感器的工作。IMX178是索尼公司开发的一种高性能CMOS图像传感器,广泛应用于数字相机、工业视觉和安防监控等领域。
imx178_sensor_ctl.c文件中包含了各种控制IMX178传感器的函数和参数。这些函数和参数允许我们对传感器的特性进行调整和配置,以获得最佳的图像质量和性能。
在imx178_sensor_ctl.c文件中,我们可以找到各种控制传感器的函数,比如设置曝光时间、增益、白平衡等。通过这些函数的调用,我们可以对传感器进行各种参数的设置,以满足不同的应用需求。例如,我们可以通过调整曝光时间来控制图像的亮度,通过增益来增强暗部细节,通过白平衡来调整图像的色彩平衡。
此外,imx178_sensor_ctl.c文件还包含了一些与图像处理相关的函数,比如图像增强、降噪等。这些函数可以进一步优化图像质量,使其更加清晰、细腻。
总之,imx178_sensor_ctl.c是一个用于控制IMX178图像传感器的驱动程序文件,通过其中的函数和参数,我们可以对传感器进行各种配置和调整,以获得最佳的图像质量和性能。
Read Spd Begin... The memory on CH :1 are different! N: pre svc call fun = 0xc2000f04 -- pm-1 = 0, pm-2 = 29819750, pm-3 = 0 N: ddr fun = 0x0 -- pm = 0x29819750, pm2 = 0x0 N: parameter mcu: v0.5 Mcu Start Work ... get_clocks_value: scpi send command start: 0x10 scpi send command success get clocks = 533 MHZ pll_scp_num = 8 Lmu Freq = 1066Mhz ch = 0 parameter set ch closed! DIMM Don't Probed! ch = 1 the dimm info is from uboot... Dimm_Capacity = 8GB Mcu Channel 1 AES configuration begin... AES bypass end... TZC configuration begin... TZC bypass end... use_0x14 == 0xb0100 ctl_cfg_begin...... pi_cfg_begin...... phy_cfg_begin...... fast mode caslat = 15 wrlat = 14 tinit = 856000 r2r_diffcs_dly = 4 r2w_diffcs_dly = 5 w2r_diffcs_dly = 3 w2w_diffcs_dly = 7 r2w_samecs_dly = 4 w2r_samecs_dly = 0 r2r_samecs_dly = 0 w2w_samecs_dly = 0 ch 1 adapter_alg -- 0-0-0-0-0-0-0 rtt_wr = dis rtt_park = 80ohm ron = 34ohm val_cpudrv = 34 rtt_nom = 48ohm val_cpuodt = 48 vref_dev = 10 vrefsel = 0x45 dq_oe_timing = 0x42 rank_num_decode = 1 set phy_indep_init_mode set pi_dram_init_en set_pi_start & ctl_start...... wait init complete...... init complete done...... wait complete done...... rddqs_lat = 0x2 tdfi_phy_rdlat = 0x1f begin software ntp training... rank_num: 0 phy_write_path_lat_add =-1-1-1-1-1-1-1-1-1 phy_write_path_lat_add = 0 0 0 0 0 0 0 0 0 phy_write_path_lat_add = 1 1 1 1 1 1 1 1 1 phy_write_path_lat_add = 2 2 2 2 2 2 2 2 2 phy_write_path_lat_add = 3 3 3 3 3 3 3 3 3 phy_write_path_lat_add = 4 4 4 4 4 4 4 4 4 rank 0 wdqlvl! r2r_diffcs_dly = 4 r2w_diffcs_dly = 7 w2r_diffcs_dly = 4 w2w_diffcs_dly = 6 r2w_samecs_dly = 5 rank 0 ch 1 training fail
根据您提供的信息,似乎是内存训练过程中出现了错误。错误信息中指出了CH1内存信息不同的问题,以及训练过程中的一些参数和配置。其中,"Mcu Channel 1 AES configuration begin... AES bypass end... TZC configuration begin... TZC bypass end... use_0x14 == 0xb0100 ctl_cfg_begin"等信息表示内存控制器的一些配置和初始化过程。而"rank 0 wdqlvl! r2r_diffcs_dly = 4 r2w_diffcs_dly = 7 w2r_diffcs_dly = 4 w2w_diffcs_dly = 6 r2w_samecs_dly = 5 rank 0 ch 1 training fail"则表示在对CH1的rank0进行写数据时出现了训练失败的情况。
具体的原因可能需要进一步分析,可能与内存硬件、时序参数、内存控制器等方面有关。建议您尝试重新启动或重新插拔内存模块,并检查是否有硬件故障或不良连接的情况。同时,您也可以检查内存访问时序参数和内存控制器的配置是否正确。如果问题仍然存在,建议您查看更详细的错误信息或寻求专业的技术支持。