机电一体化实验2单片机输出接口和伺服电机控制.ppt

机电一体化实验2单片机输出接口和伺服电机控制.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验二 单片机输出接口 与伺服电机控制 2.1 单片机的概念与发展 将微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件集成在一块芯片上,称其为单片微型计算机,简称单片机。英文名: Single Chip Microcomputer,又名微控制器Microcontroller。 80C51的基本结构 2.1.1 单片机的技术发展 单片机技术发展过程可分为三个主要阶段: 单芯片微机形成阶段 1976年,Intel公司推出了MCS-48系列单片机 。8位CPU、1K字节ROM、64字节RAM、27根I/O线和1个8位定时/计数器。 特点是:存储器容量较小,寻址范围小(不大于4K),无串行接口,指令系统功能不强。 性能完善提高阶段 1980年,Intel公司推出了MCS-51系列单片机:8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。 特点是:结构体系完善,性能已大大提高,面向控制的特点进一步突出。现在,MCS-51已成为公认的单片机经典机种 。 微控制器化阶段 1982年,Intel推出MCS-96系列单片机。 芯片内集成:16位CPU、8K字节ROM、232字节RAM、5个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K。片上还有8路10位ADC、1路PWM输出及高速I/O部件等。 特点是:片内面向测控系统外围电路增强,使单片机可以方便灵活地用于复杂的自动测控系统及设备。 “微控制器”的称谓更能反应单片机的本质。 2.1.2 单片机的应用领域 家电 办公自动化 商业营销 工业自动化 智能仪表与集成智能传感器 汽车电子与航空航天电子系统 单片机的I/O引脚 2.1.3 I/O口介绍 上图是 51 标准的 40 引脚双列直插式集成电路芯片: P0.0~P0.7,P0 口 8 位双向口线(在引脚的 39~32 号端子); P1.0~P1.7,P1 口 8 位准双向口线(在引脚的 1~8 号端子); P2.0~P2.7,P2 口 8 位准双向口线(在引脚的 21~28 号端子); P3.0~P3.7,P3 口 8 位多用途(在引脚的10~17 号端子); P0 口有两个功能:当外部扩展存储器时,当做低 8 位数据/地址总线(如图 2-6 中的D0~D7 为数据总线接口) 来使用;不扩展时,可做一般的 I/O 使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。 P1 口只做 I/O 口使用:其内部有 上拉电阻。 P2 口有两个功能:当扩展外部存储器使用时,当作地址总线高 8 位使用;不扩展时,做一般 I /O 口使用,其内部有上拉电阻; P3 口有两个功能:除了作为 I/O 使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。 2.2.1 单个LED闪烁实验 例程:HighLowLed.c #includeBoeBot.h #includeuart.h int main(void) { uart_Init(); //初始化串口 printf(The LED connected to P1_0 is blinking!\n); while(1) { P1_0=1; // P1_0输出高电平 delay_nms(500); //延时500ms P1_0=0; // P1_0输出低电平 delay_nms(500); //延时500ms } } 2.2.2 多个LED实验 用其他的I/O口试一试呢? 顺序点亮两个或多个LED 呢? 2.3 伺服电机 2.3.1 机器人伺服电机控制方法 参考下面的程序段 while(1) { P1_0=1; delay_nus(1300); P1_0=0; delay_nms(20); } 2.3.2 思考 同时控制两个电机的程序。 控制两个电机同向旋转3s,如何实现? 2.3.3 在线调试转速 通过串口调整电机的控制参数,改变电机的旋转速度。 例程:ControlServoWithComputer.c #includeBoebot.h #includeuart.h int main(void) { int Counter; int PulseNumber,PulseDuration; uart_Init(); //串口初始化 printf(P

文档评论(0)

kbook + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档