书签 分享 收藏 举报 版权申诉 / 38
上传文档赚钱

类型51单片机C语言开发课件.ppt

  • 上传人(卖家):ziliao2023
  • 文档编号:5935167
  • 上传时间:2023-05-16
  • 格式:PPT
  • 页数:38
  • 大小:1.96MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《51单片机C语言开发课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    51 单片机 语言 开发 课件
    资源描述:

    1、51单片机C语言开发(伍建全)n了解51单片机原理n51单片机并口输入、输出n51单片机中断处理程序n51单片机定时器、计数器使用微型计算机微型计算机(PC)什么是单片机?n单片机单片机即单片微型计算机单片微型计算机(Single-Chip Microcomputer),又称单片机单片机(Microcontroller),是把中央处理器、存储器、定时定时/计数器计数器(Timer/Counter)、各种输入输出接口输入输出接口等都集成在一块集成电路芯片上的微型计算机。n与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储

    2、量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的微控制器;由于单芯片微电脑常用于当控制器故又名single chip microcontroller,但是目前在中国大陆仍多沿用“单片机”的称呼 单片机的位数单片机的位数n根据总线总线的宽度,单片机又分为4位、8位、16位和32位单片机。4位单片机多用于冰箱、洗衣机、微波炉等家电控制中;8位、16位单片机主要用于一般的控制领域,一般不使用操作系统;32位用于网络操作、多媒体处理等复杂处理的场合,一般要使用嵌入式操作系统。51系列单片机单片机的封装方式ARM单片机常用单片机nARM

    3、系列单片机nAtmel(爱特梅尔公司)nAtmel AT91 series(ARM THUMB architecture)nAT90 series AVR(Atmel Norway design)nAtmel AT89 series(Intel 8051/MCS51 architecture)nMARC4nCypress MicroSystems(赛普拉斯微系统公司)nCY8C2xxxx(PSoC)nFreescale Semiconductor(飞思卡尔半导体)n8-bit n68HC05(CPU05)n68HC08(CPU08)n68HC11(CPU11)n16-bit n68HC12(C

    4、PU12)n68HC16(CPU16)nFreescale DSP56800(DSPcontroller)n32-bit nFreescale 683XX(CPU32)nMPC500 nMPC 8240/8250(PowerQUICC II)nMPC 860(PowerQUICC)nMPC 8540/8555/8560(PowerQUICC III)nHoltek(盛群半导体)nHT48FXX Flash I/O type nHT48RXX I/O type nHT46RXX A/D type nHT49RXX LCD typenIntel(英特尔)n8-bit n8XC42 nMCS48 n

    5、MCS51:Intel 8051系列历史悠久,兼容产品众多,使用广泛 n8xC251n16-bit nMCS96系列 nMXS296n32-bit ni960nMicrochip(微芯公司)的PIC单片机系列 n8-bit:PIC10 PIC12 PIC16 PIC18 n16-bit:PIC24F PIC24H dsPIC30 dsPIC33 n32bit:PIC32(采用MIPS M4K 内核架构)nNational Semiconductor(美国国家半导体)nCOP8 nCR16nNEC n78KnNXP Semiconductors(恩智浦半导体,由飞利浦以 Philips Semi

    6、conductors 为班底新成立)nLPC2000 nLPC900 nLPC700nParallax,Inc.nBASIC StampnRenesas瑞萨科技系列单片机 nRenesas 16-bits nRenesas M16C Series nRenesas M32C Series nRenesas R8C Series nRenesas M16C/Tiny Series nRenesas R8C/Tiny Series nRenesas H8/Tiny SeriesnSTMicroelectronics(意法半导体)nSyncMOS新茂国际科技新茂国际科技全系列单片机 nSM59RXX

    7、A2 8-bits 1T(RISC)nSM59DXXG2 8-bits 6T(ISP)nSM59XX 8-bits 12T(ISP)nSM89XX 8-bits 12T(Traditional 8051)nSM79XX 8-bits 12T(Customization)nZiLOG nZ8 nZ86E02n 其他系列的单片机其他系列的单片机nAVR系列单片机 nMsp430系列单片机 n8098、80196系列单片机 nAT8P5X系列单片机 nCZG8000系列单片机 nSyncMOS系列单片机 nSTC系列单片机一、了解单片机原理8051引脚图51单片机 特殊功能寄存器(SFR)n关键字

    8、SFRnreg51.hnreg52.hKeil C51 单片机开发环境n适用于51单片机的C语言符合C语言标准nC51对C语言有自己的扩展标准C语言关键字关键字 用途 说明auto 存储种类说明 用以说明局部变量,缺省值为此break 程序语句 退出最内层循环case 程序语句 switch语句中的选择项char 数据类型说明 单字节整型数或字符型数据const 存储类型说明 在程序执行过程中不可更改的常量值continue 程序语句 转向下一次循环default 程序语句 switch语句中的失败选择项do 程序语句 构成do.while循环结构double 数据类型说明 双精度浮点数els

    9、e 程序语句 构成if.else选择结构enum 数据类型说明 枚举extern 存储种类说明 在其他程序模块中说明了的全局变量float 数据类型说明 单精度浮点数for 程序语句 构成for循环结构goto 程序语句 构成goto转移结构if 程序语句 构成if.else选择结构int 数据类型说明 基本整型数long 数据类型说明 长整型数关键字 用途 说明auto 存储种类说明 用以说明局部变量,缺省值为此break 程序语句 退出最内层循环case 程序语句 switch语句中的选择项char 数据类型说明 单字节整型数或字符型数据const 存储类型说明 在程序执行过程中不可更改的

    10、常量值continue 程序语句 转向下一次循环default 程序语句 switch语句中的失败选择项do 程序语句 构成do.while循环结构double 数据类型说明 双精度浮点数else 程序语句 构成if.else选择结构enum 数据类型说明 枚举extern 存储种类说明 在其他程序模块中说明了的全局变量float 数据类型说明 单精度浮点数for 程序语句 构成for循环结构goto 程序语句 构成goto转移结构if 程序语句 构成if.else选择结构int 数据类型说明 基本整型数long 数据类型说明 长整型数标准C语言关键字nregister 存储种类说明 使用CP

    11、U内部寄存的变量return 程序语句 函数返回short 数据类型说明 短整型数signed 数据类型说明 有符号数,二进制数据的最高位为符号位sizeof 运算符 计算表达式或数据类型的字节数static 存储种类说明 静态变量struct 数据类型说明 结构类型数据swicth 程序语句 构成switch选择结构typedef 数据类型说明 重新进行数据类型定义union 数据类型说明 联合类型数据unsigned 数据类型说明 无符号数数据void 数据类型说明 无类型数据volatile 数据类型说明 该变量在程序执行中可被隐含地改变while 程序语句 构成while和do.whi

    12、le循环结构C51编译器的扩展关键字 关键字 用途 说明bit 位标量声明 声明一个位标量或位类型的函数sbit 位标量声明 声明一个可位寻址变量sfr 特殊功能寄存器声明 声明一个特殊功能寄存器sfr16 特殊功能寄存器声明 声明一个16位的特殊功能寄存器data 存储器类型说明 直接寻址的内部数据存储器bdata 存储器类型说明 可位寻址的内部数据存储器idata 存储器类型说明 间接寻址的内部数据存储器pdata 存储器类型说明 分页寻址的外部数据存储器xdata 存储器类型说明 外部数据存储器code 存储器类型说明 程序存储器interrupt 中断函数说明 定义一个中断函数reen

    13、trant 再入函数说明 定义一个再入函数using 寄存器组定义 定义芯片的工作寄存器C51支持的数据类型(扩展)nbitn使用关键字bit可定义一个位标量,占用内存中的1个二进制位,其值是0或1。不能定义位指针,也不能定义位数组。nsfrnsfr将一个变量名与一个8位寄存器相联系,值域为00 xFF。利用它可以访问51单片机内部的特殊功能寄存器。比如用“sfr P0=0 x80”这一句代码,可以定义P0为P0端口在片内的寄存器,在后面的代码中用“”或“”之类的语句可以来操作特殊功能寄存器。nsfr16nsfr16将一个变量名与一个16位寄存器相联系,值域为00 xFFFF。利用它可以访问5

    14、1单片机内部的16位特殊功能寄存器。例如T0和T1。nsbitnsbit将一个变量名与一个芯片内部RAM中的可寻址位相联系,或者与特殊功能寄存器中的可寻址位相联系。例如 sfr P0=0 x80;sbit P0_1=P01,这样,在以后的程序中可以用P0_1对P0口的1号引脚进行读/写操作。Keil C 主界面并口输出示例并口输入示例中断interruptn什么是中断?nCPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生中断发生);nCPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务中断响应和中断服务);n待CPU将事件B处理完毕后,再回到原来事件A被中断的地方

    15、继续处理事件A(中断返中断返回回),这一过程称为中断中断。中断interruptn51单片机有哪些中断?中断服务程序nvoid 函数名(void)interrupt n 函数体语句 ninterrupt 是C51中断服务程序引入关键字,只能用于C51中断服务程序逻辑 nn是中断号 0 外部中断0 1 定时器中断T0 2 外部中断1 3 定时中断T1 4 串行中断 5 定时器中断T2 n注意:中断服务程序不能有参数,不能有返回值 IE:中断使能控制定时器/计数器 T0 T1n定时定时/计数器的结构计数器的结构 定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定

    16、时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。定时/计数器的工作原理n加加1计数器计数器输入的计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;一个是T0或T1引脚输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时/计数器中断允许时)。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。n可见,由溢出时计数器的值减去计数初值才是加可见,由溢出时计数器的值减去

    17、计数初值才是加1计数器的计数值。计数器的计数值。n1)设置为定时器模式时设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计计数值数值N乘以机器周期乘以机器周期Tcy就是定时时间就是定时时间t(us)。n2)设置为计数器模式时设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的

    18、电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2s。定时/计数器的控制n51单片机定时/计数器的工作由两个特殊功能寄存器控制。nTMOD用于设置其工作方式;nTCON用于控制其启动和中断申请。工作方式寄存器TMODnGATE:门控位。GATE0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATA1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作。即此时定时器的启动多了一条件。nC/T非:定时/计数模式选择位。C/T非0为定时模式;C/T非=1为计数模式。nM1

    19、M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。控制寄存器TCONnTCON的低4位用于控制外部中断优先级nTCON的高4位用于控制定时/计数器的启动和中断申请。定时/计数器的工作方式 n四种工作方式n方式1n方式2n方式3n方式4方式0n方式0为13位计数,由TL0的低5位(高3位未用)和TH0的8位组成。TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU发出中断请求。方式1 n方式1的计数位数是16位,由TL0作为低8位、TH0作为高8位,组成了16位加1计数器。方式2 n方式2为自动重装初值的8位计数方式。工作方式2特别适合于用作较

    20、精确的脉冲信号发生器。方式3n方式3只适用于T0。工作方式3将T0分成为两个独立的8位计数器TL0和TH0。工作于方式3时,T1停止使用。定时/计数器的初始化n初始化程序应完成如下工作:初始化程序应完成如下工作:n1、对TMOD赋值,以确定T0和T1的工作方式。n2、计算初值,并将其写入TH0、TL0或TH1、TL1。n3、中断方式时,则对IE赋值,开放中断。n4、使TR0或TR1置位,启动定时/计数器定时或计数。定时器中断程序示例#include sbit led=P23;unsigned char i=0;void main()P0=0 xFF;TMOD=0 x01;TH0=0 x15;TL0=0 xA0;TR0=1;ET0=1;EA=1;for(;);void timer0()interrupt 1i+;TH0=0 x15;TL0=0 xA0;if(i=10)i=0;led=led;此课件下载可自行编辑修改,供参考!感谢您的支持,我们努力做得更好!

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:51单片机C语言开发课件.ppt
    链接地址:https://www.163wenku.com/p-5935167.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库