#今天也是咸鱼的一天~
上一回在写UART的时候,就感觉到了一个问题,单纯的Robei EDA的仿真其实没有什么实际的应用价值,最多就是给刚刚入门 EDA的人熟悉一下这个设计和仿真流程。等到熟练运用了,设计其实可以照搬实际代码的。
另一个很头疼的问题就是,在实际的比赛过程中,保证Robei EDA 设计仿真 ——生成模块文件——导入FPGA开发环境——实现功能,这么一个流程估计是不大可能的,比较真实的过程大概是,先把代码写出来,并且实现了实物作品的功能,再把软件套在Robei 上面交作业。这个EDA 软件虽然好用是真的好用,但是在运用自如和设计习惯上,的确不太一时半会可以接受。
所以这次先放弃一下关于 EDA模块的更新,来讲一个和比赛息息相关但是和FPGA并没有什么太大问题的东西——上位机(Upper Computer)
先来说说“上位机”的定义,从概念上来说,发送命令和提供服务功能的是上位机,而接收命令个服从控制的是下位机。这里,上位机的概念很明确,高位的,掌握控制权的就是上位机。在大部分情况,上位机是PC或者主控,在上位机的界面上,能够显示各种各样的信息,来自下位机的数据信息,或者要向下位机的控制选项,以及一些数据处理的界面。
有了上位机,再来说说下位机。与上位机相对的就是下位机,接收上位机的命令,做出运行状态的改变,然后将采集到的数据返回给上位机进行处理。这里的下位机,可以是传感器,也可以是硬件单片机,也有可能是下位的电脑。上位机和下位机只是一个控制关系的约束,并不是确定的硬件名称。一个单片机可以是另一个单片机的上位机,也可以是电脑的下位机,这个关系是相对的。
在Robei 杯的比赛中,上位机很大可能就是 电脑 or 手机,因为这个非常符合 机器人 的赛题方向,机器人是一个硬件工具,在控制这个机器人的过程中,除了直接在机器人上面的控制(比如显示屏),更多是是利用无线来做一个远程的操控,比如通过 蓝牙、WIFI、ZigBee、串口 、4G、5G模组进行通信。
为什么一定会用上位机呢? 因为这样带来的可操作空间更大。假设一个机器人 or 一个数据收集仪器(以气象采集器为例),我将它放置在一个地方或者多个地方,当某些环境状况出现改变时,不可能人为的去把仪器一一进行改动,为了最大化节省人力,肯定希望从终端进行直接控制,这就是上位机出现的意义。
了解了上位机,那么接下来就简单介绍一下,各种上位机会用到的语言/软件/资料~
先来说我比较熟悉的,电脑端的上位机。
C#这个是我2020年寒假的时候,为了准备北斗杯竞赛学习的,用C#来写窗体应用程序,和单片机利用UART来进行数据收发。(用了无线的串口收发模块)
原创文章 25获赞 32访问量 1万+
关注
私信
展开阅读全文
作者:Ninquelote