水木社区手机版
首页
|版面-电路设计与调试(Circuit)|
新版wap站已上线
返回
首页
|
上页
|
下页
|
尾页
|
2/6
|
转到
主题:GD32的库真是写的稀烂
10楼
|
lvsoft
|
2020-05-13 15:04:40
|
只看此ID
总之,强烈安利rust就对了~
我目前准备从嵌入式和系统开发到web开发各个层面都用rust替换~
【 在 tom6bj (tom) 的大作中提到: 】
: 好吧,虽然没多少, 也不少了...
--
FROM 180.109.234.*
11楼
|
javaboy
|
2020-05-13 15:08:19
|
只看此ID
哈哈,web你就别想了。。。
【 在 lvsoft (Lv(The Last Guardian)) 的大作中提到: 】
: 总之,强烈安利rust就对了~
: 我目前准备从嵌入式和系统开发到web开发各个层面都用rust替换~
--
FROM 114.84.111.*
12楼
|
eggcar
|
2020-05-13 15:25:36
|
只看此ID
st的hal库真的设计的一坨shit...不知道从哪个角度定出来的路线,成功做到了 既没跟底层硬件解耦,又浪费了百分之好几百的性能,写起来还特别反人类
【 在 lvsoft 的大作中提到: 】
: 没看过gd32的库,但我觉得stm32的库确实就是稀烂,绝对不是这点点命名风格问题。
: 我最近开始尝试用rust做stm32的开发了,目前感觉良好。
: rust的好处有几个,一个是非常严格的编译期代码检查,基本上能通过编译的代码就不会
: ...................
--
FROM 111.198.57.*
13楼
|
lvsoft
|
2020-05-13 15:36:26
|
只看此ID
rust有个rust-yew,基于webassembly做的界面。
其实我对传统的web不是很感冒,我想要的就是gui搬到web上去。
这个就非常对我路子。
你可以看看这个,这个从最底层的在mcu上的gcode parser,到后台到web端,全部是
用rust做的
【 在 javaboy (喝了咖啡就话多-_-;) 的大作中提到: 】
: 哈哈,web你就别想了。。。
--
FROM 180.109.234.*
14楼
|
zkr
|
2020-05-13 16:07:06
|
只看此ID
扫一下官网的Rust Book,粗看代码就大体没啥障碍了
然则写出对的代码是另一码事儿,需要和编译器进行心智校准
为了给编译期提供足够的信息,源码有时候看着会犯晕
【 在 tom6bj (tom) 的大作中提到: 】
: 好吧,虽然没多少, 也不少了...
--
FROM 123.118.100.*
15楼
|
lvsoft
|
2020-05-13 16:36:51
|
只看此ID
这是我目前在经历的过程。
就跟python有pythonic的表述习惯一样,
我目前还没掌握rusty的思维方式,写的代码看起来就比较的别扭。
【 在 zkr (Just Waiting.) 的大作中提到: 】
: 扫一下官网的Rust Book,粗看代码就大体没啥障碍了
: 然则写出对的代码是另一码事儿,需要和编译器进行心智校准
: 为了给编译期提供足够的信息,源码有时候看着会犯晕
--
修改:lvsoft FROM 180.109.234.*
FROM 180.109.234.*
16楼
|
lvsoft
|
2020-05-13 16:58:56
|
只看此ID
更要命的是这样的库还有peripheral,hal,ll三套...基本上是重新定义了“烂的最
高境界”...
在rust下不需要折腾makefile,折腾各种库的编译环境,各种库都是模块化的直接
装了就有(比如lvgl)。跨平台方面虽然不能做到完全不改代码跨平台,但至少不
同器件的hal表述是一致的,换平台只要略做features的调整就行。最重要的是rust
的解耦合做很漂亮,可以在host pc上直接unittest。semihosting,itm之类的支持
也都是模块化支持了,完全不需要折腾,导入就有。
且不说hal库,整个stm32cube在基于rust的开发环境面前都毫无意义了。
rust目前的问题有几方面,一个是学习曲线比较陡峭,我学的比较折腾的语言也不
少了,rust在这里面依然是排前列的;二是目前各种实现都是0.x版本,都在快速演
变中,文档有点跟不上。比如搜stm32 rust很容易看到一篇2018年的一个新加坡人
写的教程,那个就已经outdate了;三是rust编译比较慢,它不像c/c++,通过.o可
以避免重复编译。rust是所有代码连带库一起整体编译的,所以它没有跨.o文件带
来的符号连接开销,但编译速度确实是比较慢的。当然这也是为了zero cost付出的
合理代价。
【 在 eggcar (eggcar) 的大作中提到: 】
: st的hal库真的设计的一坨shit...不知道从哪个角度定出来的路线,成功做到了
既没跟底层硬件解耦,又浪费了百分之好几百的性能,写起来还特别反人类
--
修改:lvsoft FROM 180.109.234.*
FROM 180.109.234.*
17楼
|
tom6bj
|
2020-05-13 17:00:45
|
只看此ID
要是能把库预编译成.a也能快点啊...
【 在 lvsoft (Lv(The Last Guardian)) 的大作中提到: 】
: 更要命的是这样的库还有peripheral,hal,ll三套...基本上是重新定义了“烂的最
: 高境界”...
: 在rust下不需要折腾makefile,折腾各种库的编译环境,各种库都是模块化的直接
: ...................
--
FROM 106.121.158.*
18楼
|
lvsoft
|
2020-05-13 17:03:16
|
只看此ID
编译速度这块是rust目前还在努力解决的问题...
这个主要还是涉及优化的问题。
rust的check是很快的,但compile就比较慢了。
【 在 tom6bj (tom) 的大作中提到: 】
: 要是能把库预编译成.a也能快点啊...
--
FROM 180.109.234.*
19楼
|
dismoon
|
2020-05-13 17:18:19
|
只看此ID
所以为啥你非要用HAL,寄存器操作不香么
【 在 eggcar 的大作中提到: 】
: st的hal库真的设计的一坨shit...不知道从哪个角度定出来的路线,成功做到了 既没跟底层硬件解耦,又浪费了百分之好几百的性能,写起来还特别反人类
:
--
FROM 114.226.96.*
首页
|
上页
|
下页
|
尾页
|
2/6
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版