Featured image of post 通过报文对嵌入式进行编程举例

通过报文对嵌入式进行编程举例

本文首发于CSDN,原文:https://blog.csdn.net/qq_44884716/article/details/110454537

这是对我之前《如何假装用C语言为嵌入式写一个新语言》进行一个举例,以便更好地理解这种编程方式。

报头(S)报尾(E)

报头和报尾ASCII
BUGUS42 55 47 55 53
BUGUE42 55 47 55 45
CODES43 4f 44 45 53
CODEE43 4f 44 45 45
VORCS56 4f 52 43 53
VORCE56 4f 52 43 45
CONSTS43 4f 4e 53 54 53
CONSTE43 4f 4e 53 54 45
RVARS52 56 41 52 53
RVARE52 56 41 52 45
SAVES53 41 56 45 53
SAVEE53 41 56 45 45
WVARS57 56 41 52 53
WVARE57 56 41 52 45

控制指令

指令内容指令标号(用户不可见)参数1参数2
输入输出选择(基础IO模块)0x02引脚选择(暂时0x01-0x0a)输入0输出1
输出高低选择(基础IO模块)0x03引脚选择(暂时0x01-0x0a)低电平0高电平1
毫秒级延时(时序模块)0x04延时时间(暂时0x01-0xff)

程序逻辑指令

指令内容指令标号信息1信息2信息3信息4信息5信息6
循环启动器(程序基础控制模块)0x01CODE返回位VORC返回位CONST返回位RVAR返回位SAVE返回位WVAR返回位

举例

加入用户输入了这样一个程序:

而我们的MCU工作流程如下:

这里我们只截取其中一个函数的工作流程和并对循环方式进行说明:

这里需要注意的是在这个例子中我们其实并没有输出值的,所以没有对输出值进行操作,5号的demo版暂时先不做又返回值的功能。

通过以上的序列图,我们就可以写出我们的报文了:

​ 将该报文通过串口发送到单片机,单片机即可进行工作运行。

除特别注明外,本站文章均采用 CC-BY-SA 4.0 协议授权
使用 Hugo 构建
主题 Stack 由 Jimmy 设计