从51到ARM,这路怎么走?(精华在23楼)

2019-12-24 18:39发布

很多人说:有51基础的人很容易入门ARM。我想说,坑爹啊,我就是51走过来的,看ARM几个月了,一点进展都没有,也不太知道从何入手,下面说下我的问题吧,我想也有很多人跟我一样遇上这些问题,所以希望大家仔细看看,并回复我一下,指条明道。
51都是有地址映射的(即SFR,特殊功能寄存器),在头文件reg52.h里面,不知道ARM有没有,且不知道如何调用。以STM32为例,官方有提供个固件库,也就是好几个文件夹和几十个文件,里面有会汇编写的,也有用C写的,貌似也有地址映射,貌似里面的地址映射语句不是像51里面用sfr来表示的,貌似是用#define来定义的,这边搞糊涂了。固件库中还包含了很多打包好的程序,比如说各种传输协议要用到的程序。但我的思维还停留在51,并且我不知道停留在51的这种思维是否是正确的:那就是,完全自己编码,除了sfr定义,包括很多包装好的函数,自己写出来才算学会。这种思维,不知道在ARM学习上是否同等适用,难道学ARM时上了个层次,就直接在别人打包好程序的基础上做产品了吗?必须强调,在上位机,PC软件方面,是得调用操作系统的很多函数、库,这个没办法,因为强大的PC界面及功能,如果底层驱动什么的都自己写的话会累死,而且不一定有成效。但ARM不同,不同在他比PC低一层次,但同时又高51一个层次,所以我纠结了。并且我现在不知何从入手,就算是将固件库搞明白也得花不少时间。但我觉得,如果让ARM点亮一个小LED,应该用不上那么多固件库或函数,只要能点亮个LED就行,这么低的要求,应该是用到很少的语句及配置程序,但网上所有的教程基本上首先就教你:如何调用所有的官方库。这无疑让初学者陷入泥潭,晕。
说得很乱,初学者就这样,我现在回头看看我之前学51时问的问题,也觉得那些问题很没逻辑。但请理解,如果有什么问得无厘头的地方,多多包含!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
100条回答
Etual
2020-01-04 01:27
raxfeer 发表于 2012-3-28 11:14
已举报精华了,非常感谢Etual!
1.我看楼主浮躁得不得了。
没有没有,只是问下疑惑。比我浮躁的人多得去 ...

额,昨天情绪有点问题,帖子里如果语气重了的,也敬请见谅
帖子本身是意义不是很大,只是你反问了我能不能用裸机实现LED,于是我给出了一个实例而已
我只是想初学者不要太过浮躁而已,有则改之,无则加冕~
我建议先学用库,然后读懂库代码怎么实现的,最后尝试不用库自己裸机写程序。
但是做项目的话还是用库比较好,快速敏捷稳定。
另外,说了那么多还是想说明我之前说过的,STM32 和 51没啥本质上的区别,只是一个加强型的单片机。
学习应该抓住本质,学的是单片机,而不是51或者ARM

一周热门 更多>