https://wokwi.com/projects/322410731508073042
这个叫 wokwi 的平台可以实现多种 Arduino 开发板的在线仿真,包括代码编写、编译、模拟接线,并提供了很多传感器模块。
因为我主攻嵌入式底层,不太了解,所以想问这种平台的开发难度怎样?大概需要多少人月?似乎国内并没有人做出来,如果复刻一个,感觉用户量应该挺大。
1
HugoChao 2022-09-28 09:18:52 +08:00
没有模板套的话感觉难度不小
|
2
BingoXuan 2022-09-28 09:22:08 +08:00 1
难度一般,我就在写类似的东西。不过不是给 arduino 用的,是给 zynq 用的。自动整合 fpga ip 和常见总线的芯片驱动
|
3
villivateur OP @BingoXuan 请问对于一个仅略懂前端开发的人来说,主要往哪些技术方向学习呢?能不能给点关键词?
|
4
BingoXuan 2022-09-28 09:35:54 +08:00 4
@villivateur
前端的话,如果你会 react 可以用 react flow 实现板卡可视化接线,不然就用 fabric js 做( fabric 可以更多自定义,react flow 也满足需求)。代码可以用 monaco 做编辑器。有个头痛的点就是 arduino 的 simulation 比较麻烦,我能想到的就是直接做一套 mock 数据的仿真驱动,通过接线配置算出到底要 mock 什么数据,剩下的用 python 去做编译打包。 |
5
moremoney 2022-09-28 09:39:47 +08:00
同问,想知道前端会用到哪些类库,我只知道代码编辑器用的是 Monaco Editor 它是 VSCode 的浏览器版本,画布用的是什么技术实现的很想知道
|
7
BingoXuan 2022-09-28 09:52:30 +08:00
@moremoney
画布要么用 react flow 要么 fabric 自己画。模拟器还是放到服务器跑吧,因为要编译代码。直接把 driver 换成 mock driver 就行。当然这种其实侵入性很强。还有另一种方法,只是 mock 总线。根据当前配置 mock 总线输出,但工作量更多也更复杂。基本就是自己模拟了芯片功能了。 @villivateur |
8
tool2d 2022-09-28 09:54:36 +08:00
前端有前端的开发思想,你可以用支持 web wasm 发布的传统开发 UI 库来搭建。( https://philippegroarke.com/posts/2018/c++_ui_solutions/)
但如果你用前端框架来开发,会和你现在写的代码格格不入。 想要同时维护好几种语言,是很困难的。 |
9
wudicgi 2022-09-28 10:03:27 +08:00
作为一个嵌入式开发,我怎么觉得这个用户群体应该非常小
Arduino 能用的板子又不贵,买一个实际跑跑代码不比仿真好 |
10
villivateur OP @wudicgi 主要面向学生群体吧
|
11
Mutoo 2022-09-28 11:10:35 +08:00 1
arduino 的话,有 js 模拟器库可以用,例如 https://github.com/wokwi/avr8js
|
12
Mutoo 2022-09-28 11:11:33 +08:00
才注意到就是 wokwi 自己家开源的
|
13
duan602728596 2022-09-28 11:16:03 +08:00
本来以为右面是 canvas 或者 webgl 实现的,结果是用的 Web Components 和 svg 实现的
|
14
BingoXuan 2022-09-28 11:18:58 +08:00
@wudicgi
仿真功能是给初学者用的,对于工程师来说确实是没必要。但这种可视化操作用在项目配置和管理上就非常方便。因为现实中,硬件依赖其实比软件依赖更麻烦。考虑一下这种情况,一颗 cat9555 如果挂载在 tca9548 某一路上,然后其中某个 io 是某个 spi 芯片的 cs 。我设计时候就拿这个来处理硬件依赖,自动生成固件。还可以复用来做类似 labview 的上位机软件。 |
15
theArrowOfCupid 2022-09-28 17:42:37 +08:00
下个 wappalyzer 插件,就知道它用了什么框架了
|