{{遇到問題.docx(uploading...)}}
看你的圖片,是CPU 異常了,但是你使用的是IIC ,這就有點不是太好理解,mlx90640 無奈手上暫時沒有mlx90640這個,你試試IIC 驅動EEPROM 可以麼
其他設置,讀取都好使,說明IIC是可以的,
status = MLX90640_DumpEE(MLX90640_ADDR, eeMLX90640); //讀取像素校正參數
// if (status != 0)
printf("\r\nload system parameters error with code:%d\r\n",status);
這一句是讀取MLX90640的EEPROMM,數據和我用32讀出來的一樣
就是下一句,解析參數,一進就卡死,
r0: ffffffff r1: ffffffff r2: ffffffff r3: ffffffff r4: 00002a74
r5: 00000043 r6: 00000000 r7: 200101ac r8: 497d3257 r9: 51365486
r10: 06c8fb4e r11: 4f56218f r12: ffffffff r13: c002200f r14: 1fffe6d4
r15: 20003188
epsr: e4ffc3c1
epc : fffffffe
CPU Exception : 6
r0: ffffffff r1: ffffffff r2: ffffffff r3: ffffffff r4: 00002a74
r5: 00000043 r6: 00000000 r7: 200101ac r8: 497d1257 r9: 51365482
r10: 06485b4e r11: 4e56218f r12: ffffffff r13: c002200f r14: 1fffe6d4
r15: 20003188
epsr: e4ffc3c1
epc : fffffffe
報錯類型6,
我把這個函數內部注釋,只留個空殼
int MLX90640_ExtractParameters(uint16_t eeData, paramsMLX90640 mlx90640)
{
int error = CheckEEPROMValid(eeData);
if(error == 0)
{
// ExtractVDDParameters(eeData, mlx90640);
// ExtractPTATParameters(eeData, mlx90640);
// ExtractGainParameters(eeData, mlx90640);
// ExtractTgcParameters(eeData, mlx90640);
// ExtractResolutionParameters(eeData, mlx90640);
// ExtractKsTaParameters(eeData, mlx90640);
// ExtractKsToParameters(eeData, mlx90640);
// ExtractAlphaParameters(eeData, mlx90640);
// ExtractOffsetParameters(eeData, mlx90640);
// ExtractKtaPixelParameters(eeData, mlx90640);
// ExtractKvPixelParameters(eeData, mlx90640);
// ExtractCPParameters(eeData, mlx90640);
// ExtractCILCParameters(eeData, mlx90640);
// error = ExtractDeviatingPixels(eeData, mlx90640);
}
return error;
}
下進去,也報錯,
Try 2000000 baud download file ...
Wait for the chip to be ready ...
Start the download ...
Download "E:/ST7735/W806 _FUBEN_gai_iic/bin/W806/W806.fls" file success!
CPU Exception : 7
r0: 00000000 r1: 00000000 r2: e000e100 r3: 2000318c r4: 00002a74
r5: 00000043 r6: 00000000 r7: 200101ac r8: 497d1257 r9: 51365482
r10: 06c8fb4e r11: 4e56218f r12: 00000007 r13: c002200f r14: 1fffe6d4
r15: 783c2000
epsr: e0000341
epc : 783c2000
使用W806內部IIC,可以初始成功
返回0,表示設置帧率成功,模式成功
讀取校正參數後,需要校正參數,一調用,就跑死
注釋掉函數內部,留著空函數
調用
跑死,跑死代碼由6變為7
複制了副本,W806 _FUBEN_gai_iic,對W806的IIC和開源代碼的軟件IIC做了匹配,然後初始化也不成功了,改回去
可以初始化了