|
发表于 2025-3-10 09:01:03
|
显示全部楼层
本帖最后由 1732200390 于 2025-3-10 14:13 编辑
你好,我下载的是全串口demo1.8版的demo,我用串口2下载代码也能成功,就一下载背景文件会出背景图片丢失问题,82、83代码如下,是什么原因导致的
void deal_82_cmd(u8 Uart,u8* arr)
{
u8 i=0;
if(Crc_check_flog==0) //不含CRC检验
{
if(arr[4]==0&&arr[5]==6) //更新c代码
{
Write_Dgus(0x0006,0x5aa5);
Write_Dgus(0x0007,0X8000);
}
Write_Dgusii_Vp_byChar((arr[4]<<8)+arr[5],arr+6,arr[2]-3);
if(Response_flog)
{
u8 Temp_arr[]={DTHD1,DTHD2,0X03,0X82,0X4F,0X4B};
uart_send_str(Uart,Temp_arr,6);
}
}
else //带CRC校验
{
u16 Crc=0,Crc_check=0;
Crc=crc16table((u8*)(&arr[3]),arr[2]-2);
Crc_check=(u16)(arr[3+arr[2]-1]<<8)+(u16)(arr[3+arr[2]-2]);
if(Crc==Crc_check)
{
Write_Dgusii_Vp_byChar((arr[4]<<8)+arr[5],arr+6,arr[2]-5);
if(Response_flog)
{
u8 Temp_arr[]={DTHD1,DTHD2,0X05,0X82,0X4F,0X4B,0XA5,0XEF};
uart_send_str(Uart,Temp_arr,8);
}
}
}
}
/****************************************************************************/
void deal_83_cmd(u8 Uart,u8* arr,u8* arr1)
{
u8 i=0;
if(Crc_check_flog==0) //不含CRC检验
{
for(i=0;i<7;i++)
arr=arr1;
Read_Dgusii_Vp((arr[4]<<8)+arr[5],(u8*)&arr[7],arr[6]);
arr[2]=(2*arr[6])+4;
uart_send_str(Uart,arr,arr[2]+3);
}
else //带Crc检验
{
u16 Crc=0,Crc_check=0;
for(i=0;i<9;i++)
arr=arr1;
Crc=crc16table((u8*)(&arr[3]),arr[2]-2);
Crc_check=(u16)(arr[3+arr[2]-1]<<8)+(u16)(arr[3+arr[2]-2]);
if(Crc==Crc_check)
{
Read_Dgusii_Vp((arr[4]<<8)+arr[5],(u8*)&arr[7],arr[6]);
arr[2]=(2*arr[6])+4+2;
Crc=crc16table(arr+3,arr[2]-2);
arr[arr[2]+1]=Crc& 0x00FF;
arr[arr[2]+2]=Crc>> 8;
uart_send_str(Uart,arr,arr[2]+3);
}
}
} |
|