RISC-V MCU中文社区

【分享】 【分享】上位机程序编写

发表于 全国大学生集成电路创新创业大赛 2021-07-25 08:11:17
0
2093
0

大家好,我们是华芯极客队,报名编号是CICC3877,本次与各位老师和同学一起交流上位机程序的编写。

本文将讨论GPS/北斗定位模块作为接收机,将接收到的定位信息通过串口发送给计算机,再由计算机接收并解码获取相关信息。

在定位模块正确移植到DDR200T开发板的基础上,首先编写下位机程序。

下位机程序主要是完成串口设置和通过串口接收数据,用到的函数主要有以下几个:

1.  gpio_iof_config(GPIOB, uart_mask_tx|uart_mask_rx);

配置串口引脚。

2.  uart_init(UART1,9600);

设置串口波特率。

3.  text = uart_read(UART1);

读取串口接收到的信息。

在使用上述几个函数时,要注意引入hbird_sdk_soc.h头文件。

接下来编写上位机程序,上位机程序主要完成接收和解码定位信息的功能,本文采用QT编写上位机程序,需要调用的函数或变量如下所示:

1.  QSerialPortInfo::availablePorts()获取计算机所有的端口

2.  bool setBaudRate(qint32 baudRate, QSerialPort::Directions directions = AllDirections)设置波特率

3.  setStopBits(QSerialPort::StopBits ) : bool 设置停止位

4.  setFlowControl(QSerialPort::FlowControl ) : bool设置流控制方式

5.  setParity(QSerialPort::Parity ) : bool 设置奇偶校验位

6.  QByteArray buffer = serial.readAll();读取串口信息

在硬件连接正确,软件工作正常的情况下,定位模块将接收到的信息通过串口发送给DDR200T开发板,随后蜂鸟处理器将通过开发板上的串口将信息发送给计算机,计算机上的上位机程序将接收到的信息进行解码并显示出来,具体效果如下图所示。


小结

本文梳理了上位机程序编写的相关工作,若是理解不正确的地方请大家指正,共同学习,祝各参赛队取得理想的成绩。


喜欢0
用户评论
ZXL

ZXL 实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板