单片机C51课程总结
- 格式:ppt
- 大小:123.50 KB
- 文档页数:28
内容提要单片微型计算机简称单片机,是典型的嵌入式微控制器,常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是靠程序运行的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。
所以说对于单片机课程的学习对于我们电子信息工程专业的学生来说至关重要,然而学习单片机课程设计是其一个极为重要的实践环节,无论是硬件扩展、接口应用还是编程方法、程序调试,都离不开该环节。
单片机课程设计过程中,学生通过查阅资料、接口设计、程序设计、安装调试等环节,完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用。
【⼼得】C51单⽚机_中断@⽬录①学习单⽚机中断总思想标题客观的说,学习单⽚机只需要掌握 I/O 和中断。
掌握了这两点,也就掌握了单⽚机。
再进⼀步,外设连接元器件,也就是说学会控制元器件的激活,外设就没有问题了,有趣的事,中断也需要“激活”,即配置。
所以,可以将单⽚机的学习变得更精简——激活。
(当然,不是说知道怎么激活,就学通了,只能算⼊门)就激活⽽⾔,单⽚机这个接地⽓的玩意⼉,也就两种⽅式:电平、电位。
由于元器件较为杂乱,故,在这⾥先讨论中断。
中断的配置⾃然是电位激活,所以这⾥讨论激活⽅式毫⽆意义。
②学习单⽚机中断总思想相较⽽⾔,配置顺序就有趣多了,这就像你的⽣活习惯,好的习惯可以提升效率。
为了增强认同,我先抛出⼏个问题。
1、我写中断⽼是有⼀两句忘了配置怎么办?2、中断配置记不住怎么办?3、中断配置怎么看都不会,死都记不住怎么办?这三个问题基本是同⼀个原因——记不住。
这时候⼤家反思⼀下,我们程序员敲代码是为了什么(说为了钱的门⼝罚站去),当然是为了解决问题。
所以我们没必要记这些东西,我们脑⼦⾥装的应该是编程思想。
那不记配置不会写怎么办,看原理图。
看了⼜忘了怎么办,写的时候再看,如果你写的次数多,那你慢慢就会记住,如果你写的次数少,那就说明你不常⽤它,不常⽤你把它记脑⼦⾥⼲什么(⽽且图像记忆⽐⽂字记忆效率更⾼,记原理图更能拓展⾃⾝发展空间)。
③学习单⽚机中断总⽅法外部中断⽐如外部中断0,结合下图,很明显IT0 = 1时为下降沿触发中断,为0时为⾼电平触发中断。
这时IE0左边已经配置好了,再看右边,显然EX0 = 1,EA = 1时,电路导通。
外部中断1同理。
参考代码:IT0 = 1;EX0 = 1;EA = 1;定时计数器中断如果是定时计数器中断,还需要有定时计数器原理图。
这个就根据个⼈习惯了,我本⼈是喜欢先从外向内配置。
以TF0为例,右边ET0和EA同理,这时要注意左边的TR0,你可以把它想象成外部中断的ITx(这⾥的x可以是0或1)是控制计数的。
单片机C51基础知识汇总目录1、标识符2、数据类型3、变量4、常量5、二进制、八进制、十进制、十六进制6、运算符7、语句8、注释9、if语句10、switch--case语句11、for循环12、while循环13、do—while循环14、循环控制15、一维数组16、二维数组17、字符数组与字符串数组18、函数19、函数重入与递归20、预处理21、宏22、条件编译指令23、指针(*)24、结构(struct)25、联合(union)26、枚举(enum)主要内容1 .标识符标识符就是编程时使用的表示某个事情名称的符号,如函数名、变量名、引脚名、特殊功能寄存器名等。
标识符有系统标识符和用户自定义标识符之分。
标识符的命名规则:(1) 标识符第一个字符必须是字母或下划线。
(2) 标识符只能由字母、数字和下划线三类字符组成。
(3) 标识符是区分大小写的。
如A 和a 是两个不同的标识符。
(4) 标识符有效长度不超过32 个字符。
(5) 标识符不能是C51 的关键字。
2 .数据类型char有符号字符型,一字节,值域-128~127。
int 有符号整型,两字节,值域-32768~32767。
long有符号长整型,四字节,值域-2147483648~2147483647 unsigned char无符号字符型,一字节,值域0~255unsigned int无符号整型,两字节,值域0~65535unsigned long无符号长整型,四字节,值域0~4294967295float浮点型(都是有符号的),四字节,±1.175494E-38~±3.402823E+38bit位变量,一个二进制位,值域0~1。
sbit51 单片机特殊功能寄存器位,值域0~1。
Sfr 51 单片机特殊功能寄存器,值域0~255。
sfr1651 单片机特殊功能寄存器,如DPTR,值域0~65535。
bit,sbit,sfr,sfr16不是标准C 的内容,是51 单片机及C51 编译器特有的,不能用指针对它们进行操作。
《C51单片机技术教程》第一章:C51单片机概述本章主要介绍了C51单片机的基本概念、发展历史以及应用领域。
通过对单片机的定义和分类的讲解,读者能够了解到单片机的特点和功能。
第二章:C51单片机的基本原理本章主要介绍了C51单片机的基本原理,包括单片机的内部结构、寄存器以及时钟系统等。
通过对这些基础知识的学习,读者能够更好地理解和运用C51单片机。
第三章:C51单片机的编程方法本章主要介绍了C51单片机的编程方法,包括汇编语言和C语言的编程技巧。
通过对这些编程方法的学习与实践,读者能够掌握C51单片机的编程技能。
第四章:C51单片机的应用实例本章主要介绍了一些C51单片机的应用实例,包括LED灯控制、数码管显示、蜂鸣器控制等。
通过这些实例的学习与实践,读者能够将所学的知识运用到实际的项目中。
第五章:C51单片机的调试与测试本章主要介绍了C51单片机的调试与测试方法,包括仿真器的使用以及调试工具的选择等。
通过对这些调试与测试方法的学习与实践,读者能够提高项目的开发效率和质量。
第六章:C51单片机的扩展技术本章主要介绍了C51单片机的扩展技术,包括外部中断、定时器、串口通信等。
通过对这些扩展技术的学习与实践,读者能够更好地理解和运用C51单片机。
第七章:C51单片机的进阶应用本章主要介绍了C51单片机的进阶应用,包括数据存储与访问、模拟信号处理、网络通信等。
通过对这些进阶应用的学习与实践,读者能够提高项目的功能和性能。
第八章:C51单片机的应用案例本章主要介绍了一些C51单片机的应用案例,包括智能家居控制系统、智能车、温湿度监测系统等。
通过对这些应用案例的学习与实践,读者能够将所学的知识应用到实际项目中。
总结:《C51单片机技术教程》是一本详细介绍C51单片机的技术教材。
通过对C51单片机的基本原理、编程方法以及应用实例的学习与实践,读者能够掌握C51单片机的基础知识和编程技巧,提高项目的开发效率和质量。
实验一熟悉ADEK单片机教学实验系统一、实验目的1.熟悉ADEK 单片机教学实验系统和仿真器的结构和功能。
2.了解如何安装51MINI 仿真器驱动程序。
二、ADEK 单片机教学实验系统组成图1-1 AEDK 单片机教学实验系统外观图如图1-1 所示,ADEK-EAT598 单片机教学实验系统遵循了模块化的设计思路,有丰富的接口,并且具有良好的扩展性,以下为组成模块和使用的主要芯片。
1.步进电机2.直流电机3.温度控制(DS18B20、热敏电阻B3470)4.模数转换(ADC0809)5.串行实验区(EEPROM X25045、AT24C08、时钟芯片HT1380、数模转换TLC5615、模数转换TLC1543)6.RAM(HM62256)7.ROM(M27C512)8.地址译码(74LS138)9.数模转换(DAC0832)10.仿真机通讯口:原厂仿真器的串口通信口,这部分功能已不用。
11.串并转换(74LS164)12.频率源(CD4020)213.扩展输出(74LS273)14.扩展输入(74LS244)15.电源开关16.液晶显示(MSC-G12232DYEW-7N)17.语音录放(ISD1730)18.扩展通信口(D8251、HIN232)19.八位开关20.交通灯21.单脉冲(HD74LS240)22.继电器(946H-1C-5D)23.电子音调(9012)24.蜂鸣器25.光耦(TLC521)26.电位器27.点阵显示28.PS2 接口29.并行接口(8255)30.键盘显示(8279)31.扩展实验区32.打印机接口33.单片机核心板(EA T598_31)34.带USB 接口的51MINI 仿真器三、实验内容1.熟悉整个实验箱的硬件资源。
2.使用51MINI仿真器连接电脑,在电脑的设备管理器中可找到下图所示的COM口。
实验二Keil集成开发环境练习一、实验目的1.掌握开发环境Keil的安装方法。
单片机学习归纳和总结(二):C51复习纲要及核心模块知识点总结51MCU复习纲要十速的51系列,78B芯片(CPU+RAM+Flash(ROM)+IO+Timer/Counter+Interrupt+AD+P WM+Touch+LED/LCD):1、时钟的构成:外部时钟,内部时钟;快时钟与慢时钟,时钟的分配。
2、78B单片机的系统时钟是2个周期(执行一条指令的时间),标准的51是12周期的。
3、·RAM(数据空间):非常有限,数据空间的访问方式(寻址方式):位寻址;直接寻址;间接寻址;立即数寻址·数据格式(位,字节,多字节;有符号,无符号;整型,实数,浮点;),多字节的存储方式(小尾和大尾)数据的表示范围(整型的范围)。
4、代码空间(flash/ROM):用代码空间存储常量,代码空间的划分(中断向量区,调试区,用户代码区,代码区仿真可擦写的数据区)。
5、IO:IO模式(上拉输入,悬浮输入,推挽输出,开漏输出,特殊功能模式),逻辑1对应的高电位(输出高Voh,输入高Vih,两者关系),逻辑0对应的低电位(输出低VoL,输入低ViL,两者关系),单个IO和整个芯片输出与输入电流的上限。
/*输出高大于等于输入高*/6、Timer/Counter:输入的基准时钟,分频,时钟加法器(长度),溢出后自动加载,时钟的溢出标志位和中断号(中断向量),时钟中断子程序(编程)。
7、中断:中断的控制位,中断标志位,中断号,中断子程序,中断子程序与主程序的协作关系(volatile)。
8、AD:AD的字长(12位的),转换时间,通道数量,内置校准电压通道,外部硬件滤波,内部数字滤波。
9、PWM:脉冲宽度调制技术,调光,调速,声音的生成。
10、Touch:电容触摸的基本原理,触摸基值的获取,复杂环境的触摸基值的获取(电源波动,电磁干扰,环境温度,工作环境等),触摸的手势(按下,抬起,单击,双击,多点,滑动)。
C51单片机实验报告
一、实验内容
本次实验的目的是实现用C51单片机实现简易的闹钟功能:即用户可以设置闹钟时间,当到达闹钟的设定时间的时候,单片机会控制LED灯或者蜂鸣器发出报警信号来提醒用户。
二、实验任务
本次实验任务如下:
1.使用C51单片机读取外部时钟的时间。
2.实现从按键输入闹钟设定的时间。
3.使用定时器实现任务调度,即在每个时刻检查一次外部时钟的时间是否到达闹钟的设定时间,如果到达设定时间,则控制LED灯或者蜂鸣器发出报警信号。
三、实验过程
1.硬件部分:本实验使用的硬件是硬件C51单片机,它具有单片机主频11.059MHz,外部内存2K和内部RAM 128字节。
本次实验采用的C51单片机核心是AT89C51,它具有4K字节的Flash存储器,它有128个8位I/O口和3个定时器/计数器。
本次实验使用到的外设有:LCD1602显示模块、4个4*4的数字键盘、AT24C02的IIC从机存储器、LED灯和蜂鸣器。
2.软件部分:本次实验使用的软件工具是Keil C51编译器,使用它来编写C51单片机程序。