单片机学习心得

时间:2024-11-13 06:31:18编辑:奇事君

急!!!求单片机8255交通灯控制课程设计报告

  你的题目写的太简单了,我只能看出来ABC口的地址是一样的
  底下是我的论文,倒计时是用LED做的,红绿灯是用发光二极管做的
  你自己在里面截吧
  单片机控制交通灯的设计

  论文目录
  一、 摘要及关键字、参考文献

  二、 方案设计与论证

  三、正文:一、功能描述
  二、系统硬件电路的设计
  三、系统主要程序的设计

  四、电路总原理图

  五、主程序


  一 摘要:
  本系统采用单片机、键盘、LED显示、交通灯演示系统组成。设计一个用于十字路口的车辆及行人的交通管理,系统包括左拐、右拐、及行基本的交通灯的功能,计时牌显示路口通行转换剩余时间,在出现紧急情况时可由交通手动实现全路口车辆禁行而行人通行状态。另外,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态,15s后系统自动恢复正常管理。其他还有 84s与60s通行管理转换等功能。采用数码管与点阵LED相结合的显示方法,既要求倒计时数字输出,又要求有状态灯输出等。

  关键字:
  单片机系统(AT89C51)控制8255、交通规则、LED显示、动态扫描、按键输入、分时段调整


  参考文献:《单片机课程设计指导》 北京航天航空大学出版社
  《基于MCS-51系列的单片机原理的应用设计》 国防工业出版社
  《单片机实训教程》 北京大学出版社
  《单片机系统原理及应用》
  《微机原理及应用》


  二 、方案设计与论证
  1电源提供方案:
  采用独立的稳压电源,此方案稳定可靠,且有各种成熟电路可供选用

  2显示界面方案
  采用数码管和点阵LED相结合的方法,因为实际既要求倒计时施主输出,又要求又状态灯输出等,为方便观看并考虑到现实状况,用数码管与LED分别显示时间和提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。

  3输入方案
  直接在IO口上接按键开关。因为设计时精简和优化了电路,所以剩余口的资源还比较多。

  4主控制方案
  采用AT89C51单片机作为控制器,控制8255实行通行倒计时及左拐、右拐、直行、行人通行指示采用单块LCD液晶点阵显示器。这种方案设计占用单片机的端口最少,硬件也少。耗电也最小;


  系 统 框 图


  正 文
  一、功能描述
  本系统由单片机系统、键盘、发光二极管、交通灯演示系统组成,单片机作为主控制器用于十字路口的车辆及行人的交通管理,每个方向具有左拐、右拐、直行及行人4种通行指示灯,计时牌显示路口通行转换剩余时间。另外,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态,15s后系统自动恢复正常管理。并有手动控制分时段 84s与60s通行管理转换等功能。
  二、系统硬件电路的设计
  整套电路系统由控制系统模块、通行灯输出控制显示模块、时间显示模块、时间显示模块和自动特种车辆控制模块等组成。
  1、主控制系统
  单片机的P0口用于控制8255。8255的PA口和PB口用于控制南北及东 西的通行灯,。PC口及P3.0~P3.2口用于4组2位LED计时器的控制,特种车通过时使用外中断1口(P3.3),手动自动转换采用P1.0按键。
  选择8255的工作方式0,在这种情况下三个端口都可以由程序设置为输入和输出。

  2、通行灯输出控制
  道口交通灯指示采用高亮度红绿双色发光二极管,左拐、直行、右拐及行人各一个。当发光电流为6mA时,按公式R=(5-1.8)/0.006计算,限流电阻应为510Ω.由于南北通行时双向指示牌相同,因此每个端口应具有12mA的吸收电流能力。图7.4所示为指示灯电路图。

  3、时间显示模块
  道口通行剩余时间采用高亮红色7段LED发光数码管显示,采用共阳数码管,如用单片机吸收电流驱动,列扫描驱动使用三极管,按每段6mA电流算,全显示字形“8”时,每个数码管需6mA×8=48mA。由于时间显示每个道口相同,4组需192mA,因此设计中采用中功率三极管9012.由于单片机每个断码输出口需吸收24mA 电流,因此在电路设计中也使用了驱动集成块74HC244。其显示驱动电路如图示。
  4、特种车辆自动控制模块
  自动道口灯在特种车辆到来时能自动关闭所有绿灯,让特种车通过。设计中采用红外线发生器作为特种车的发生器,使用实时中断来影响特种车的通行要求。红外线接收器一般采用电视机上用的一体化红外接收器,具有很高的灵敏度和较强的抗干扰能力.
  5、电源电路
  由于整个系统采用的电源电压需+5V电压,所以采用不可调的3端稳压器件,用常用的lm7850就可以满足系统电源的要求。LM7850三端集成稳压电源内部由准电压回路、恒流源、过流保护、过压保护和短路保护回路等8部分组成具有低功耗,高效率,波纹系数小,输出电压稳定等优点。


  三、系统主要程序的设计
  道口交通控制系统程序主要分为以下几个模块:初始化程序、主程序、定时中断程序和特种车实时响应程序等。
  1、 初始化程序
  初始化程序主要完成内存划,定时器的工作模式、中断方式等的设定。由于子程序调用较多,因此初始化时堆栈指针设于80H处。定时器T0、T1设为16位定时器模式,定时时间位50ms,为秒计时用,T1为通行结束闪烁用。
  2、 主程序
  主程序要负责总体程序管理功能,实现人机交换设定。由于采用动态扫描方式显示时间,因此主程序大部分时间要调用扫描显示程序。主程序流程图如下图示。

  3、 外中断1中断服务程序
  经过时,车中发射红外线信号,其信号被道口控制板上的接收器接收,并输出一个低电平处外中断1.中断处理程序流程图如下页图所示。

  4、 定时服务中断程序
  序主要用于行车与行人的通行指示,按照交通规则,红绿灯控制转换逻辑表如7.1表所列。
  南北方向 端口 控制功能 120~110s 110~70s 70~60s 60~10s 10~0s
  P*.7 左拐红 0 0 0 1 1
  P*.6 左拐绿 1 1 1 0 0/1
  P*.5 直行红 1 1 1 0 0
  P*.4 直行绿 0 0 0/1 1 1
  P*.3 右拐红 0 1 1 1 1
  P*.2 右拐绿 1 0 0 0 0/1
  P*.1 行人红 1 1 1 0 0
  P*.0 行人绿 0 0 0/1 1 1
  道口控制字 66H 6AH 6AH/7BH 99H 99H/DDH
  东西方向 P*.7 左拐红 0 0 0 0 0
  P*.6 左拐绿 1 1 1 1 1
  P*.5 直行红 0 0 0 0 0
  P*.4 直行绿 1 1 1 1 1
  P*.3 右拐红 0 1 1 1 1
  P*.2 右拐绿 1 0 0 0 0/1
  P*.1 行人绿 0 0 0 0 0
  P*.0 行人红 1 1 1 1 1
  道口控制字 55H 59H 59H 59H 59H/5DH


  通行规则如下:
  (1) 车辆南北直行、各路右拐,南北向行人通行。南北向通行时间为1min,各路右拐比直行滞后10s开放。
  (2) 车辆南北向左拐、各路右拐,行人禁行。通行时间为1min。
  (3) 车辆东西向直行、各路右拐,东西向行人通行。东西向通行时间为1min,各路右拐比直行滞后10s开放。
  (4) 车辆东西向左拐、各路右拐,行人禁行。通行时间为1min。

  表中通行规则,是以给控制红绿灯端口送控制码的方式实现的。它的原理是,将按不同通行规则时的各路口的红绿灯亮灭情况转换为单片机端口控制码。其指示灯功能通过T0定时中断服务程序实现。
  定时器T0定时益出中断周期为10ms,中断累计20次(即1s)时对120s倒计时单元减1操作。设计中将4种通行规则分成集中不同的亮灯方式,通过查询秒倒计时单元的数据,实现在不同的时间段给控制端口送不同的控制数据码。控制码分为5个时间段:84—74s、74—58s、58—48s、48—10s、10—0s。交通管理定时功能程序流程图如下页图所示。


  5、 调试及性能分析

  设计时按红绿交通灯控制程序和特种车辆经过中断程序两大部分电路进行测试。

  1、 红绿交通灯控制程序
  时器T0,直接按照表7.1中算好的数据码送出来控制灯,观察其逻辑状态是否符合要求。可多次、反复地进行调试,直至逻辑关系正确。值得注意的是,南北方向、东西方向的指示灯要同时调试。
  2、 特殊车辆通行时红外线检测电路的调试
  在模拟小车中放一块红外发射模块,将示波器输入端接在交通控制灯的红外接收模块的输出引脚上,当小车通过路口时,检测红外线是否被接收。若该脚输出为低电平,则说明可以收到信号,电路正常。
  本系统以AT89C51单片机为核心,开发程序调试阶段采用W78E516B进行在线编程及修改,可大大加快调试进度。设计的交通灯可用于十字路口的车辆及行人的交通管理,显示采用2位7段数码管,可以很直观的显示红绿灯的开放和关闭的时间;设计中应用了两种倒计时显示方式, 84S 倒计时适用于车流量较大的城市,60s倒计时可用于中小型城市;功能完整,不仅有普通交通灯的指示功能,还增加了特种车辆自动通行功能。其控制功能和效果与真实道口管理红绿灯完全一致。


一个单片机的仿真程序,哪位大神帮帮我解释下每步骤的含义是什么,押上全部财富

unsigned char code dispbit[] 定义数组 dispbit 且存放到CODE 内存空间
bit 位变量

主程序中

TMOD=0x15;
TH0=0;
TL0=0;
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
TR1=1;
TR0=1;
ET0=1;
ET1=1;
EA=1;

设置定时器 开中断
for(i=0;i<8;i++)
{
temp[i]=0;
}
i=0;
初始化TEMP数组
while(x/10)
{
temp[i]=x%10;
x=x/10;
i++;
}
temp[i]=x;

举例 如果X=5462 那么tempp[0]=2 tempp[1]=6 tempp[2]=4 tempp[3]=5 .......
for(i=0;i<6;i++)
{
dispbuf[i]=temp[i];
}
把要显示的TEMP 赋值到 dispbuf 中、
timecount=0;
T0count=0;
TH0=0;
TL0=0;
TR0=1;
初始化定时器 且启动 定时

T0count++; 进入中断 计数器加一




void t1(void) interrupt 3 using 0
{
TH1=(65536-5000)/256; //
TL1=(65536-5000)%256; //
//设置定时器1
timecount++;//定时计数
if(timecount==200) //中断200次以后 停止定时器0
{
TR0=0;
timecount=0;
flag=1;
}
//以下是将数字 显示到数码管 或什么别的地方
P2=0xff;
P0=dispcode[dispbuf[dispcount]];
P2=dispbit[dispcount];
dispcount++;
if(dispcount==8) // 8位的
{
dispcount=0;
}
}


单片机实训总结范文5篇

单片机实训课程,是农业工程类专业非常重要的专业技术课,是后续专业实践课的基础,大家做好实训 总结 ,总结更多的 经验 。下面是我给大家带来的单片机实训总结 范文 _单片机实训 工作总结 ,以供大家参考,我们一起来看看吧! ↓ ↓ 更多关于 “ 实 训总 结 ” 内容推荐 ↓ ↓ ★ 单 片机实 训报 告 ★ ★ 单 片 机实 训心得 体 会 ★ ★ 实 训总 结报 告范 文 ★ ★ 实 训总 结与心 得 体 会 ★ ★ 实 习实训总 结报 告 ★ ▼ 单片机实训总结范文篇一: 通过今次单片机实训,使我对单片机的认识有了更深刻的理解。系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。 由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。 踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最终都会化为甜美的甘泉。 但在这次实训中同时使我对汇编语言有了更深的认识。当我第一次接触汇编语言就感觉很难,特别是今次实训要用到汇编语言,尽管困难重重,可我们还是克服了。这次的实训使培养了我们严肃认真的做事作风,增强了我们之间的团队合作能力,使我们认识到了团队合作精神的重要性。 这次实训的经历也会使我终身受益,我感受到这次实训是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。希望这次的经历能让我在以后学习中激励我继续进步。 ▼ 单片机实训总结范文篇二: 通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。了解了一些简单程序的录入,LED 显示器 、键盘、和显示器的应用和原理。 LED显示器:LED显示器是由发光二管组成显示字段的器件。通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。有段选码和和位选码。当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA电流;位线的电流应选择40-80MA。LED显示器的显示方式有动态和静态两种。7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。7289A的控制指令分为两类:8位宽度的单字节指令和16位宽度双字节指令;还有闪烁指令和消隐指令。7289A采用串行方式SPI总线与微处理器通信;7289A与AT89C52接口电路,在实际电路中无论接不接键盘,电路中连接到其各段上的8个 100千欧的下拉电阻均不可以省去,如果不接键盘而只接显示器可以省去8个10千欧电阻,若仅接键盘而不接显示器,可省去串入DP及SA-SG连线的8个220欧电阻,7289A还需要外接晶体振荡电路。液晶显示器简称LCD,其显示原理是用经过处后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。最简单的笔段式液晶显示器类似于LCD显示器,可以显示简单的字符和数字,而目前大量使用的是点阵式LCD显示器,既可以显示字符和数字也可以显示汉字和图形。如果把LCD显示屏、背光可变电源、接口控制逻辑、驱动集成芯片等部件构成一个整体,是的与CPU接口十分方便。 键盘:键盘是最常见的计算机输入设备,它广泛应用于微型计算机和各种终端设备上。计算机操作者通过键盘向计算机输入各种指令、数据,指挥计算机的工作。按照键盘的工作原理和按键方式的不同,可以划分为四种:机械式键盘采用类似金属接触式开关,工作原理是使触点导通或断开,具有工艺简单、噪音大、易维护的特点。 塑料薄膜式键盘键盘内部共分四层,实现了无机械磨损。其特点是低价格、低噪音和低成本,已占领市场绝大部分份额。 导电橡胶式键盘触点的结构是通过导电橡胶相连。键盘内部有一层凸起带电的导电橡胶,每个按键都对应一个凸起,按下时把下面的触点接通。这种类型键盘是市场由机械键盘向薄膜键盘的过渡产品。 无接点静电电容式键盘使用类似电容式开关的原理,通过按键时改变电极间的距离引起电容容量改变从而驱动编码器。特点是无磨损且密封性较好。 按照按键方式的不同键盘可分为接触式和无触点式两类。接触式键盘就是我们通常所说的机械式键盘,它又分为普通触点式和干簧式。普通触点式的两个触点直接接触,从而使电路闭合,产生信号;而干簧式键盘则是在触点间加装磁铁,当键按下时,依靠磁力使触点接触,电路闭合。与普通触点式键盘相比,干簧式键盘具有响应速度快、使用寿命长、触点不易氧化等优点。无触点式键盘又分为电容式、霍尔式和触摸式三种。其中电容式是我们最常用到的键盘类型,它的触点之间并非直接接触,而是当按键按下时,在触点之间形成两个串联的平板电容,从而使脉冲信号通过,其效果与接触式是等同的。电容式键盘击键时无噪声,响应速度快,但是价格很高一些。 显示器:按照显示器的显示管分类CRT、LCD。按显示色彩分类单色显示器、彩色显示器。按大小分类通常有14寸、15寸、17寸和19寸,或者更大。显示管的屏幕上涂有一层荧光粉,电子枪发射出的电子击打在屏幕上,使被击打位置的荧光粉发光,从而产生了图像,每一个发光点又由“红”“绿”“蓝”三个小的发光点组成,这个发光点也就是一个象素。由于电子束是分为三条的,它们分别射向屏幕上的这三种不同的发光小点,从而在屏幕上出现绚丽多彩的画面。显示器显示画面是由显示卡来控制的。若仔细观察显示器上的文本或图像是由点组成的,屏幕上点越多越密,则分辨率越高。 屏幕上相邻两个同色点的距离称为点距,常见点距规格有0.31mm、0.28mm、0.25mm等。显示器点距越小,在高分辨率下越容易取得清晰的显示效果。电子束采用光栅扫描方式,从屏幕左上角一点开始,向右逐点进行扫描,形成一条水平线;到达最右端后,又回到下一条水平线的左端,重复上面的过程;当电子束完成右下角一点的扫描后,形成一帧。此后,电子束又回到左上方起点,开始下一帧的扫描。这种 方法 也就是常说的逐行扫描显示。而隔行扫描指电子束在扫描时每隔一行扫一线,完成一屏后再返回来扫描剩下的线,这与电视机的原理一样。隔行扫描的显示器比逐行扫描闪烁得更厉害,也会让使用者的眼睛更疲劳。完成一帧所花时间的倒数叫垂直扫描频率,也叫刷新频率,比如60Hz、75Hz等。 通过这几天的单片机的实训,我在理论的基础上更深刻的掌握了单片机的深层内容及实际生活中的应用,实训锻炼了自己动手能力和思维能力,还有在软件方面的编程能力,让我受益匪浅,同时也暴露出一些平时学习上的问题,让我深刻 反思 。这些问题的发现将为我以后的学习和工作找明道路,查漏补缺为进一步学习作好准备。通过实训,让我懂得了如何编写一些简单的程序,学会了如何制作单片机应用程序,并且可以在今后的日常生活中灵活运用。 ▼ 单片机实训总结范文篇三: 一 实习目的 1. 通过对单片机小系统的设计、焊接、装配,掌握电路原理图及电子线路的基本焊接装配工艺、规范及注意事项; 2. 通过对系统板的测试,了解系统板的工作原理及性能,掌握元器件及系统故障的排除方法; 3. 掌握程序编制及调试方法,完成系统初始化、存储器操作、端口操作、键盘显示等程序的编制及调试(汇编语言、C语言均可); 4. 通过单片机系统的组装,调试以及程序编制、调试及运行,与理论及实验的有机结合和指导教师的补充介绍,使学生掌握控制系统的工作原理、开发方法和操作方法。 5. 培养学生解决实际问题的能力,提高对理论知识的感性认识。 二 实习意义 通过本实习不但可以掌握单片机软、硬件的综合调试方法,而且可以熟练掌握电路原理图,激发对单片机智能性的探索精神,提高学生的综合素质,培养学生应用单片机实现对工业控制系统的设计、开发与调试的能力。在制作学习过程中,不但可以掌握软、硬件的综合调试方法,而且可以使学生对单片机智能性产生强烈的欲望。达到最大限度地掌握微机应用技术,软件及接口设计和数据采集与处理的技能,培养电综合实践素质的目的。 三 系统基本组成及工作原理 1 系统基本组成 系统以单片机STC89C52作为控制核心,各部分基本组成框图如图1所示。 流水灯部分由单片机、键盘模块等组成; 四位数码显示,编程实现30秒倒计时部分由单片机、键盘模块、液晶显示模块等组成; 按键功能部分通过按键控制流水灯部分、四位数码显示部分; 电子钟部分由单片机、键盘模块、液晶显示模块等组成; 使用功能键实现相应的功能组合部分通过流水灯部分、30秒倒计时部分实现; 模数转换部分由单片机、ADC0809转换模块、键盘模块、液晶显示模块等组成。 2 系统工作原理 本设计采用STC89C52RC单片机作为本系统的控制模块。单片机可把由ADC0809及单片机中的数据利用软件来进行处理,从而把数据传输到显示模块,实现阻值大小的显示。以数码管显示为显示模块,把单片机传来的数据显示出来。在显示电路中,主要靠按键来实现各种显示要求的选择与切换。 对于模数转换部分,单片机89C51通过P0口的I/O线向ADC0809发送锁存地址以及复位、启动转换等信号,并查询转换状态。 ADC0809启动转换后,将0-8个通道一次输入的电压信号转换成相应的数字量,供89c51读取使用,并且将EOC置1供单片机查询转换状态。而滑动变阻器负责将阻值信号转换成电压信号,再送到ADC0809的八个通道。当单片机查询到转换结束后依次读取数据并按照现实的需要进行二进制转BCD码等处理最后控制显示电路显示出数字。 其实现方式是:ADC0809转换来自3通道的阻值变化信号。80c51的P2口与ADC0809的输出相连用于读取转换结果,同时P0.0-P0.6作控制总线,向ADC0809发送锁存、启动等控制信息,并查询EOC状态。ALE经分频后给ADC0809提供时钟信号。P3.0和P3.1口用于向显示电路输出段码,P3.2-P3.7用于数码管的位选。 四 系统硬件设计 结合本设计的要求和技术指标,通过对系统大致程序量的估计和系统工作的估计,考虑价格因素。选定AT89C51单片机作为系统的主要控制芯片,8位模拟转换器ADC0809进行阻值转换。 逐次比较法A/D转换器是目前种类最多、应用最广的A/D转换器,其原理即“逐位比较”,其过程类似于用砝码在天平上称物体重量。它由N位寄存器、A/D转换器、比较器和控制逻辑等部分组成,N位寄存器代表N位二进制码。目前应用最广的逐次比较法A/D转换器有ADC0809。它是一种8路模拟输入8位数字输出的逐次比较法A/D转换器件。其主要性能指标和特性如下: 分表率:8位 转换时间:取决于芯片时钟频率,转换一次时间位64个时钟周期 单一电源:+5v 模拟输入电压范围:单极性0-+5v;双极性-5v-+5v 具有可控三态输出锁存器 启动转换控制位脉冲式,上升沿使内部所有寄存器清零,下降沿使A/D转换开始。 通过以上性能比较,我们不难看出ADC0809满足本设计的要求,所以本设计采用ADC0809作为A/D转换器 1 按键电路设计 利用单片机的P1口扩展一个8位键盘。 2 晶振与复位电路设计 本设计采用的是上电复位的形式,如图3.3所示,上电顺进RST获得高电平,随着电容器C的充电,RST引脚上的高电平将逐渐下降,只要高电平能保持复位所需要的两个机器周期以上时间,单片机就能实现复位操作。 晶振电路为单片机提供工作所需要的时钟信号。震荡频率越高,系统时钟频率也越高,单片机运行的速度就越快。其电路如图3.4所示。89C51的_TAL1和_TAL2两个引脚跨接晶体振荡器和微调电容C1、C2形成反馈电路,就构成了稳定的自激振荡器,本设计的震荡器频率为12MHZ。 3 下载电路设计 4 流水灯模块设计 5 模数转换模块设计 6 显示电路设计 本设计采用六位数码管。本系统采用共阳极动态扫描的方式连接。数码管的段码数据由89C51的P3.0-P3.1口送出,89C51的P3.2-P3.7输出位选通信号,只有被选中的那位数码管才会显示段码 7 整体电路设计 五 系统软件设计 1主程序设计 主程序采用分支结构,以状态号标识系统所处的状态。在上电初始化后即进入状态号的轮询扫描,状态号的值决定了分支程序的入口。其中分支程序分别为:AD转换模块(状态号为0),数字模块状态号为1),倒计时模块(状态号为2),电子钟模块(状态号为3),功能组合模块(状态号为4),流水灯模块(状态号为5)。 2 功能子程序设计 2.1 流水灯模块 流水灯模块利用单片机的P3口,通过给P3口的各位送低电平,相应的实现流水灯有规律的点亮。 2.2 30秒倒计时模块 30秒倒计时模块利用单片机的P3.0与P3.1口送相应的段控数据,P3.2-P3.7口送相应的位控数据。通过程序实现30秒倒计时。 2.3 数字加减模块 利用数码管实现数字显示,通过加一键或者是减一键实现数字变量的加一或者减一,进而实现利用数码管显示加一键、减一键功能。 2.4 电子钟模块 利用数码管实现时间显示,通过加一键或者是减一键实现小时变量或者是分钟变量的加一,从而实现调时功能。 2.5 模数转换模块 对于模数转换部分,单片机89C51通过P0口的I/O线向ADC0809发送锁存地址以及复位、启动转换等信号,并查询转换状态。 ADC0809启动转换后,将0-8个通道一次输入的电压信号转换成相应的数字量,供89c51读取使用,并且将EOC置1供单片机查询转换状态。而滑动变阻器负责将阻值信号转换成电压信号,再送到ADC0809的八个通道。当单片机查询到转换结束后依次读取数据并按照现实的需要进行二进制转BCD码等处理最后控制显示电路显示出数字。 其实现方式是:ADC0809转换来自3通道的阻值变化信号。80c51的P2口与ADC0809的输出相连用于读取转换结果,同时P0.0-P0.6作控制总线,向ADC0809发送锁存、启动等控制信息,并查询EOC状态。ALE经分频后给ADC0809提供时钟信号。P3.0和P3.1口用于向显示电路输出段码,P3.2-P3.7用于数码管的位选。 六 实习总结 、体会 本次单片机实习我们一共完成了个模块的程序设计,包括:led显示模块、数码管显示模块和键盘模块。分别实现了流水灯的循环点亮控制、数码管的静态和动态计数显示,还有矩阵键盘按键控制数码管显示的程序设计。然后我们分别用protues系统仿真软件对各个模块进行了模拟仿真,用keil软件编制了汇编语言程序,验证了我们所设计的程序。 这次实习还使我理解了编写程序的一些技巧。单片机应用系统一般由包含多个模块的主程序和由各种子程序组成。每一模块都要完成一个明确的任务,实现某个具体的功能,如计算、接受、发送、延时、显示等。采用模块化程序设计方法,就是将这些具体功能程序进行独立设计和分别调试,最后将这些模块程序装配成整体程序并进行联合调试。模块化程序设计方法的优点:一个模块可以为多个程序所共享;单个功能明确的程序模块的设计和调试比较方便,容易完成;利用已经编好的成熟模块,将大大缩短开发程序的时间,降低开发成本。采用循环结构和子程序结构可以使程序的容量大大减少,提高程序的效率,节省内存。对于多重循环,要注意各重循环的初值和循环结束的条件,避免出现程序无休止循环的“死循环”现象; 通过这次的实习我发现,只有理论水平提高了,才能够将课本知识与实践相结合,理论知识服务于教学实践,以增强自己的动手能力。这次实习十分有意义,这次实习我们知道了理论和实践的距离,也知道了理论和实践相结合的重要性。 回顾起此次课程设计,感觉受益匪浅,从拿到题目到完成整个编程,从理论到实践,学到很多很多的课堂理论中没学到过的东西,不仅对键盘的识别技术这一章节的知识点有了深刻的认识,而且对这学期开设的单片机这门课程有了更全面的了解,尤其是在学习使用proteus软件片编程和仿真时收获良多。通过这次单片机课程设计,还使我懂得了实践的重要性。同时在程序调试的过程中提高自己的发现问题、解决问题、实际动手和独立思考的能力。 这次课程设计能顺利的完成,除了我们的努力外,当然也离不开指导老师申老师的辛勤指导,致使我在设计的过程中学到了很多实用性的知识。同时,对给过我帮助的所有同学和各位指导老师表示忠心的感谢! ▼ 单片机实训总结范文篇四: 通过为期一周的单片机实训,是我们对这门课有了许多新的了解,弥补了在课堂上学习的不足。相信这对我们以后的学习和工作都会有很大的帮助。我们一定要在最短的时间里对这些不足加以改正! 首先,在这次试训中我被单片机强大的功能所震撼,以前在课堂上完全没有能理解可编程单片机的优越性。这次通过实体仿真软件等辅助软件的共同效果,是这次试训有了鲜明的活力。换是我们认识到这次试训不仅仅是一个软件的应用,更多的是使我们认识到学习到很多在课堂上无法得到的东西。特别是protues软件的功能是我们了解了当今开发系统的新方向,简直太不可思议啦! 单片机作为一种最简单的软件,与我们的日常生活息息相关,了解一些单片机程序的简单录入是非常必要的。如:LED显示器、键盘和显示器的应用和原理。 在被刺实训中我们每个人通过一个八位流水灯的制作,使我们深深地体会到了单片机在现实生活中的小小应用,既增强了我们的好奇心,又巩固了我们的理论知识。更让我们体会到了单片机手动的开始平台的完善与成熟。只要你有想法,单片机就有可能让他成为现实。这里我学习完protues软件后的第一感觉是,虽然这软件工作不稳定,但是会有相当不错的效果出来。这对我以后的工作一定会有帮助的。在这次试训中不仅只对单片机编程有了新的认识,还对整个单片机的开发平台都有了一厅的了解,这是一笔不错的收获。 通过这几天的试训,使我的感触很深,真实“条条大路通罗马”,要达到目的,不同的人就有不同的方法。只要你的方法不错!五花八门都可以,而且是各有特色。走出来的结果都有各自的独到之处。在编程中“简”字贯穿于整个程序设计中,越简单越好,毕竟单片机留给用户的资源是有限的,所以我们要充分利用这些资源,达到更好的效果,这些是我们在以后的学习生活中应值得注意的地方。 在试训中有苦有甜,当我们为一个很难攻破的程序找出路时,心情烦躁,感觉自己很不可理喻,当程序一点一点编好后,自己从心底感觉到一点小小的安慰,看着自己的成果。感觉很欣慰,有一丝丝的甜意,几天的实训使自己的思维逻辑也有了小小的进步。 ▼ 单片机实训总结范文篇五: 这是我第一次做单片机实验,说起来有一些紧张和新奇。在此之前我并没有接触过单片机,我本以为与之前的光学实验及 其它 实验差不多,可我进到实验室之后,我就改变了这个看法。 单片机实验要求的是一种思维的创新,而不是简单的重复老师所说的实验步骤。因此第一次实验,实验老师向我们讲解了CVAVR编译器的大体情况及使用方法和技巧,并简单的向我们示例——如何在CVAVR中编写一段程序。编完程序之后,知道我们如何使用AVRStudio达到将编好的程序输入到单片机中来使其运行。 之后老师让我们以组为单位合作编写一段程序,并使其运行。我们组想要编写一个跑马灯的程序。在第一次运行CVAVR时,我们组就遇到了一个麻烦,我们在建立一个新project文件那里出现了错误。在保存这个新project文件的时候,我们单击了Save,而不是Generate,SaveandE_it.因此它弹不出我们我们所需要的源程序。之后我们通过询问其他人解决了这个问题。在编程中,我们开始做的是两盏灯的交替闪烁,间隔时间是1000ms。在运用AVRStudio的时候,我们又犯了一个错误。在我们打开编译好的工程文件时,开始调试,在最后一步点击Finish时,弹出一对话框,问我们是否更新,然后我们单击了Yes。这导致了仿真器无法下次使用。这是由于实验室中的仿真器是盗版的,无法进行更新。 经过我们的不断努力,我们终于实现了简单的跑马灯的运行,便是两个灯地交替闪烁。我们感到兴奋极了。但是我们并没有满足于当前,我们又编写了三个灯地交替闪烁,四个及多个。当我们一步步实现我们的目的时,我得到莫大成就感和自信。 在这次实验中,我体会到了合作的重要性。一个人也可能实现这一系列的过程,但是要花费很多精力和时间。群策群力,分工明确,可以使我们更好、更快地完成我们的工作。在此期间,你可以更好知道自己的不足和缺陷,来得到改正。还可以知道自己的优势所在,把握好自己的优势。 单片机实训总结相关 文章 : ★ 单片机实训报告范文精选5篇 ★ 单片机实训总结范文3篇 ★ 单片机实验心得体会范文 ★ 单片机实训报告范文 ★ 单片机实训工作报告范文精选 ★ 单片机实习报告范文 ★ 单片机实验的心得体会 ★ 单片机课程设计心得体会3篇 ★ 实验总结5篇精选 ★ 单片机设计的心得体会 var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?6990a94c9bf3cca817150d7468a26be6"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();


上一篇:小肺筋草

下一篇:没有了