GD32F103运行脚本系统

[复制链接]
1240|15
手机看帖
扫描二维码
随时随地手机跟帖
vsfopen|  楼主 | 2018-7-15 21:30 | 显示全部楼层 |阅读模式
gd32_vsfvm.png
脚本的编译器和虚拟机集成到GD32F103C8中,内置IDE(python实现)。

https://bbs.21ic.com/icview-2530324-1-1.html

八层楼| | 2018-7-18 12:01 | 显示全部楼层
请问什么叫运行脚本呢

使用特权

评论回复
观海| | 2018-7-18 13:03 | 显示全部楼层
Shell是操作系统最外面的一层。Shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。Shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。
shell script是放在文件中的一串Shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。 Shell基本上是一个命令解释器,类似于DOS下的。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的Shell有标准的Bourne shell (sh)和C shell (csh)。
交互式shell和非交互式shell 交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。   Shell的类型在UNIX中主要有两大类shell Bourne shell (包括 sh, ksh, and bash) Bourne shell ( sh) Korn shell ( ksh) Bourne Again ,shell ( bash) POSIX shell ( sh) C shell (包括 csh and tcsh) C shell ( csh) TENEX/TOPS C shell ( tcsh)。

使用特权

评论回复
观海| | 2018-7-18 13:04 | 显示全部楼层
Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层。当从shell或其他程序向Linux传递命令时,内核会做出相应的反应。 shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用。用户在提示符下输入的命令都由shell先解释然后传给Linux核心。

使用特权

评论回复
labasi| | 2018-7-18 14:00 | 显示全部楼层
能不能详细说说 表这么说的这么高大上

使用特权

评论回复
vsfopen|  楼主 | 2018-7-18 20:30 | 显示全部楼层
本帖最后由 vsfopen 于 2018-7-18 20:39 编辑
labasi 发表于 2018-7-18 14:00
能不能详细说说 表这么说的这么高大上

其实也没太高大上,毕竟MCU里跑脚本系统和PC上跑的要求不同。
一般MCU里如果需要提供一些用户可配置逻辑的时候,可以用脚本系统。用户输入一些代码,或者由UI自动生成一些代码(可以定义变量,可以if, while等等)。然后,MCU内置的编译器/解释器处理这个代码,并且自动运行。这些代码不会被编译位MCU直接运行的二进制执行,而是通过MCU内的虚拟机执行。
这种应用方式,可以认为是胶水语言,把MCU中用C/C++实现的功能,通过脚本粘连起来,实现对应的功能,并且可以比较方便的修改,而且硬件无关。

比如:https://bbs.21ic.com/icview-2483528-1-1.html
MCU中已经实现了android手机的驱动,可以通过adb接口发送shell命令给手机执行,那么如果用户希望自己定义执行什么命令的话,那就可以通过这种脚本的方式来简单的配置要执行的命令。还可以做一些逻辑,比如读取手机中的一些文件,根据文件的内容执行不同的命令。

使用特权

评论回复
chongdongchen| | 2018-7-19 10:04 | 显示全部楼层
必须顶一下

使用特权

评论回复
CharryW| | 2018-7-19 14:28 | 显示全部楼层
这个必须顶

使用特权

评论回复
labasi| | 2018-7-20 08:12 | 显示全部楼层
vsfopen 发表于 2018-7-18 20:30
其实也没太高大上,毕竟MCU里跑脚本系统和PC上跑的要求不同。
一般MCU里如果需要提供一些用户可配置逻辑的 ...

可是 如何让mcu运行这些脚本呢 这个怎么操作呢

使用特权

评论回复
vsfopen|  楼主 | 2018-7-20 10:10 | 显示全部楼层
labasi 发表于 2018-7-20 08:12
可是 如何让mcu运行这些脚本呢 这个怎么操作呢

MCU通过USB接电脑,会出现一个CDC串口和一个U盘,U盘里集成IDE,双击运行后可输入脚本代码,然后可以控制编译和运行。CDC串口上,可以看到编译信息和运行信息。

使用特权

评论回复
labasi| | 2018-7-20 13:59 | 显示全部楼层
vsfopen 发表于 2018-7-20 10:10
MCU通过USB接电脑,会出现一个CDC串口和一个U盘,U盘里集成IDE,双击运行后可输入脚本代码,然后可以控制 ...

太感谢您的解答了

使用特权

评论回复
angerbird| | 2018-7-22 09:08 | 显示全部楼层
这种内置IAR的做法针对版本编译是非常方便的

使用特权

评论回复
smilingangel| | 2018-7-22 15:09 | 显示全部楼层
Shell基本上是一个命令解释器,类似于DOS下的。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的Shell有标准的Bourne shell (sh)和C shell (csh)。

使用特权

评论回复
baimiaocun2015| | 2018-7-22 15:25 | 显示全部楼层
Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口。

使用特权

评论回复
tongbu2015| | 2018-7-22 18:38 | 显示全部楼层
Shell是操作系统最外面的一层。Shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

使用特权

评论回复
vsfopen|  楼主 | 2018-7-22 21:46 | 显示全部楼层
一个脚本开发的简单介绍:https://bbs.21ic.com/icview-2532468-1-1.html

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

89

主题

324

帖子

8

粉丝