给刚通过51入门的新人讲讲S12(MCS12XS128)与51的差别
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、刚踏入嵌入式、刚踏入编程的小子,一步步地坚守住,直至变成真正的技术人,真正的技术牛人!!我会继续坚持,埋头专注于技术,和大家一起进步,一起奋斗的!!祖国年轻的一代,开创祖国在世界技术界的新局面、新气象吧~~!!
给刚通过51入门的新人讲讲S12(MCS12XS128)与51的差别的更多相关文章
- 51单片机C语言学习笔记6:51单片机C语言头文件及其使用
很多初学单片机者往往对C51的头文件感到很神秘,而为什么要那样写,甚至有的初学者喜欢问,P1口的P为什么要大写,不大写行不行呢?其实这个是在头文件中用sfr定义的,现在定义好了的是这样的 sfr P1 ...
- stm32入门(从51过渡到32)
单片机对于我来说,就是一个超级大机器,上面有一排一排数不尽的开关,我需要做的,就是根据我的设计,拿着一张超级大的表(Datasheet),把需要的开关(reg)都开关(config)到对应功能的位置( ...
- Gerrit代码Review入门实战
代码审核(Code Review)是软件研发质量保障机制中非常重要的一环,但在实际项目执行过程中,却因为种种原因被Delay甚至是忽略.在实践中,给大家推荐一款免费.开放源代码的代码审查软件Gerri ...
- Altium Designer16绘制51单片机的一些经验总结
制作这块51单片机的还是蛮艰辛的,应该是我水平太差,现在这块51板已经稳定了,也把这块板子制作过程中的一些问题及经验总结记录下来.这块板子制作出了很大问题很大原因是因为我对Altium Designe ...
- 编程入门选什么语言好?C 语言还是Python ?为你解析
前面我分享过计算机行业已经成了学校选择排名第一,家长和学生都很看好计算机类专业.现在IT行业也越来越火爆,程序员越来越被人看好.面对相比同龄人高薪资的诱惑,人们很难不心动,即使秃头也值得! 那么问题来 ...
- 【HTML+CSS】七小时快速入门~~~~~~~
由于网络化的原因,学习很方便,但是也由于太方便了,学习资料很多会给刚想要入门却没有什么自制力的初学者造成困难,我自己来说学html和css先看了一本书,后来又辗转在慕课网.w3cschool等学习网站 ...
- IT新人养成与蘑菇理论
(一)来源及定义 “蘑菇定律”最早是在上世纪70年代一批年轻的电脑程序员编写的.当时,美国一批电脑程序员意外发现,一批刚从学校毕业的新人参加了工作,这些人很难适应工作环境.在这种情况下,这些电脑 ...
- Quartz入门例子简介 从入门到菜鸟(一)
转: Quartz入门例子简介 从入门到菜鸟(一) 2016年11月19日 22:58:24 爱种鱼的猫 阅读数:4039 刚接触quartz这个词并不是在学习过程中...而是WOW里面的界面插件 ...
- Linux内核project导论——linux学习和职业曲线(刚開始学习的人,中级,高级都可參考)
Linux世界介绍 给自己定级 门外汉: 不会安装操作系统 不会用虚拟机(安装和使用) 入门级: 熟悉常见的发行版,甚至装过而且能用一些特殊发行版(比如kali)做过一些简单的图形界面的使用. 会一些 ...
随机推荐
- CF 191 div2
A.数据量很小,直接爆搞. #include <iostream> #include <cstdio> #include <algorithm> #include ...
- HDU - 2276 Kiki & Little Kiki 2
Description There are n lights in a circle numbered from 1 to n. The left of light 1 is light n, and ...
- Django的TemplateResponse
def my_render_callback(response): return response from django.template.response import TemplateRespo ...
- python下异常处理
1.python下异常如何处理: #encoding=utf-8 """ python遇到异常,程序直接运行 try: "判断有可能抛出异常的代码" ...
- Ext JS学习第八天 Ext基础之 认识Ext.js 和Ext-more.js
此文来记录学习笔记: •认识Ext.js 和Ext-more.js •首先,我们要知道这2个js文件的作用,这俩个文件包含了Ext的一些基础定义.基本的属性和方法,我们要重点学习和深入底层代码进行研究 ...
- MVC日期比较(转)
/// <summary> /// Specifies that the field must compare favourably with the named field, ...
- 在mysql中创建存储过程出现1307错误,解决方法
需要删除mysql数据库下proc表 在重新创建 CREATE TABLE `proc` ( `db` char(64) character set utf8 collate utf8_bin NOT ...
- JAVA语言的素数判断,随机数,函数调用
近来刚学JAVA,就从JAVA写起吧,JAVA判别素数,其实方法和C/C++没什么区别,主要就是想谈一下,其中包括的3个点. (1)JAVA语言产生随机数,random函数,定义参数max的作用是给出 ...
- linux ln 命令(转载)
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件. 当我们需要在不同的目录,用到相同的 ...
- mysql root密码重置
1.修改my.cnf #位置一般是 /etc/my.cnf 2.重启mysql服务 service mysqld restart 3.进入mysql mysql -uroot -p 然后直接回车 4. ...