普通32位单片机使用linux的应用代码

2020-03-11 19:34发布


当然,这里的普通单片机,还是需要一定的资源的,flash至少32K,RAM的话看应用以及堆栈大小的设置。而且,这里的实现并不是跑完整的linux,而是做了一个linux的子系统,可以编译一些linux的应用代码,理论上各种应用代码都可以,只是缺什么库就需要补什么库。

MCU里使用linux的应用也只是一些特殊场合,之前做这个,也仅仅是因为客户需要移植一个十几万行代码的3个linux应用到MCU里,所以只能用这个方法来实现了。


上代码:
https://github.com/vsfteam/vsf/tree/master/source/vsf/shell/sys/linux

工程:
https://github.com/vsfteam/vsf/tree/master/source/example/project/iar_8.4
vsf_template.eww,选择linux_m484配置
https://github.com/vsfteam/vsf/tree/master/source/example/project/vc
vsf_template.sln,选择vsf_linux_win

截图:

333.jpg



这个demo里,有VSF的内核、文件系统、USB主机和从机协议栈,linux子系统(自己实现的shell和一些命令,以及libusb),应用层的lsusb代码
IAR最高size优化下(不选择多文件编译),编译结果为33K代码占用(vsnprintf就包含了好几K)

 

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
vsfopen
1楼-- · 2020-03-11 21:09

实际一些应用的测试:https://raw.githubusercontent.com/mevdschee/2048.c/master/2048.c

这个是一个简单的命令行2048游戏,运行效果:

444.jpg
除了一些特殊字符显示不正常外,其他功能都OK,当然,这个也只是比较简单的linux应用

vsfopen
2楼-- · 2020-03-11 23:00
 精彩回答 2  元偷偷看……
gyh974
3楼-- · 2020-03-12 04:29
楼主厉害
叶春勇
4楼-- · 2020-03-12 04:41
开源项目,顶起

一周热门 更多>