• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

以前用51单片机后来用stm8,都是寄存器编程,想转到嵌入式

huihui163 2017-06-05 浏览量:2629
以前用51单片机后来用stm8,都是寄存器编程,现在也看了STM32的库函数教程,从GPIO、定时器、AD、IIC灯例程,想转到嵌入式,但是嵌入式都是arm体系的,现在该怎么往嵌入式方向做呢,把STM32F103学透?还是?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 你好!我不知道你所理解的嵌入式是什么!!但是注意!嵌入式不是学习一款单片机!嵌入式是硬件可裁剪,软件可裁剪的系统,所以不是你学习个STM32就叫嵌入式了!


    关于建议的话!你可以学习STM32,中断来说是Cortex-M系列的MCU,然后学习一下实时操作系统!比如UCOSII,FreeRTOS,RT-thread等等,在就是可以学习Linux操作系统的使用,LinuxC编程,Linux网络编程等等,然后学习Cortex-A系列的 CPU,比如现在常用的学习型芯片 S5PV210等,当然,或者比如树莓派,香蕉派,香橙派等等也可以。不过各种拍你估计只能写写应用。

    • 发布于 2017-06-05
    • 举报
    • 评论 1
    • 0
    • 0
huihui163 回复了 东方青:如果直接做嵌入式这块的话,不去学习stm32的库函数编程,直接结合linux编程和Cortex-A系列的 CPU会很难,或者结合嵌入式的开发板,比如 回复

其他答案 数量:8
  • 先学透一个,其他的东西都是换汤不换药,以后学起来就方便很多,如果一个都没有学透,追求广度而不是深度那你永远也学不好,学好基础后,你要选一个方向是裸机编程还是基于系统的编程,然后深入钻研,期间应该很枯燥,但坚持下去就会有所得,也会走的远
    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 8位单片机确实是适合寄存器操作,因为8位机的寄存器只有8位长度,并且个数少,但是32位单片机使用寄存器操作非常麻烦,以STM32F103系列为例,寄存器有几百个,每一个寄存器都是32位,有时候实现一个功能需要调用几个寄存器好几十位,容易出错。并且ST官方推出了基于HAL库和LL库的CubeMX,让用户可以在图形化界面上直接生成工程。

    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 嵌入式这个概念比较广啊,不知道你具体想研究哪个方向呢


    不过你将STM32学透的话,将来做一些简单的项目完全没有问题,因为这些嵌入式实际上学会一个别的也比较容易学会的,因为它的方法都差不多

    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 您指的嵌入式應該是指Cortex-A家族的MPU,跟MCU完全不一樣唷

    除了系統和Kernel本身的複雜度外,上層編程也多變,不管是語言上還是方法

    所以如果很想學的話,建議分為兩部分

    上層: 使用者應用端部分,依照自己擅長或者有興趣的語言做開發,例如現在很Hot的Virtualization,VR或者Deep learning

    底層: Kernel和驅動開發,優化,裁切,但這部分比較瑣碎,需要有一定的C語言基礎和Data structure,Algorithm觀念

    以上


    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 学STM32F103也是不错的选择,现在ST的资料很全,虽然叫RAM 但是很容易上手,学好了以后移植改代码什么的都方便,也不错呦
    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 参考于百度百科的嵌入式定义

    IEEE(Institute of Electrical and Electronics Engineers,美国电气和电子工程师协会)对嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”。


    也就是说,你已经在学习嵌入式了。

    无论 是单片机,还是ARM还是DSP,都是在嵌入式的范畴。

    无论是寄存器、库函数、Linux也都是嵌入式的范畴了。

    关键是要看你的技术能力和所在行业、领域的深度了。

    就算你把单片机都学个遍,也没有什么用的。最终还是要生存,所以,掌握学习方法才是王道。

    • 发布于2017-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • arm也是寄存器编程
    • 发布于2017-06-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 仅说说对stm32F103的看法:感觉你的问题主要看你个人学习意愿了,如果想跑裸机程序,stm32正常完全够用,如果想稍微学习一些操作系统方面的知识,想学习学习小型的操作系统,那么stm32也能够胜任,如果你的目标是跑应用程序,大型程序,高级UI,那么需要更高级的板卡了。
    • 发布于2017-06-06
    • 举报
    • 评论 1
    • 0
    • 0
huihui163 回复了 ghasdf :现在就是矛盾,学stm32,还是直接学linux 回复

相关问题

问题达人换一批

以前用51单片机后来用stm8,都是寄存器编程,想转到嵌入式