• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

怎么把上位机发送的数据保存然后进入主函数里处理?

wengqiang 2020-12-08 浏览量:624
想要通过上位机发送数据控制DAC的输出,要怎么把上位机发来的数据保存到主函数中去处理,要定义一个全局变量嘛?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 准确来是应该是这个数据应该如何被程序用到,这要分情况来看

    如果这个数据时实时更新的,则用一个变量存储即可,即程序接收到上位机发来数据后,去更新对应变量即可。

    如果这个数据需要保存下来,则可能不仅需要变量存储,还需要可以持久化的地方存储,比如上位机实现了一个长期运行值的设定,这个值需要通过专门的处理存储起来,可能是诸如闪存中,然后程序需要该数据时去读取使用。


    数据到底是保存在全局变量还是局部变量(临时读取更新)中,还要看程序设计需要,普遍来说,尽量上用全局变量,特别是零散的全局变量,就是用一个全局变量结构数据集合也比多个零散全局变量好管理。


    • 发布于 2020-12-08
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:5
  • 可以直接在接收中断服务函数做处理了,直接判断然后产生对应DAC,不用去主函数也可以。
    • 发布于2020-12-09
    • 举报
    • 评论 0
    • 1
    • 0

  • 处理方法有很多种,可以定义全局变量来传递DAC值,也可以直接在串口接收函数里面调用DAC输出函数,
    • 发布于2020-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 上位机通过串口把数据发送到单片机,然后单片机根据接收到数据控制dac,不一定要全局变量
    • 发布于2020-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 需要定义全局变量,或者可以用动态分配内存实现,不过这种变量长期存在的动态分配意义不大
    • 发布于2020-12-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 全局变量最简单的。用函数传输也可以的。或是直接在接收的函数内处理,也不用传输到主函数里
    • 发布于2020-12-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

怎么把上位机发送的数据保存然后进入主函数里处理?