电子产业一站式赋能平台

PCB联盟网

搜索
查看: 74|回复: 0
收起左侧

嵌入式软件,能用“低代码”的方式进行开发吗?

[复制链接]

568

主题

568

帖子

4221

积分

四级会员

Rank: 4

积分
4221
发表于 2025-1-20 12:03:00 | 显示全部楼层 |阅读模式
我是老温,一名热爱学习的嵌入式工程师
+ A/ Y+ v' I( T关注我,一起变得更加优秀!+ w% O+ w8 `2 _
“低代码开发”早就已经不是什么新鲜事儿,在纯互联网领域应用得非常广泛,“低代码”所带来的效率提升,可以让工程师们专注于产品业务逻辑,避免开发过程中重复造轮子而造成资源浪费。0 v! o: N$ |' w- a  K
嵌入式产品的软件,其实也可以用“低代码”的方式进行开发,就在最近,我发现了一个好玩的网站:小熊派固件中心,可以让嵌入式工程师通过低代码的方式,自由切换星闪模组里面的通信固件。
- R' a& S! b" h/ o. W* Q目前这个固件中心支持海思的 Hi3863 和 Hi2821E 两款芯片,分别有AT指令固件和透传固件,工程师们可以按需使用。. D) A& X7 x0 A- p: o
复制网址链接到浏览器打开,或直接点击【阅读原文】https://bearpi.cn/core_board/bearpi/firmware/
1 q4 B/ z0 `* ~* F' {

gcuhdzd0img640363527.png

gcuhdzd0img640363527.png

) `8 w( G1 d/ P, N为了验证这种方式是否真的如此方便,我向小熊派官方申请了两款星闪模组,模组都是邮票孔封装的,并且把常用的GPIO引脚都引出来了,可扩展性非常高。
1 k0 S' c. q' l! D: L- A) y

jr5tnpqrdql640363629.png

jr5tnpqrdql640363629.png

) J9 V7 a: J; Z$ H5 f嵌入式Linux开发板是USB接口的,对接邮票孔的模组不是很方便,于是我设计了一个简单的USB-Dongle底板,贴上邮票孔的星闪模组之后,直接插到Linux开发板或者电脑上就可以用了。
; f- B! g7 `' c2 L& ^; i

4xfyjmfoszd640363729.png

4xfyjmfoszd640363729.png

9 y% J  C" R, g+ ]; F: s; L+ {(注意:上面的USB-Dongle基于Hi3863模组设计,Hi3863和Hi2812E这两款模组的邮票孔引脚并不相互兼容。)
' B6 M" v* A$ b" m, T: I. H4 v可以在嘉立创进行PCB免费打样,这个USB-Dongle硬件比较简单,直接手工焊接即可,成品如下所示:
8 ^9 k6 Q5 k8 b: G, W# l

sndx4u0k3mu640363829.jpg

sndx4u0k3mu640363829.jpg

; y7 g. z$ X% U星闪通信是双向的,刚好手上有一款小熊派IoT开发板,上面的E53接口可以扩展大量的传感器和执行器,于是我又给这款IoT开发板配了一个星闪通信模组。
& d" R2 k8 _6 e2 o- d+ E& V

vkdmavwil0s640363930.png

vkdmavwil0s640363930.png
3 k4 |+ m  T: a* s7 E
嵌入式Linux我用的是ELF 2学习板,因为USB-Dongle上用的是CH340E芯片方案,所以需要在ELF 2的内核配置单里面把CH340的驱动打开,重新编译内核镜像并烧录。7 P. `2 g  I' z$ s! ?- g
关于ELF 2学习板的介绍,可以点击这里回顾:在内卷中突围,开始学习嵌入式 AI 和多媒体应用技术!
( P+ ?3 `8 W& ^' X4 n5 k3 yELF 2学习板和小熊派IoT开发板之间是一对一通信,直接在固件中心分别生成Hi3863的主机模式和从机模式透传固件,烧录到模组待用。
& I- I. }+ \' N0 D. q, W

1zwfpmwzouk640364030.png

1zwfpmwzouk640364030.png

: c) ~3 \! s) C( p. ~所有的硬件都准备就绪了,接下来就是编写ELF 2的应用程序和小熊派IoT开发板的功能固件,用Qt编写一个简单的控制界面,用来控制IoT开发板上面的紫外灯和直流电机。* l1 u' Y" u( L7 ~$ Y4 J

1zgpsp3eona640364131.png

1zgpsp3eona640364131.png

2 v2 A! b% `6 K9 g3 k5 h  b% |+ @Qt应用程序集成了H2812的AT指令通信框架和H3863的透传通信框架,用 C++语言编写,没有依赖Qt库,可移植性较高,IoT开发板是STM32L4单片机程序,用C语言和HAL库进行编写开发。
+ q4 V/ L. o1 U( c6 R

pun1qkfwcpx640364232.png

pun1qkfwcpx640364232.png

. O7 G% t8 u- H% J4 W, \$ Q程序源码已经放到Gitee,有需要的工程师可以自取,嵌入式初学者或者大学应届生做毕设,也可以用作参考。
3 R. u2 c0 ~2 l4 m+ ~# l嵌入式Linux + Qt应用程序:https://gitee.com/embediot/nearlink_gateway.git
, {: R$ N4 |* M: ]* YBearPi-IoT单片机程序:https://gitee.com/embediot/nearlink-iot-device.git: j. b7 y: f- K$ c6 t4 V: ~) R
演示视频如下:
: W2 l, i9 M. E( S. s综合总结来说,星闪模组的邮票孔设计,加上固件中心的便捷,可以让我们的硬件产品非常方便地拥有星闪通信能力,并且可以随时根据产品的硬件方案需求自由地切换通信固件。
* Y8 x4 M7 {) M8 y5 A对于有技术要求的工程师来说,可能想充分使用星闪模组的芯片资源,也可以使用这两款芯片的SDK进行二次开发,但对比起直接使用固件中心,SDK二次开发的难度可能会比较高。
" j$ w2 S+ W1 f+ w5 V-END-2 K6 [; h* J# w0 j& V! ?/ M
往期推荐:点击图片即可跳转阅读+ f2 S# v7 @5 s& \: U$ D
                                                          ]! b1 Z  O: n+ l* ]* s
                                                               
& F1 Y: F0 y: ^, w: P( |                                                                        / Z  S! v8 E6 X2 N2 {
                                                                                - d9 ?+ n4 M! g

k4dztnj503d640364332.jpg

k4dztnj503d640364332.jpg

8 x! l" E! ]0 t6 a! t5 w                                                                                % e4 f/ j" V! U( K$ t. J( P( P/ c
                                                                                        星闪,一项迫切推广的创新技术!8 X2 f. A; b4 ~# o. h5 Y! y7 g
                                                        ! @- l/ j9 c* }8 h1 C# i( e
                                                               
' m' P; a( C( H+ w3 d; b: z                                                                        / |/ S4 e% C8 X- I' l
                                                                                ! C- p; g$ h6 D

f2jtosqoyss640364432.jpg

f2jtosqoyss640364432.jpg

! d! X( B* S+ l) p) u9 {                                                                                # t: I8 N6 J  \6 D
                                                                                        在内卷中突围,开始学习嵌入式 AI 和多媒体应用技术!
1 h. [$ |  o( ^8 B" u/ t: k1 U                                                        # ]( \- m* d4 g# ?" k  I2 ?
                                                                - ]0 p7 T2 _# [( E2 Z8 U9 e* o1 |
                                                                       
+ O3 \+ F" J4 S                                                                                / i) M4 Q/ o8 A

jv1qqul0szs640364532.jpg

jv1qqul0szs640364532.jpg
% T. S# S0 e/ n5 q7 \5 T
                                                                               
2 v, \" Z1 a% K. U1 _                                                                                        嵌入式 Linux 对接星闪,用 C++ 设计一个通用的 AT 指令解析器。5 P) V6 g) {1 \6 Z+ K8 h. V
                                                                $ H9 K( ^6 r9 K
                                                                       
4 e8 |; K; }7 H! X                                                                                / c9 h/ D  o0 b, h' d

5gxff3m414w640364632.jpg

5gxff3m414w640364632.jpg

( |9 X; f) B8 C4 \  U' r1 R                                                                               
+ O. L) @+ ~& R& \0 z                                                                                        星闪的资料不开放出来,工程师们没法玩?+ N% f& B! Y. o
                                                                                2 _+ p$ p0 \! }2 ^1 P
                                                                       
" X8 a1 t/ ]9 B6 M                                                                : P) E7 t2 E/ P4 H! U
                                                        我是老温,一名热爱学习的嵌入式工程师5 |9 N, }+ u! W$ z, F% i  p
关注我,一起变得更加优秀!1 X6 r  {: m/ m$ w% G" m$ I

cpfyexsomjw640364732.jpg

cpfyexsomjw640364732.jpg
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表