野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8395|回复: 9

串口接收到的数据存在一个数组

[复制链接]
发表于 2017-10-24 13:53:34 | 显示全部楼层 |阅读模式
图片程序,串口助手还是只能收到FF,为什么不能整个数组接收,然后整个数组发送呢,for好像没什么用啊
2122.png
回复

使用道具 举报

发表于 2017-10-24 13:59:21 | 显示全部楼层
这个函数的功能是,串口调试助手 给单片机的串口发数据,数据的格式是16进制发送,可以发一连串的数字,当发送结束后,以0xff结尾,然后单片机串口把接收到的数据全部发回给电脑。

诀窍要点:把这个程序的每一句都读懂。
回复 支持 反对

使用道具 举报

发表于 2017-10-24 18:16:32 | 显示全部楼层
参考这个例程,加了缓冲队列:

把串口1接收的数据用串口2转发出去
http://www.firebbs.cn/forum.php? ... 8609&fromuid=64
(出处: 野火论坛)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-25 09:30:16 | 显示全部楼层
flyleaf 发表于 2017-10-24 18:16
参考这个例程,加了缓冲队列:

把串口1接收的数据用串口2转发出去

谢谢,我想问下有没有那种根据一个通讯协议去写程序的例程啊,感觉看到通讯协议就不知道怎么下手,怎么可以按协议循环接收8个字节的数据啊,蒙了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-25 09:32:04 | 显示全部楼层
fire 发表于 2017-10-24 13:59
这个函数的功能是,串口调试助手 给单片机的串口发数据,数据的格式是16进制发送,可以发一连串的数字,当 ...

火哥,谢谢,我想问下,停止位是不是我们在配置串口的时候配好就行了,不用在接收去判断对吧,接收主要判断收到的8位数据是吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-25 09:34:53 | 显示全部楼层
fire 发表于 2017-10-24 13:59
这个函数的功能是,串口调试助手 给单片机的串口发数据,数据的格式是16进制发送,可以发一连串的数字,当 ...

火哥,谢谢,我想问下,配置模式为 115200 8-N-1,停止位是不是我们在配置串口的时候配好就行了,不用在接收去判断对吧,接收主要判断收到的8位数据是吗
回复 支持 反对

使用道具 举报

发表于 2017-10-26 11:50:03 | 显示全部楼层
本帖最后由 的过123 于 2017-10-26 11:53 编辑
676595781 发表于 2017-10-25 09:30
谢谢,我想问下有没有那种根据一个通讯协议去写程序的例程啊,感觉看到通讯协议就不知道怎么下手,怎么可 ...

void ReadLcdReg(unsigned char AddrReg,unsigned char ReadDataNo)
{
    unsigned char i;
    RS485_TX_EN();
          SendBuf_LCD[0] = PROTOHD1; //帧头 2字节
          SendBuf_LCD[1] = PROTOHD2;
          SendBuf_LCD[2] = 0x03;         //数据长度 1字节
          SendBuf_LCD[3] = RDREGCMD;   //命令 1字节
          SendBuf_LCD[4] = AddrReg;
          SendBuf_LCD[5] = ReadDataNo;
                for(i=0;i < 6;i++)        
          {
                    USART_SendData(UART4,SendBuf_LCD);
                                /* 等待发送完毕 */
              while (USART_GetFlagStatus(UART4, USART_FLAG_TXE) == RESET);
                          while (USART_GetFlagStatus(UART4, USART_FLAG_TC) == RESET);
          }
    RS485_RX_EN();
}


这是个工业串口屏的一段程序,不知道有用不?我也是刚做的,有些没显示全,发送那块是i
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-27 15:13:16 | 显示全部楼层
的过123 发表于 2017-10-26 11:50
void ReadLcdReg(unsigned char AddrReg,unsigned char ReadDataNo)
{
    unsigned char i;

我学习下,谢谢你啊,加下QQ676595781学习下啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-27 15:14:39 | 显示全部楼层
的过123 发表于 2017-10-26 11:50
void ReadLcdReg(unsigned char AddrReg,unsigned char ReadDataNo)
{
    unsigned char i;

我学习下,谢谢你啊,加下QQ676595781学习下啊
回复 支持 反对

使用道具 举报

发表于 2017-11-1 15:20:14 | 显示全部楼层
我司是专业生产HMI串口液晶触摸屏的,想了解的的朋友可以打我电话18123741645微信同号,或加QQ397050970张S,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-20 05:37 , Processed in 0.032571 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表