大连理工大学电子工程训练实验报告精要.doc

大连理工大学电子工程训练实验报告精要.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大连理工大学电子工程训练实验报告精要

大连理工大学本科实验报告 题目:基于单片机的小车控制系统 课程名称: 电子工程训练 学院(系): 电信学部 专 业: 电子信息工程 班 级: 电子1301 学 号: 201383022 实验序号: 学生姓名: 陈冠谋 成 绩: 2017年 1 月 2日 成绩评定 项目 各项总分 得分 焊接 30 最小系统与电源 10 功能实现 45 实验报告 10 出勤 5 总分 电子安装实验室安全守则 题目:基于单片机的小车控制系统 1 设计要求 根据要求可将本次实验分为以下5个模块: 电源模块 小车控制模块 数码管显示模块 最小系统模块 蓝牙模块 2 设计分析及系统方案设计 电源模块:接电脑USB供电,采用整流电桥,按电路图连接 最小系统模块:实现40个引脚合理分配,使数码管使用三个使能端,8个输出端,小车使用4个驱动引脚控制小车 小车控制模块:使用P3.7 P3.2 P3.3 P3.4引脚间电位差使得小车马达得以驱动,实现小车正转,左转,右转,加速,停止功能 数码管显示模块:采用P0.2 P0.3 P0.4作为使能端,P0.5~P1.4作为输出端 3 各功能模块硬件电路设计 3.1电源模块 电路图如图,接电脑USB供电,采用整流电桥,按电路图连接 3.2最小系统模块 单片机的最小系统,电路图如下图 3.21单片机CPU部分:40个引脚,用40个排针输出,40脚接VCC,20脚接GND,VCC与GND之间用电容耦合。 3.22电源供电部分:直接采用USB给电路供电 3.23晶振部分采用11.0592M晶振,电容采用30pf,晶振部分采用了一个晶振插座,可以更换升级晶振。 3.3数码管显示模块 用P0.2 P0.3 P0.4作为使能端,P0.5~P1.4作为输出端 3.4小车控制模块 实验要求电机具有启动、停止、正转、反转和转向等功能。因此采用直流电机。采用常见的H桥电路实现。通过控制端口的电平经过两NPN加大驱动能力后接上H桥,两控制端电平相同时停转,电平相反时电机转动,通过控制两控制端电平正反可以控制电机转动方向,电路如图: 4 系统软件设计 软件流程图如图所示: 源程序代码: 主函数: #include reg51.h #include ctrl.h int Speed; void main(void) { System_Init(); while(1) { LCD_Dis(); } } 控制函数: #include reg51.h #include ctrl.h void System_Init(void) { P0M0 = 0x00; //均为普通输入输出口 P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; P5M0 = 0x00; P5M1 = 0x00; P6M0 = 0x00; P6M1 = 0x00; P7M0 = 0x00; P7M1 = 0x00; LCD_Init(); delay(500); LCD_Clear(); LCD_Write_String(0,1,----YL----); LCD_Write_String(0,0, Speed:); LCD_Write_String(10,0,INIT ); //*初始化电机转速为0 Left = 0; Right = 0; PWM_Out(3,1); PWM_Out(4,1); Uart_init(); Buzzer=0; } void delay(unsigned int mms)//延时,时长未知 { unsigned int i=0, j=0; for (i=0; imms; i++) for (j=0; j500; j++) ; } void PWM_Out(unsigned char pwmi,

文档评论(0)

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

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

1亿VIP精品文档

相关文档