MCS51是keil也对应地做好了非常多,也就是有非常多对你而言是透明的,是你不必关心的,你所要接触的寄存器数量也非常小,在这个时候你很多其它是写函数,仅仅只是针对这个平台写C程序比在PC上写C控制台程序有了多约束而已。输出也不想控制台那样是打印获得反馈,而是通过I/O口输出,通过外围电路获得反馈。
然后在学完51之后(大概把例程都跑一遍,这个程度就能够了,当然也能够在此基础上玩,有非常多好玩的,比如获取红外遥控每一个键的编码,然后利用这个自己測出来的每一个键的编码,你就能够做非常多非常有创意,非常好玩的事了~~) 接下来就S12,这个你会接触到数量庞大的寄存器,你会发现都是在操作寄存器,给你之前在51上面不一样的体会,每一个I/O口都会有3个或很多其它寄存器,I/O的输入输出都要通过设置寄存器决定,会接触到一个看起来非常复杂的文件(忘记叫什么了,反正是定义寄存器的),会接触到内存的分页机制等,会接触到中断映射~~总之就是与51相比,会有非常多非常新奇的东西等待你去摸索和发掘。这时你就開始要接触芯片的datasheet了,要開始看英文的技术文档了(那个datasheet最好看英文的~~)
非常多新人通过玩51開始入门嵌入式,接触嵌入式。在玩完51之后,有必要玩一些高级点的单片机,认为不妨选择16位的S12(MCS12XS128)比較好。由于S12有一个特点,就是你要自己配大量的寄存器,要自己写初始化模块的程序,这个从最基础的搭起框架对以后的理解和学习是非常有帮助的。若果是贪图方便,直接用K60这样的32位的带有野火等支持库的芯片,认为这样于你的学习和动手反而不利。所以贵在学习,还是不要懒的好。通过从配寄存器,到写初始化模块的代码,再到写应用。这样下来,一个小小的系统就出来了,当这个系统稳定工作了,那种自豪,那种喜悦和振奋是你通过野火在K60上面操作无法体会到的。所以,先以51入门,然后再选择S12、然后能够选择K60或STM32,这样一步步从低级到高级比較妥当吧!!
好吧,粗略地以过来人的角度就讲点吧,希望各位新人,各位刚踏入IT、刚踏入嵌入式、刚踏入编程的小子,一步步地坚守住,直至变成真正的技术人,真正的技术牛人!!我会继续坚持,埋头专注于技术,和大家一起进步,一起奋斗的!!祖国年轻的一代,开创祖国在世界技术界的新局面、新气象吧~~!!