V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
1217950746
V2EX  ›  嵌入式开发

如何入门嵌入式开发?

  •  
  •   1217950746 ·
    oneo-me · 2022-09-04 23:55:13 +08:00 · 3595 次点击
    这是一个创建于 835 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近刷 B 站,看到有人做了一个自行车码表,对这个非常感兴趣,就是不知道这种硬件相关的技能点如何开始点,希望大佬们指点一下

    我的一些问题:

    1. 大佬这个自己还画了个小板,不知道用来干啥的
    2. 关于编程语言的选择,只能用 C 吗,比如新语言 Zig 怎么样?

    我可以解决的:

    1. 编程经验丰富
    2. UI 设计经验丰富
    3. 简单建模做外壳也可以

    20 条回复    2023-08-01 16:56:59 +08:00
    crysislinux
        1
    crysislinux  
       2022-09-05 00:05:01 +08:00 via Android   ❤️ 1
    买个开发板搞段时间就有感觉了。zig 可以的,比 c 方便。
    delectate
        2
    delectate  
       2022-09-05 07:48:16 +08:00   ❤️ 2
    要看硬件可用资源。

    如果是是 stm32 那种单片机,只有几 k 几十 k 可用,只能 c ,别无他选;
    如果是 rda 的芯片+rtos ,可以用 python 、c ;
    如果是 android ,那么基本上 java 是首选。

    你提到的这个码表,我没看过视频,盲猜至少要有蓝牙、ble 、gps 、mic 、触屏、lcd 、光照传感器、4g 通信模块、ip68 等等。

    也就是说,rtos 可以实现,但是只能保存一点点离线地图,绘制图形也只能用 lvgl 。优点是功耗低、资源占用低;缺点是开发、调试较难。pc 的 c 经验在这里完全不值一提了。
    这个方案很像国内时兴的智能手环、智能手表。说它是智能吧,不怎么智能,连 app 也装不了;说它不智能吧,倒也能触控,UI 尚且流畅,所以很尴尬。类比手机的话,它比功能机好一点,但是比智能机差远了的感觉。就这种东西,小米竟然还有脸卖 1000 多,真是绝了!

    如果是跑 android ,那么 mtk 的低端片子都能满足。缺点是让厂家给你释放 sdk 难如登天。

    所以,考虑一下 rtos+lvgl 比较好。
    ps:或者换个思路,它如果只是个显示屏,主机在其他位置呢?
    guowq
        3
    guowq  
       2022-09-05 08:09:50 +08:00 via Android   ❤️ 1
    可以学学野火的教程,然后找几个感兴趣的例子模仿一下。这个工程量应该不小。
    liyang5945
        4
    liyang5945  
       2022-09-05 08:38:57 +08:00 via Android   ❤️ 4

    我最近入坑了单片机,目标也是想做一个码表,5 月份开始从 51 单片机学的,现在可以写一点 C 代码了,硬件也得学,图中液晶屏转接板也是我自己画的
    villivateur
        5
    villivateur  
       2022-09-05 08:44:12 +08:00   ❤️ 2
    你如果软件开发经验丰富,建议买个成品的开发板,带显示屏的那种,Android 系统,或者其他 Linux 的,用 Qt 之类的开发很快。

    然后再稍微学一点外设硬件通讯相关的知识点就够了
    cokepro
        6
    cokepro  
       2022-09-05 08:48:21 +08:00   ❤️ 2
    你要从 0 开始做,要学的东西挺多的。大学时候整天鼓捣这些。如何操作硬件、layout,电路知识。建议从简单的起步。单片机然后过渡到 arm 下的嵌入式 Linux 。
    ebony0319
        7
    ebony0319  
       2022-09-05 09:41:07 +08:00
    @villivateur ‘成品的开发板’ 这种都有哪些呢?
    villivateur
        8
    villivateur  
       2022-09-05 09:43:23 +08:00
    @ebony0319 淘宝一搜一大堆的,关键词 Linux 开发板 显示屏 Android
    icatme
        9
    icatme  
       2022-09-05 18:44:26 +08:00 via Android   ❤️ 1
    先了解下 GPIO 数字和模拟端口的基本吧,Linux 那种可以就树莓派等上手,要省电的 esp32 也有很多很好的开发板,但要学的会更多些,Arduino 这种做东西限制有点多了,学习可以,做东西有点落后了
    1217950746
        10
    1217950746  
    OP
       2022-09-06 14:02:40 +08:00
    @crysislinux Zig 是真不错
    1217950746
        11
    1217950746  
    OP
       2022-09-06 14:03:19 +08:00
    @delectate 谢谢大佬,我想从最简单的板子试试,慢慢学学看
    1217950746
        12
    1217950746  
    OP
       2022-09-06 14:04:06 +08:00
    @guowq 这个看起来感觉好详细了,我试试
    1217950746
        13
    1217950746  
    OP
       2022-09-06 14:04:26 +08:00
    @liyang5945 这种小板子看起来好精致呀
    1217950746
        14
    1217950746  
    OP
       2022-09-06 14:04:53 +08:00
    @villivateur 用 Linux 、Android 的是不是会费电一些
    1217950746
        15
    1217950746  
    OP
       2022-09-06 14:05:20 +08:00
    @cokepro 是的,我大概了解过一些,要学的东西确实太多了
    1217950746
        16
    1217950746  
    OP
       2022-09-06 14:06:02 +08:00
    @icatme 先试试,要是能力不足再找找其他方案
    liyang5945
        17
    liyang5945  
       2022-09-06 14:19:30 +08:00
    @1217950746 这个是 ESP32S3 开发板,淘宝 酷世 DIY
    levelworm
        18
    levelworm  
       2022-09-17 01:18:51 +08:00 via Android
    @liyang5945 #4
    厉害啊已经会焊板子了
    levelworm
        19
    levelworm  
       2022-09-17 01:28:50 +08:00 via Android
    我也有类似的兴趣,想做一个计算器,也想做一个非模拟器的掌机。虽然会一点嵌入式,但是这俩都超出了自己的能力,正在想有没有更小而有趣的项目。

    不过工业设计和打印壳这块怎么弄呢?
    jinzhongyuan
        20
    jinzhongyuan  
       2023-08-01 16:56:59 +08:00
    唉,大学电子信息工程的知识都忘关了,现在 java 搬砖
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3266 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:50 · PVG 19:50 · LAX 03:50 · JFK 06:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.