⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 epcm2944uart.txt

📁 用于epcm的uart开发的代码
💻 TXT
字号:
%%
s = serial('COM1');%调用串口1
set(s,'BaudRate',38400,'InputBufferSize',733);%设置波特率和接受缓冲区
fopen(s);%打开串口
%%  
  
    fwrite(s,[2 0 2 0 48 1 49 24],'uint8');%传给雷达请求数据包
    while(s.BytesAvailable<733) end%等待缓冲区满,代表收到完整数据包
    out = fread(s,s.BytesAvailable,'uint8');%将缓冲区的内容读到out变量
    for i=1:722
        data(i)=out(i+8); %第9个字节开始是数据
    end
    for i=1:361
        dataout(i)=bitand(data(2*i)*256+data(2*i-1),8191);%将两字节的数据转化为16位十进制数,同时取消最高三位,8191是1fff
        %dataout(i)=data(2*i)*256+data(2*i-1);
    end
    theta=0:0.5/180*pi:pi;%声明一个角度
polar(theta,dataout)%画图

%%
fclose(s)%关闭串口




user code:
    
uart0init();配置波特率和接受缓冲区
uart0_sendbyte(0x02);以下八句为发送清酒数据指令,这样写能否识别?是否需要写成一句?
uart0_sendbyte(0x00);
uart0_sendbyte(0x02);
uart0_sendbyte(0x00);
uart0_sendbyte(0x30);
uart0_sendbyte(0x01);
uart0_sendbyte(0x31);
uart0_sendbyte(0x18);
while(uart0接受缓冲区<733);
for(i=1;i<=733;i++)
	out[i]=接受缓冲区内容;
for(i=1;i<=722;i++)
        data[i]=out[i+8]; %第9个字节开始是数据
for i=1:361
        dataout(i)=bitand(data(2*i)*256+data(2*i-1),8191);%将两字节的数据转化为16位十进制,要注意雷达输出数据是高位在后,低位在前,data(1)是低位data(2)是高位,重组构造完之后,取消最高三位,8191是1fff(见telegram response B0)



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -