1
rming 2015-10-07 17:18:01 +08:00 via iPhone
以前用过 stm32 , mcu 强大了,周边组件自然可以支持更多,常见外围电路,常见应用,代码的话,可以直接看手册,操作寄存器,也可以用函数库,就是别人的封装,各有优劣
然而,我现在改写 web 了…… |
2
ccen3020 OP @rming 如何上手?以及目前对 task 的创建啦切换啦之类的并不是很明白,应该看什么东西?
我倾向于学习如何用,明白如何用了再回头看原理 |
3
circsqua 2015-10-07 18:51:36 +08:00
物理上发生中断,到系统运行到中断处理函数,需要一定的时间。如果需要高速响应的话, X86 太慢, RTOS 好一些,裸跑 C 快一些,裸跑汇编最快;更快只能门电路了。
简单的说, RTOS 不能像通用 OS ( Linux )那样安装应用;添加新功能只能添加代码编译进系统。 除非有明确应用场合,不然还是不要蜻蜓点水的好。 |
5
zackkson1991 2015-10-07 21:39:33 +08:00 1
也是没有什么的。根据正点原子的例程学习即可(这个从他的论坛即可有很多的资料),我建议是从函数库学习,其他我觉得没必要直接写寄存器。这样容易出错而且浪费时间。通过教程从基本的 IO 操作到串口, ADC,SPI , i2c 以及 USB ,然后上液晶显示(FSMC)以及文件系统(fatfs ,使用 SPI 或者 SDIO 或者 USB 作为底层接口),当然网络最后是大块啦(lwip 协议,不同芯片使用不同的接口,由于前面学习了液晶有了 FSMC 接口,可以使用 FSMC 接口来驱动 DM9000 等芯片,也可以不同系列(F107)的 M 芯片有网络硬件接口)。记得还有很不多的关于 FSMC 驱动 NAND/NOR FLASH 芯片的例程,真心不错的。前面玩过一遍后,个人感觉对于芯片的接口以及实际应用都有很好的理解了。后面可以学习 UCOS 了,了解 RTOS 的基本使用了,比如时间片,多任务,信号量等等~在工作中很多时候都是需要 RTOS 的.过了一遍,做一个简单的小项目即可。后面,建议一遍锻炼好 C 语言, C++也是需要的。上手 ARM+LINUX,以后走安卓路线。
本人 14 年毕业,毕业后的半年还是搞车载,刚好也是 STM32 的。不过在这半年我转向了 iOS 方向了,不在做嵌入式。 |
6
ccen3020 OP |
7
deben 2015-10-07 23:10:43 +08:00 via Android
如果只做应用,不用管那些寄存器什么的,直接对着手册配置就好了。如果想玩的深入,个人认为可以搞个 FPGA 里面放个 MCU ,这样下来,什么硬件都懂了!我的想法有点偏激:)
|
8
qian19876025 2015-10-07 23:18:34 +08:00
楼主你到底是要学习什么 你要搞清楚才行
如果是为了控制硬件 那应该是 驱动的方向 需要汇编 看寄存器 要学 IRQ 如果是为了要学习软件 那就是写普通程序 实时系统 和 普通分时系统的是有区别的 实时系统 顾名思义 是对 时间有比较严格的要求 比如每个任务 运行多久 成功与否 之类的 我记得 ucos 的讲解里面应该有 分时系统那就是另外一套哲学了 百度百科之类的 有讲解 当然如果能翻墙看 wiki 也是一种方法 你说麻烦 的确麻烦 你说简单 也可以比较简单 根据具体的任务 需求 来实现程序 |
9
zackkson1991 2015-10-08 11:45:54 +08:00
@ccen3020 我建议这个平台的会用就可以了,侧重点应该是自身的编程能力。稍微花费多一点点时间即可。过程中打好 C/C++的基础很重要。早上 Linux 以及安卓。 RTOS 可以留意一下 RT-THREAD..
|
10
ccen3020 OP |
11
ccen3020 OP |
12
zackkson1991 2015-10-09 12:06:42 +08:00
@ccen3020 你要学习当然要花费精力,树莓派我觉得用来玩玩,但是真正学习还是买书买开发板学习。
|