51单片机学习总结

1、什么是单片机

在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 Intel公司推出了MCS-51系列单片机:集成 8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。

2、单片机的作用

用到单片机的项目经验介绍

手持粮库温度寻检设备

毕设答辩打分器

电话台灯

自动感应水龙头

凡是与控制或简单计算有关的电子设备都可以用单片机来实现,再根据具体实际情况选择不同性能的单片机,如:atmel,stc,pic,avr,凌阳,80C51,arm等

工业自动化:数据采集、测控技术。

智能仪器仪表:数字示波器、数字信号源、数字万用表、感应电流表等。

消费类电子产品:洗衣机、电冰箱、空调机、电视机、微波炉、手机、IC卡、汽车电子设备等。

通讯方面:调制解调器、程控交换技术、手机、小灵通等。

武器装备:飞机、军舰、坦克、导弹、航天飞机、鱼雷制导、智能武器等。

等等…..

3、学习单片机之前预备知识

(1)数字电路中只有两种电平:高和低

定义单片机为TTL电平:

高 +5V 低 0V

(2)RS232电平:计算机的串口

高 -12V 低+12V

所以计算机与单片机之间通讯时需要加电平转换芯片

(3)进制转换与逻辑、算术运算

(4)C语言基础

(5)80C51了解

80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的 CMOS工艺单片机产品统称为80C51系列。

(6)

总线(BUS)是计算机各部件之间传送信息的公共通道。微机中有内部总线和 外部总线两类。内部总线是CPU内部之间的连线。外部总线是指CPU与其它部件之间 的连线。 外部总线有三种: 数据总线DB(Data Bus), 地址总线AB(Address Bus) 和控制总线 CBControl Bus)。

(7)

CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器; RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据; ROM:用以存放程序、一些原始数据和表格;

I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;

T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;

五个中断源的中断控制系统;

一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;

片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率取决于单片机型号及性能。

(8)

C51数据存储类型

例:

数据类型 变量名

char var1;

bit flags;

unsigned char vextor[10];

int wwww;

注意:变量名不能用C语言中的关键字表示。

(9)

包含的头文件(可以在安装目录下INC目录下查看)

通常有:reg51.h reg52.h math.h ctype.h stdio.h stdlib.h absacc.h

常用有:reg51.h reg52.h

(定义特殊功能寄存器和位寄存器);

math.h (定义常用数学运算);

(10)中断服务程序的格式

函数名()interrupt n using m

{

函数内部实现 ….

}

(11)I/O口定义

sbit beep=P2^3;

(12)单片机的基本时序

机器周期和指令周期

(1) 振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的 周期,TX实验板上为11.0592MHZ。 

(2) 状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后 得到的。 

(3) 机器周期: 一个机器周期包含 6 个状态周期S1~S6, 也就是 12 个时 钟周期。 在一个机器周期内, CPU可以完成一个独立的操作。 

(4) 指令周期: 它是指CPU完成一条操作所需的全部时间。 每条指令执行时间都是有一个或几个机器周期组成。MCS - 51系统中, 有单周期指令、双周期指令和四周期指令。

4、学习单片机目标

最小系统能够运行起来的必要条件。

1.电源 2.晶振3.复位电路

对单片机任意IO口的随意操作

1.输出控制电平高低2.输入检测电平高低。 定时器:重点掌握最常用的方式2

中断:外部中断、定时器中断、串口中断 串口通信:单片机之间、单片机与计算机间

 

第二篇:5年单片机学习总结

5年单片机学习总结

人的一生是一个不断学习、不断成长的过程。转眼间,研究生的学习生涯结束了,走上新的工作岗位。回头看看,发现自己不知不觉已经走过了五年的单片机学习之旅。

在20xx年最初接触单片机的时候,在我心中觉得51就是单片机,单片机就是51,根本不知道还有其他单片机的存在。那时候老师只教会了我们汇编语言,根本不知道用C语言也可以进行单片机开发。幸运的是,我加入了单片机兴趣小组,在老师的指导下,做了一系列实验,有“基于DS18B20的温度采集系统”、“有基于164的移位寄存器的灯光控制系统”、“有步进电机和直流电机的控制系统”。这时候我才发现,这是学习单片机的一个最好途径——在实践中领悟理论,用理论指导实践。在上课的整整一个学期中,虽然老师讲得很详细,但是大部分概念都是到了实际动手做东西的时候才弄明白的。而且在经历了迷惑之后再搞清楚,印象就特别深刻。直到现在我对那些概念和接口都非常清晰。其实我也很庆幸学习和使用了两年多的汇编语言。由于有这些锻炼,我对单片机底层结构和接口时序就弄得很清楚。在使用C语言开发的时候,优化代码和处理中断也就不会太费劲。我觉得,虽然现在绝大部分单片机开发都使用C语言,甚至有些公司还推出了图形化编程的工具,这样对于项目的开展从时间上快了很多,在管理上也规范了不少,但是从学习和想深入掌握单片机精髓的角度来说,还是需要熟练掌握汇编语言的使用。

机会总是青睐于有准备的人。也许有了前面一段时间的理论和实践的积累,我才慢慢得到了一些参加科技竞赛和参与科研项目的机会。在参加第一届浙江省机械设计竞赛的时候,我们设计的由多单片机系统协调控制的“月球车”机器人夺得了唯一的一个特等奖。这个竞赛给我最大的收获是我对单片机的认识改变了,它不再仅仅是一门学科了,它是一个可以让你的创意得到充分发挥的平台。后来参与了“基于视频分划技术的钢卷尺自动切零位机”、“电能表涡杠涡轮啮合深度检测系统”、“基于公共电话网的水表集抄数据路由器”、“高精度电感微位移测量系统”等一些实际的项目。在这些过程中,我发现只是精通单片机技术还不能很好的解决问题。体会最深的是,单片机只有融合到各种应用领域中,才能展现它的最大活力。然而单片机仅仅是一个工具而已,要做好单片机系统还需要各种应用领域的专业知识的支持。例如,在“基于视频分划技术的钢卷尺自动切零位机”中,就需要搞清楚全电视信号的时序,弄明白钢卷尺切零位机的工作原理,懂得怎么利用叠加在视频信号中的横竖线来进行刻度的瞄准等。没有这些专业知识,就算单片机技术再厉害也不可能做好这个项目。脱离应用背景的单片机开发,就像一个没有灵魂的躯体一样。

随着ARM的出现,我曾经认为,8位单片机可能在32位单片机的冲击下就此走进历史,可是很快就认识到我是错误的。随着技术的革新和时间的推移,各大单片机公司纷纷将单片机朝着片上系统这个方向发展,集成了现在各种流行的技术和常用的模块。我相信,在当前国内和国外的这个市场中, 8位单片机应用的市场仍然是充满生

机,活力无限。在市场的不断变化和技术的不断更新过程中,8位单片机也会顺应潮流不断革新。

从我五年走过的路来看,单片机学习的过程应该是一个循序渐进、不断学习、不断积累的过程,可以分为三个阶段。

第一阶段:掌握开发单片机的必备基础知识。

首先是熟练掌握单片机的基本原理,其实各家各门的单片机其基本结构和原理都差不多,特别是共有的知识需要好好理解和掌握。例如,内核结构、内存分配、中断处理、定时计数、串行通信、端口复用等一些最基本的概念和原理。除此之外,我们还需要具备模拟电子、数字电子、C语言程序开发知识以及原理图和PCB设计等一些技能。在进行系统开发的时候,进行原理设计、PCB布板、程序编写、系统联调这些工作都是在所难免的。

第二阶段:在掌握好一款单片机原理和应用的基础上,开始学习其他各家单片机的独有技术,学不了那么多也要多了解了解。同时尽可能多地掌握单片机的一些外围器件和常用电路,以备不时之需。有时候客户要求低成本,那我们只好选用合钛、义隆、华邦等这类台湾芯片;如果客户要求工业级的性能,那么我们就得从PIC、NEC、飞思卡尔、NXP等这些欧美和日式单片机中选择;若要进行功耗的开发,选用MSP430系列应该有一定优势;在进行测量仪器设计的时候,C8051和AduC842这类数模混合芯片就显得比较方便。所以说最好每个类型的单片机都会一两款,在实际项目选型中可以更加灵

活。另外,要注意平时的技术积累。比如,在项目开发过程中将一些常用的接口程序和控制算法整理成模块或者函数,在其他的项目开发中,有同样或者接近的需求时马上就可以使用,又快又好。

第三阶段:在实际的项目开发过程中,不断深化单片机应用技术,不断积累应用行业的专业知识。例如,我完成了“高精度电感微位移测量系统”,就会对电感传感器的测量机理和信号特性、测量电路的设计、电磁兼容处理、误差修正和非线性处理等测控方面的专业技术有很深的认识。以后碰到类似的项目时,很多东西就可以直接利用了。有了扎实的单片机应用相关的基础知识,并且熟悉掌握了几款不同类型单片机的开发方法,再结合实际的应用背景,那么就可以随心所欲,设计出性能最优、结构最合理的单片机应用系统。这是我最大的奋斗目标,我觉得这也应该是单片机应用的最高境界吧。 在这五年的学习中,有感慨、有遗憾、有憧憬、有希望,更重要的是我对单片机应用这个领域充满热情。由于才疏学浅、涉世未深,希望能与行业里的各位老师多多交流,不断学习,不断成长。