📄 cx.txt
字号:
/*-----------发送代码16子程序--------------*/
void Send16(uchar ASendh,ASendl,uint ASend)
{
td_dat16[0]=SlaveID; //从机ID
td_dat16[1]=16; //功能码16:写多路模拟量
td_dat16[2]=ASendh; //ASendh:起始地址高字节
td_dat16[3]=ASendl; //ASendl:起始地址低字节
td_dat16[4]=0; //写模拟量数量的高字节
td_dat16[5]=1; //写模拟量数量的低字节
td_dat16[6]=2; //写模拟量数量的字节数
td_dat16[7]=ASend>>8;//ASend:写给屏的数据
td_dat16[8]=ASend;
crc16Val=crc16(td_dat16,9); //进行CRC校验
td_dat16[9]=(uchar)(crc16Val>> 8); //*CRC校验低字节(若为查表所得数据为高字节,其实为CRC的低字节)
td_dat16[10]=(uchar)(crc16Val& 0x00ff);
for(j=0;j<3500;j++) //根据波特率延时4个字符时间,大约4ms
_nop_();
for ( i=0;i<11;i++) //发送数据
{
ES=0; //串口中断关闭
ACC=td_dat16[i];
SBUF=ACC;
while(TI==0)
{
_nop_();
}
for(j=0;j<255;j++) //延时
_nop_();
TI=0;
}
ES=1; //串口中断允许
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -