最近对 ARM C 有兴趣咋入门? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
ren2881971
V2EX    程序员

最近对 ARM C 有兴趣咋入门?

  •  
  •   ren2881971
    ren2881971 2019-10-18 13:43:24 +08:00 4668 次点击
    这是一个创建于 2252 天前的主题,其中的信息可能已经有所发展或是发生改变。

    对 ARM 嵌入式一窍不通。 头大 先从 C 入手? LZ 目前是 Java Web 开发

    第 1 条附言    2019-10-18 16:34:01 +08:00
    想了解的怎么入门学习。。
    是不是坑啥的不要再提啦。。。打消积极性
    33 条回复    2019-10-31 01:32:32 +08:00
    brucewuio
        1
    brucewuio  
       2019-10-18 13:54:14 +08:00   1
    计算机组成原理 ARM 接口技术 arm-gcc 然后自己写个 bootloader 入门差不多了
    ren2881971
        2
    ren2881971  
    OP
       2019-10-18 13:58:33 +08:00
    @brucewuio c 和计算机组成原理一起学了?
    RYYang
        3
    RYYang  
       2019-10-18 14:43:16 +08:00
    直接树莓派
    lvA
        4
    lvA  
       2019-10-18 14:54:06 +08:00
    我这里搞硬件的同事一心想搞软件,感觉你俩应该认识认识
    ren2881971
        5
    ren2881971  
    OP
       2019-10-18 15:04:06 +08:00   1
    @lvA 哈哈 我是企业开发,不是互联网企业。 业务弄多了真的烦。。。 换个思路研究点别的
    brucewuio
        6
    brucewuio  
       2019-10-18 15:04:51 +08:00
    @ren2881971 我以为你会 C -_-||
    ren2881971
        7
    ren2881971  
    OP
       2019-10-18 15:08:51 +08:00
    @brucewuio 不会哇。实话实说 大学那点玩意 早忘没了。
    rockyou12
        8
    rockyou12  
       2019-10-18 15:10:53 +08:00
    先把计算机组成复习下,最好能懂点汇编,不然硬件开发和软件开发差别还是相当大的
    ren2881971
        9
    ren2881971  
    OP
       2019-10-18 15:16:34 +08:00
    @rockyou12 @brucewuio 两位大佬都默认我会 c 了么。。。
    buxudashi
        10
    buxudashi  
       2019-10-18 15:54:18 +08:00
    @ren2881971
    我也想搞硬件。如果只是搞硬件上的程序,看起来简单多了。各种传感器用起来也不难。不过如果搞硬件外围的电路板,电子电路,这些就没那么容易了。
    想换就直接换吧。软件硬件看你喜欢哪个
    zivyou
        11
    zivyou  
       2019-10-18 15:59:30 +08:00
    巧了。 我是 nodejs crud boy。想搞内核,现在在自己写内核。我搞的是 x86
    要学的东西太多了,大概是微机原理, 汇编(特别是 at&t 汇编),booter and loader,然后才是内核的各种设计。
    深坑,慎入
    koebehshian
        12
    koebehshian  
       2019-10-18 16:29:19 +08:00   2
    我也想搞硬件,但电路图看不懂,得先学会数字电路,数字电路看不懂,得先学会模拟电路,模拟电路看不懂,得先学会电路分析,电路分析看不得,得先学会电磁学,电磁学看不懂,得先学会微积分。
    当然,硬件上的软件,还得简单的
    ren2881971
        13
    ren2881971  
    OP
       2019-10-18 16:30:42 +08:00
    @buxudashi 我就是想先了解下~ 最后应该是研究 pcb 之类的。。
    ren2881971
        14
    ren2881971  
    OP
       2019-10-18 16:32:29 +08:00
    @zivyou 啥技术不是坑呀~ 铁子!
    maokabc
        15
    maokabc  
       2019-10-18 17:07:19 +08:00 via Android
    不是先买个 6410 之类的开发板,写写裸机代码吗?
    afirefish
        16
    afirefish  
       2019-10-18 17:52:00 +08:00
    树莓派
    loading
        17
    loading  
       2019-10-18 18:18:24 +08:00 via Android
    来,一起做个键盘就好了。

    最好有比较好的 c 语言基础。
    mosfet
        18
    mosfet  
       2019-10-18 20:00:13 +08:00
    cortex-m, cortex-a 都是是 arm
    前者买个 stm32 开发板,跑跑裸机实时操作系统,后者买个树莓派
    Halry
        19
    Halry  
       2019-10-18 20:32:21 +08:00 via Android
    本想推荐 stm32 的,但是感觉不对,如果是写惯了 java 这些的不建议,直接先树莓派,看看想不想弄,免得买一块真的是用来尘封的板
    LZSZ
        20
    LZSZ  
       2019-10-18 20:34:27 +08:00
    不搞 RISC-V ?
    SUMPaul
        21
    SUMPaul  
       2019-10-18 21:11:46 +08:00 via iPhone
    对各种各样的芯片手册,cmos 集成电路和万用表,示波器感兴趣?
    liuzhiyong
        22
    liuzhiyong  
       2019-10-18 21:17:22 +08:00
    入门还是轻松的,推荐 STM32。C 语言比 Java 应该轻松多了。祝你好运!
    liuzhiyong
        23
    liuzhiyong  
       2019-10-18 21:19:35 +08:00
    关于问题:“对 ARM 嵌入式一窍不通。 头大 先从 C 入手?”

    答案:先从控制闪烁 LED 灯开始,这个相当于软件行业的 Hello World。
    yplam
        24
    yplam  
       2019-10-18 21:58:41 +08:00 via Android
    入门推荐 arduino,资料比较完善,最基本的就是了解变量跟寄存器,外设 /IO 的关系

    嵌入式跟纯软件编程最明显的区别就是需要考虑时序,有些代码明明看起来没问题,但在硬件上跑起来就是得不到想要的结果,最简单的是你不断的开关一个 LED,如果中间没加入适当延时的话,LED 看起来会是常亮的
    nimab
        25
    nimab  
       2019-10-18 22:10:47 +08:00
    从单片机开始
    imbushuo
        26
    imbushuo  
       2019-10-19 06:21:12 +08:00
    可以来做 baremetal bringup,然后把 Windows on ARM 或者 Linux 带起来(
    Guosch
        27
    Guosch  
       2019-10-19 08:55:51 +08:00 via Android
    @koebehshian 数字电路看不懂,跟模拟电路有什么关系?
    wangkai0351
        28
    wangkai0351  
       2019-10-19 09:28:21 +08:00
    @Guosch 世界的本质是连续的。或许可以这样解释??哈哈哈
    0x61
        29
    0x61  
       2019-10-19 18:14:16 +08:00 via iPhone
    系统性一点的方法是:计算机组成原理 数字电路 8086 汇编 C 语言 计算机操作系统。 粗暴一点方法是:C 语言。
    beginor
        30
    beginor  
       2019-10-19 19:11:24 +08:00 via Android
    安卓手机的话直接装 Termux 走起 gcc 直接编译运行
    koebehshian
        31
    koebehshian  
       2019-10-19 21:01:16 +08:00
    @Guosch 至少和电路有关系吧,和模拟电路主要是一个 CMOS 管
    Guosch
        32
    Guosch  
       2019-10-20 08:34:39 +08:00 via Android
    @wangkai0351 好吧,是我认真了。。
    coloz
        33
    coloz  
       2019-10-31 01:32:32 +08:00
    想玩玩的话 arduino 是不二选择。如果想专业搞,可以买个 nrf52 DK 带蓝牙、带 jlink 的开发板,重点是 IDE 也可以免费用,不用去找破解版了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3957 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 10:15 PVG 18:15 LAX 02:15 JFK 05:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86