单片机课程设计外部中断控制流水灯变化
- 格式:doc
- 大小:165.50 KB
- 文档页数:7
摘要本设计是可中断LED流水灯的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED灯的动态设计和开发过程。
通过该芯片控制一个行LED灯按一定顺序亮,文中详细介绍了LED显示的设计思路。
单片机控制系统程序采用单片机汇编语言进行编辑,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。
当然流水灯一般只是在用芯片做控制时起修饰作用,不能很好体现单片机的强大功能。
这里的流水灯只是单片机应用中的最基础的一方面。
LED显示以其组构方式灵活、显示稳定、功耗低、寿命长、技术成熟、成本低廉等特点在车站、证券所、运动场馆、交通干道及各种室内外显示场合的信息发布,公益宣传,环境参数实时,重大活动倒计时等等得到广泛的应用。
经实践证明,该系统显示误差小,性能稳定,结构合理,扩展能力强。
关键词:汇编语言;AT89C51单片机; LED;中断程序1绪论单片机的发展大致可分为四个阶段:第一阶段:单片机探索阶段。
以Intel公司MCS-48,Motorola公司6801为代表,属低档型8位机。
第二阶段:单片机完善阶段。
以Intel公司MCS-51,Motorola公司68HC05为代表,属高档型8位机。
此阶段,8位单片机体系进一步完善,特别是MCS-51系列单片机在世界和我国得到了广泛的应用,奠定了它在单片机领域的经典地位,形成了事实上的8位单片机标准结构。
第三阶段:8位机和16位机争艳阶段,也是单片机向微控制器发展的阶段。
此阶段Intel公司推出了16位的MCS-96系列单片机,世界其他芯片制造商也纷纷推出了性能优异的16位单片机,但由于价格不菲,其应用面受到一定的限制。
相反MCS-51系列单片机,由于其性能价格比高,却得到了广泛的应用,并吸引了世界许多知名制造厂商,竟相使用以80C51为内核,扩展部分测控系统中使用的电路技术、接口技术、A/D、D/A和看门狗等功能部件,推出了许多与80C51兼容的8位单片机。
实验五广告流水灯中断控制实验五广告流水灯中断控制一、实训目的1、用外部中断源的中断控制方法控制发光二极管亮灭。
2、学习外部中断技术的基本使用方法。
3、学习中断处理程序的编写方法。
二、实训预备知识1、单片机中断系统包括5个中断请求源,4个中断控制寄存器IE、IP、TCON、SCON用来控制中断的请求、中断的开关和各种中断源优先级的确定。
2、编写中断处理程序需要注意的问题是:(1)保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
(2)必须在中断处理程序中设定是否允许中断重入,即设置EX0或EX1位。
一般进入中断处理程序时应保护现场,在退出前恢复现场。
另外中断处理程序中涉及到关键数据的设置时应关闭中断,即设置时不允许中断重入。
三、实训设备:微机一台、实训箱、THKL-C51仿真器、扁平数据线和一条串行数据通信线。
四、实训内容(2)从PROTEUS库中选取元器件单击“P”按钮,在其左上角“Keywords”(关键字)一栏中输入以下元器件的关键字,将以下元器件添加到对象选择器中。
①AT89C51:单片机②RES:电阻③LED-GREEN:绿色发光二极管④CAP、CAP-ELEC:电容、电解电容⑤CRYSTAL:晶振⑥74LS04:反相器⑦BUTTON:按钮⑧SOUNDER:喇叭图4-2 单击“P”按钮(3)放置元器件:按照原理图合理放置元器件。
(4)放置电源和地(终端)单击工具栏中的终端按钮,在对象选择器中选取电源(POWER)、地(GROUND),用上述放置元器件方法分别放置于编辑区中。
(5)电路图连线系统默认自动扑捉和自动布线有效。
只要在两端点相继单击,便可画线。
画折线,在拐弯处单击;若中途想取消,可右双击或按“Esc”;若终点在空白初,左双击即可结束。
(6)设置、修改元器件的属性先右击后左击各器件,在弹出的属性编辑框中设置、修改它的属性。
(7)电气检测选择【Tools】/【Electrical Rule Check】菜单项,出现电气检查报告单,无错误,则用户可执行下一步。
用AT89C51单片机实现流水灯的控制设计[1] 用AT89C51单片机实现流水灯的控制设计当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
1.引言目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
学习单片机的最有效方法就是理论与实践并重,本文笔者用AT89C51单片机自制了一款简易的流水灯,重点介绍了其软件编程方法,以期给单片机初学者以启发,更快地成为单片机领域的优秀人才。
2.硬件组成按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。
AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.25~5.50V的电压工作范围和0~24MHz工作频率,使用AT89C51单片机时无须外扩存储器。
因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。
其具体硬件组成如图1所示。
点击看原图图1 流水灯硬件原理图从原理图中可以看出,如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1~P1.7口的其他7个LED的点亮和熄灭的方法同LED1。
因此,要实现流水灯功能,我们只要将发光二极管LED1~LED8依次点亮、熄灭,8只LED 灯便会一亮一暗的做流水灯了。
在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。
课程设计任务书多级外部中断控制灯移动摘要:单片机的中断功能可以提高CPU的效率,利用它设计出不同优先级中断控制灯的移动。
验证在低优先级中断控制灯的移动中加入高优先级中断控制命令,则先执行高级中断,之后再完成低级中断控制灯的移动;在高优先级中断控制灯移动中加入低优先级中断,则不会影响灯的移动。
结果表明单片机可实现实时处理以满足实时控制要求,并且能及时处理故障,提高单片机的可靠性。
关键词:单片机外部中断控制灯优先级实时处理目录1设计背景 (5)1.1优点介绍 (5)1.2应用介绍 (5)2设计方案 (5)2.1电源设计 (5)2.2其它模块设 (5)3方案实施 (5)3.1电源 (5)3.2彩灯与单片机连接 (6)3.3 晶振及复位 (6)3.4 软件设计 (6)4 结果与结论 (6)4.1 软件设计 (6)4.2 整体测试 (6)5 收获与致谢 (7)6 参考文献 (7)7 附件 (7)1. 设计背景1.1单片机中断的优点中断可提高CPU的效率,可实现实时处理,满足实时控制要求。
中断功能,可及时处理故障,提高单片机的可靠性。
1.2单片机在控制灯规律变化上的应用用单片机控制LED灯变化在公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传等方面应用广泛,价格合理。
因此,掌握该项技术是很有必要的。
2.设计方案2.1电源模块设计采用220V-6V变压器提供6V交流电,通过2W10桥堆以及7805得到单片机所使用的5V直流电,同时采用1000uF电容起到稳定电路的作用。
2.2单片机及彩灯模块设计设计采用AT89S52单片机,P1口接8个彩灯,12、13管脚接两只开关作为外部中断源,选用12M Hz晶振;采用按键复位方式。
3. 方案实施3.1电源模块设计采用220V-6V变压器提供6V交流电,通过2W10桥堆以及7805得到单片机所使用的5V直流电,同时采用1000uF电容稳定电路。
3.2彩灯与单片机的连接令P1口输出低电平时对应LED灯亮,由此,将8只LED灯的阳极连接Vcc,阴极接P1口,并采用220欧的限流电阻。
单片机课程设计报告设计题目:外部中断控制流水灯变化姓名一.设计目的通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3口的俩管脚P3.2和P3.3第二功能,即外部中断来使CPU响应,达到控制流水灯的目的。
二.设计要求主程序实现8个灯从P2.0到P2.7依次亮灭,灯与灯之间间歇约0.5秒.当P3.3口是低电平时,灯从P2.7到P2.0依次亮灭,灯与灯之之间间歇约0.5秒.循环3次返回主程序.当P3.2口是低电平时,灯全灭,当P3.2口是高电平时,返回主程序.当同时使P3.2和P3.3为低电平时,灯全灭,因为外部中断0的优先级高于外部中断1的优先级. 三.MCS-51的硬件结构:四.P3口的状态P3口是双功能口,默认为第一功能(通用I/O口),通过编程可设置第二功能。
五.中断传送方式:中断方式则是在外设为数据传送做好准备之后,就向CPU发出中断请求信号(相当于通知CPU)。
CPU接收到中断请求信号之后立即作出响应,暂停正在执行的原程序(主程序),而转去外设的数据输入输出服务,待服务完之后,程序返回。
CPU再继续执行被中断的原程序。
六.外部中断外部中断是指从单片机外部引脚输入请求信号。
输入/输出的中断请求、实时事件的中断请求、掉电和设备故障的中断请求都可以作为外部中断源,从引脚INT0、INT1输入。
外部中断请求、有两种触发方式:电平触发及跳变(边沿)触发。
这两种触发方式可以通过对特殊功能寄存器TCON编程来选择。
七.电路原理逻辑图如下:P3.3 P3.2 灯亮情况0 0 全灭0 1 全灭1 0 从P2.0到P2.7依次亮灭1 1 从P2.7到P2.0依次亮灭八.实验硬件电路图如下九.程序流程图如下十.程序清单ORG 0000HAJMP STARTORG 0003HAJMP SERORG 0013HAJMP SER1ORG 0030HSTART: MOV I E,#85H ;外部中断0和1都开MOV I P,#01H ;外部中断0级优先高MOV TCON,#00H ;低电平出发MAIN: MOV A,#0FEH ;P2.0口亮MOV P2,AACALL TIMO ;延时RL A ;循环左移SJMP RESSER1: MOV R2,#18H ;循环3次MOV A,#0EFH ;P2.7口亮SER2: MOV P2,AACALL TIMO ;延时RR A ;循环右移DJNZ R2,SER2RETITIMO: MOV R5,#50 ;延时子程序LOOP1: MOV R6,#100LOOP2: MOV R7,#50LOOP3: DJNZ R7,LOOP3DJNZ R6,LOOP2DJNZ R5,LOOP1RETSER: MOV P2,#0FFH ;灯全灭RETIEND十一.课程设计总结:通过本次课程设计,发现了学习中一些不足的地方,及时进行了补充学习。
郑州科技学院《单片机》课程设计题目单片机控制流水灯学生姓名 XXX专业班级电气工程及其自动化X班学号 201XXXXXX院(系)电气工程学院指导教师 XX 完成时间 2015年XX 月XX日绪论当今时代是一个新技术层出不穷,不断更新的时代,在电子领域尤其是电气自动化智能系统控制领域,传统的电子元器件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所代替。
目前,一个学习以及对单片机的应用高潮正在工厂、学校及企事业单位大规模地兴起。
本次课程设计用AT89C52单片机自制了一款简易的花样流水灯,介绍了其硬件电路,仿真电路及软件编程方法,在实践中了解单片机的自动控制功能和各个管脚的作用。
该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。
学习单片机的最有效方法就是理论与实践相结合,现在我设计单片机控制流水灯,需要更深的去了解单片机的很多功能和作用,努力的去查找资料,才能把它有效地利用到电路中发挥它的作用。
本课题将以发光二极管作为发光器件,对单片机进行程序设计进而实现自动控制,实现一个简易的花样流水灯设计目录1.课程设计的目的 (4)2.设计的目的和要求 (4)3.设计的方案与论证 (4)4.元器件的介绍 (5)4.1单片机 (5)5.硬件电路设计 (7)5.1控制电路 (7)5.2时钟电路 (9)5.3复位电路 (10)6.软件电路设计 (11)7.硬件的安装与调试 (12)8.总结 (12)参考文献 (13)附录1:总体电路原理图 (14)附录2:实物图 (15)附录3:元器件清单 (16)附录4:源程序 (17)1.课程设计的目的1、理论与实践相结合,更好的运用自己学过的知识,提高自己动手操作的能力。
2、提高自己自主学习的能力,通过查阅相关资料,进而提高自己的知识储备。
3、可以提高自己的动手能力,提前为以后走向社会,适应社会而做准备。
4、在自己动手的同时,遇到不懂的可以请教老师,可以查阅资料,也可以通过自己的思考解决问题,这些都可以提高自己对理论知识的理解和对课外知识的扩展,从而提高以后工作的社会竞争力。
西南石油年夜学之迟辟智美创作实习总结陈说 实习类型生产实习 实习单元 西南石油年夜学实习基地 实习起止时间 2018 年 7 月 7 日至 2018 年 7 月 16 日 指导教师刘东明、孙鉴 所在院(系) 电子科学学院 班 级电子科学与技术 15-2 学生姓名 学 号 15090124022018 年 7 月 16 日目录第 1 章 按键控制流水灯设计 1 1.1 实习目的错误!未定义书签。
1.2 实习要求错误!未定义书签。
第 2 章 电路工作原理 22.5 本章小结 6 第 3 章 C 法式设计 73.1 法式设计流程图 73.3 本章小结 9 总结及体会 10 参考文献 11 附录 12第1章 按键控制流水灯设计1.1 实习目的本次实习以 STC89C52 单片机为控制核心.通过它实现对八盏 LED 灯的亮灭进 行设定,并在设定完成之后能够依照之前的设定实现流水灯效果.外部电路为按键 控制流水灯.P0 口控制八盏灯,P1 口控制矩阵键盘,P2 口控制自力按键,法式利 用单片机内部计时器中断实现流水效果.要求流水灯能够自行设定、暂停、复位, 工作稳定,可靠性高.生产实习的主要目的是培养理论联系实际的能力,提高实际入手把持能力.本 专业的生产实习旨在广泛了解实际单片机电子产物工作的全过程,熟悉电子产物 的主要技术管理模式,并在实习的把持过程中学习掌握电子产物的焊接装置调试 的实际把持技能.巩固和加深理解所学的理论,开阔眼界,提高潜力,为培养高素 质年夜学本科人才打下需要的基础.透过学习,是理论与实际相结合,能够使学生 加深对所学知识的理解,并为后续专业课的学习带给需要的感性知识,同时直接 了解本业的生产过程和生产资料,为将来走上工作岗位带给需要的实际生产知识.1.2 实习要求1.深入学习单片机开发软件 Keil 的使用,熟悉单片机电路设计,根据实际应 用电路对法式进行调试.2.熟悉单片机硬件开发平台的应用,掌握单片机编程器、仿真器的使用,能 检查和分析软硬件故障.3.体会单片机内部资源的功能使用,以单片机开发板现有资源进行应用性设 计.掌握单片机经常使用外围器件的使用.4.对去年生产实习焊接的 51 开发板的法式有更深入的了解.第2章 电路工作原理2.1 STC89C52 单片机工作原理单片机(Microcontrollers)是一种集成电路芯片,是采纳超年夜规模集成电路 技术把具有数据处置能力的中央处置器 CPU、随机存储器 RAM、只读存储器 ROM、 多种 I/O 口和中断系统、按时器/计数器等功能(可能还包括显示驱动电路、脉宽 调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个 小而完善的微型计算机系统.例如 STC89C52 单片机是通过 32 个输入输出口的高低电平变动来实现对外部 电路的控制,痛过相应的法式实现对 32 个输入输出口的控制,这就是单片机工作 的最基来源根基理.如图 2-1 所示为 STC89C52 单片机工作的最小系统电路图.图 2-1 STC89C52 最小工作系统 整个电路使用 5V 直流电源供电,其中复位电路能够使单片机复位;晶振电路 相当于单片机的心脏,为单片机提供 12MHz 的高频脉冲使单片机正常工作; MAX232 是将单片机输出的 TTL 电平转换成 PC 机能接收的 232 电平或将 PC 机输 出的 232 电平转换成单片机能接收的 TTL 电平,实现单片机与 PC 机之间的通信, 以便于下载法式.2.2 LED 工作原理LED(light-emitting diode),即发光二极管,俗称 LED 小灯,51 开发板使用 的是普通贴片发光二极管.这种二极管通常的正向导通电压是 1.8~2.2V 之间,工作 电流一般在 1~20mA 之间.其中当电流在 1~5mA 之间变动时,随着通过 LED 的电 流越来越年夜,肉眼会感觉到这个灯越来越亮,而当电流从 5~20mA 变动时,看 到的发光二极管的亮度变动不明显了.当电流超越 20mA 时,LED 就有烧坏的危险. 所以在 51 开发板的使用中需要根据相应的电流参数设计一个与 LED 串连的限流 电阻.如图 2-2 所示为单片机 I/O 口控制 LED 的电路原理图.图 2-2 单片机控制 LED 电路图 图中 PR2 为排阻,在电路中起到限流作用,防止 LED 被烧毁.因为单片机是可 以编程控制的,即 P00~P07 的高低电平也是能够控制的,所以对应的 8 个 LED 的 亮灭状态也是能够控制的,这就到达了单片机控制 LED 的目的.2.3 按键工作原理 2.3.1 自力按键工作原理自力式按键比力简单,它们各自与自力的输入线相连接,如图 2-3 所示.图 2-3 自力式按键原理图 4 条输人线接到单片机的 I/O 口上,当按健 K1 按下时,+5V 通过电阻然后再 通过按键 K1 最终进人 GND 形成一条通路,这条线路的全部电压都加到这个电阻 上,P20 这个引脚就是个低电平.当松开按健后,线路断开,就不会有电值通过, P20 和+5V 就应该是等电位,是个高电平.我们就可以通过 P20 这个 10 口的高低电 平来判断是否有按键按下.2.3.2 矩阵按键工作原理在某一个系统设计中,如果需要使用很多按键时,做成自力按键会占用年夜 量 I/O 口,因此引用了矩阵键盘的设计.如图 2-4 所示为 51 开发板上的矩阵按键电 路原理图,使用 8 个 I/O 口来实现 16 个按键.图 2-4 矩阵按键原理图 在法式设计中分别用四个 I/O 口扫描 4 行,另外 4 个扫描 4 列,确定了按键在 哪行哪列也就确定了按键的具体位置.2.4 整体电路图如图 2-5 所示为键盘控制 LED 流水灯整体电路图.图 2-5 总电路原理图2.5 本章小结本章主要介绍了单片机最小系统、LED 工作原理、按键工作原理.并从硬件电 路的设计动身,简单分析单片机控制 LED 的工作过程.理论分析基本完成,接下来 就是具体的法式设计与调试,通过具体的法式来实现相应的功能,这也是单片机 开发中最具技术含量的环节之一.第3章 C 法式设计3.1 法式设计流程图如图 3-1 所示为主法式流程图.开始 开计时器中断K1 是否按下 否是扫描矩阵键盘选 择需要点亮的 LED是K2 是否按下 否K3 是否按下 否是保管选择的数据 择需要点亮的 LED计时器中断法式选择 数据实现 LED 流水灯图 3-1 法式设计框图 主法式由 3 个自力按键控制,K1,K2 和 K3.开始从主函数执行法式语句,不 竭循环扫描按键,当 K1 按下时,进入选择状态,法式会不竭地扫描矩阵键盘,通 过矩阵键盘选择需要点亮的 LED;选择结束后按下 K2,法式会将选定后的数据送 入中断法式,中断法式根据接收的数据选泽对应的 LED 实现流水灯效果;当按下K3 后法式又会进入矩阵键盘扫描重新选择 LED.3.2 实验结果如图 3-2 所示,当按下 K1 后进入选择定状态.图 3-2 选择 LED 如图 3-2,控制矩阵键盘分别选择了第 1,6,8 盏灯. 再按下 K2 键,让选择的第 1,6,8 盏灯实现流水灯效果.如图 3-3 所示.图 3-3 流水灯 如图 3-3,按下 K2 之后,LED 由之前第 1,6,8 盏灯亮酿成第 1,2,7 盏灯 亮,实现了流水灯右移的效果. 当按下 K3 键,实验结果如图 3-4 所示.图3-4回到初始状态由图3-4可知,当按下K3键之后,法式又回到了设定LED的状态.3.3本章小结由实验结果可以看出,本次单片机课程设计已到达预期要求,电路工作稳定,满足设计要求.在整个设计过程中,法式设计与调试最为复杂,呈现过按键灯不亮,没有呈现滚动流水等现象等一系列法式问题.但最终在不竭地检查、调试之后,问题也逐渐获得解决.最终实现按键控制流水灯的效果.总结及体会本次设计通过对单片机进行编程控制,进而控制外部电路,胜利地设计了八个按键控制八盏灯亮灭实现流水灯的效果.深入了解到单片机开发软件Keil的使用,熟悉单片机电路设计,根据实际应用电路对法式进行调试.熟悉单片机硬件开发平台的应用,掌握了单片机编程器、仿真器的使用,能检查和分析软硬件故障.体会到单片机内部资源的功能使用,以单片机开发板现有资源进行应用性设计.通过这次实习使我进一步弄懂所学到的课本知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、按时/控制、法式设计、应用开发、等基本理论知识的理解,提高单片机应用于技术的实践把持技能,掌握单片机应用系统设计、研制的方法,培养利用单片机进行科技革新、开发和立异的基天性力,为结业后从事与单片机相关的工作打下一定的基础.参考文献[1]童诗白,华成英.模拟电子技术基础(第四版)[M].北京:高等教育出书社,2006.[2]阎石.数字电子技术基础(第五版)[M].北京:高等教育出书社,2006.[3]韩建,全星慧,周围.电子技术课程设计指导[M].哈尔滨:哈尔滨工程年夜学出书社,2014.[4]黎小桃.数字电子电路分析与应用[M].北京:北京理工年夜学出书社,2014.[5]高吉祥. 电子技术基础实验与课程设计[M].北京:电子工业出书社,2002.[6]陈明义.电子技术课程设计实用教程(第3版) [M]. 长沙:中南年夜学出书社,2010.[7]程春雨. 模拟电子技术实验与课程设计[M].北京:电子工业出书社,2016.[8]宋雪松,李东明,崔长胜. 手把手教你学51单片机(C语言版)[M]. 北京:清华年夜学出书社,2014.附录:#include <reg52.h>#include <intrins.h>#define KEY P1sbit k1=P2^0;sbit k2=P2^1;sbit k3=P2^2;sbit k4=P2^3;unsigned char LED=0x00,LED1=0x00;unsigned char x=0;unsigned char KeyValue;unsigned char A1=0x00,A2=0x00,A3=0x00,A4=0x00,A5=0x00,A6=0x00,A7=0x00,A8=0x00;void Delay10ms(unsigned int c);void KeyDown(); //矩阵键盘检测void kongzhil();void kongzhi2();void main(void){ TMOD=0x01; //按时器工作状态为1 TH0=(65536-50000)/256;TL0=(65536-50000)%6;EA=1; //开总中断ET0=1; //开按时器中断TR0=1; //开启按时器while(1){ int n=0;if(k1==0){Delay10ms(1);if(k1==0)n=1;}if(k3==0){Delay10ms(1);if(k3==0)n=3;}if(k4==0){Delay10ms(1);if(k4==0)n=4;}switch(n){case 1:KeyDown();break;case 3:kongzhil();break;case 4:kongzhi2();break;default:break;}}}void KeyDown(void){ int k=1;while(k){char a=0;KEY=0x0f;if(KEY!=0x0f){Delay10ms(1); //延时消抖if(KEY!=0x0f){KEY=0X0F;switch(KEY) //扫描行{case(0X07): KeyValue=0;break;case(0X0b): KeyValue=4;break;case(0X0d): KeyValue=8;break;case(0X0e): KeyValue=12;break;}KEY=0XF0;switch(KEY) //扫描列{case(0X70): KeyValue=KeyValue+3;break;case(0Xb0): KeyValue=KeyValue+2;break;case(0Xd0): KeyValue=KeyValue+1;break;case(0Xe0): KeyValue=KeyValue;break;}while((a<50) && (KEY!=0xf0)) //松手检测{Delay10ms(1);a++;}switch(KeyValue) //选择需要亮的灯{case(0):A1=~A1;break;case(1):A2=~A2;break;case(2):A3=~A3;break;case(3):A4=~A4;break;case(4):A5=~A5;break;case(5):A6=~A6;break;case(6):A7=~A7;break;case(7):A8=~A8;break;default:break;}}}if (A1==0xff) //保管数据(LED1=LED1|0x80);else if(A1==0x00)(LED1=LED1&0x7f);if (A2==0xff)(LED1=LED1|0x40);else if(A2==0x00)(LED1=LED1&0xbf);if (A3==0xff)(LED1=LED1|0x20);else if(A3==0x00)(LED1=LED1&0xdf);if (A4==0xff)(LED1=LED1|0x10);else if(A4==0x00)(LED1=LED1&0xef);if (A5==0xff)(LED1=LED1|0x08);else if(A5==0x00)(LED1=LED1&0xf7);if (A6==0xff)(LED1=LED1|0x04);else if(A6==0x00)(LED1=LED1&0xfb);if (A7==0xff)(LED1=LED1|0x02);else if(A7==0x00)(LED1=LED1&0xfd);if (A8==0xff)(LED1=LED1|0x01);else if(A8==0x00)(LED1=LED1&0xfe);LED=LED1;if(k2==0){Delay10ms(1);if(k2==0){k=0;LED=LED1;};};if(k4==0){Delay10ms(1);if(k4==0){k=0;kongzhi2();};};}}void kongzhil(void){int m=1;LED1=LED,LED=0x00;while(m){if(k3==0){Delay10ms(1);if(k3==0){m=0,LED=LED1;};}}}void kongzhi2(void){LED1=0x00;LED=0x00;A1=0;A2=0;A3=0;A4=0;A5=0;A6=0;A7=0;A8=0;}void timer0() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%6;x++;if(x==6) //6*50MS=300MS{x=0;P0=LED;LED = _crol_(LED,1);//if(++i==8) i=0;}}void Delay10ms(unsigned int c) {unsigned char a, b;for (;c>0;c--){for (b=38;b>0;b--){for (a=130;a>0;a--);}}}。
XX工程学院单片机课程设计报告题目:流水灯学生姓名:学号:系部名称:职业技术学院班级:机电一体化Z11-1 指导教师:目录摘要 (3)一、课程设计题目 (4)二、设计任务及要求 (4)三、实验方案 (4)四、流程图 (4)五、硬件电路 (6)六、软件设计 (6)1 主体程序 (6)2 键扫描子程序 (6)3 闪烁控制程序 (6)4 延时子程序 (6)5 源程序设计 (7)七、功能调试 (12)八、设计总结 (12)九、参考文献 (13)【摘要】单片机课程设计主要是为了让我们增进对单片机芯片电路的感性认识,加深对理论方面的理解。
了解软硬件的有关知识,并掌握软件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。
另外,通过简单课题的设计练习,使我们了解必须提交的各项工程文件,达到巩固、充实和综合运用所学知识解决实际问题的目的。
一、课程设计题目:流水灯二、设计任务及要求:任务:完成对接在P1,P3口的发光二极管闪亮控制程序的设计1.用程序延时方法让P1的一个LED小灯每隔1S交替闪亮2.用程序延时方法让P1的8个LED小灯循环(每个亮50MS)闪亮3.用程序延时方法让P1的8个LED小灯追逐闪亮(50MS间隔变化)4.用程序延时方法让P1、P3的16个LED小灯循环(每个亮50MS)闪亮要求:1. 根据硬件电路原理,画出接线2. 设计出相应的软件程序三、实验方案:方案:单片机采用40脚的89C52标准双列直插系列,有4个标准输入/输出端口共32位控制端口。
本次设计采用并行口低电平(吸电流)直接驱动LED发光管发光形式,选择了P1和P3口的16个端口进行模拟LED小灯控制,如要多些小灯单元可再将P2口、P0口及其他空余端口用LED小灯驱动控制。
因系统功能要求能控制灯亮的方式,在P0.0—P0.3端口接了4个按键小开关,每个小开关可控制一种亮灯方式。
在端口较紧张的情况下,LED小灯驱动也可用串入/并出移位寄存器(如74HC595),单片机用并行移位方式进行驱动。
单片机课程设计外部中断控制流水灯变化-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN单片机课程设计报告设计题目:外部中断控制流水灯变化姓名一.设计目的通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3口的俩管脚和第二功能,即外部中断来使CPU响应,达到控制流水灯的目的。
二.设计要求主程序实现8个灯从到依次亮灭,灯与灯之间间歇约秒.当口是低电平时,灯从到依次亮灭,灯与灯之之间间歇约秒.循环3次返回主程序.当口是低电平时,灯全灭,当口是高电平时,返回主程序.当同时使和为低电平时,灯全灭,因为外部中断0的优先级高于外部中断1的优先级.三.MCS-51的硬件结构:四.P3口的状态P3口是双功能口,默认为第一功能(通用I/O口),通过编程可设置第二功能。
五.中断传送方式:中断方式则是在外设为数据传送做好准备之后,就向CPU发出中断请求信号(相当于通知CPU)。
CPU接收到中断请求信号之后立即作出响应,暂停正在执行的原程序(主程序),而转去外设的数据输入输出服务,待服务完之后,程序返回。
CPU再继续执行被中断的原程序。
六.外部中断外部中断是指从单片机外部引脚输入请求信号。
输入/输出的中断请求、实时事件的中断请求、掉电和设备故障的中断请求都可以作为外部中断源,从引脚INT0、INT1输入。
外部中断请求、有两种触发方式:电平触发及跳变(边沿)触发。
这两种触发方式可以通过对特殊功能寄存器TCON编程来选择。
七.电路原理逻辑图如下:灯亮情况00全灭01全灭10从到依次亮灭11从到依次亮灭八.实验硬件电路图如下九.程序流程图如下十.程序清单ORG 0000HAJMP STARTORG 0003HAJMP SERORG 0013HAJMP SER1ORG 0030HSTART: MOV IE,#85H ;外部中断0和1都开MOV IP,#01H ;外部中断0级优先高MOV TCON,#00H ;低电平出发MAIN: MOV A,#0FEH ;口亮MOV P2,AACALL TIMO ;延时RL A ;循环左移SJMP RESSER1: MOV R2,#18H ;循环3次MOV A,#0EFH ;口亮SER2: MOV P2,AACALL TIMO ;延时RR A ;循环右移DJNZ R2,SER2RETITIMO: MOV R5,#50 ;延时子程序LOOP1: MOV R6,#100LOOP2: MOV R7,#50LOOP3: DJNZ R7,LOOP3DJNZ R6,LOOP2DJNZ R5,LOOP1RETSER: MOV P2,#0FFH ;灯全灭RETIEND十一.课程设计总结:通过本次课程设计,发现了学习中一些不足的地方,及时进行了补充学习。
一、实验目的1. 熟悉单片机的基本原理和组成,掌握51单片机的编程方法。
2. 理解单片机I/O口的使用,学会利用单片机控制LED灯的流水灯效果。
3. 提高动手实践能力,培养团队协作精神。
二、实验环境1. 实验设备:51单片机开发板、LED灯、面包板、电源、连接线等。
2. 实验软件:Proteus仿真软件、Keil uVision5集成开发环境。
三、实验原理流水灯实验是单片机入门级实验之一,通过控制单片机的I/O口输出高低电平,使LED灯依次点亮,形成流水灯效果。
实验中,利用单片机的定时器产生定时中断,每隔一定时间改变I/O口的输出状态,实现LED灯的流水灯效果。
四、实验步骤1. 打开Proteus软件,新建一个工程项目,添加51单片机开发板和LED灯等元件,绘制电路图。
2. 打开Keil uVision5,新建一个C51工程项目,选择对应的单片机型号。
3. 编写程序:(1)初始化I/O口:将P0口设置为输出模式,将P1口设置为输出模式。
(2)设置定时器:选择合适的定时器,设置定时时间,使其产生定时中断。
(3)编写中断服务程序:在中断服务程序中,改变I/O口的输出状态,实现LED灯的流水灯效果。
(4)编写主程序:在主程序中,启动定时器,进入中断服务程序。
4. 编译程序,生成HEX文件。
5. 将生成的HEX文件导入Proteus软件,运行仿真实验。
6. 观察实验现象,检查LED灯的流水灯效果是否正常。
五、实验结果与分析1. 实验现象:在Proteus软件中,LED灯依次点亮,形成流水灯效果。
2. 实验分析:通过设置定时器,每隔一定时间改变I/O口的输出状态,实现LED 灯的流水灯效果。
实验过程中,可以调整定时器的定时时间,改变流水灯的速度。
六、实验总结1. 本实验使我们对单片机的基本原理和组成有了更深入的了解。
2. 通过编写程序,掌握了51单片机的编程方法,提高了编程能力。
3. 实验过程中,我们学会了利用单片机控制LED灯,实现了流水灯效果。
AVR单片机外部中断触发的流水灯程序/*programname : 外部中断程序; 这费了我好几个小时的心血!成功的喜悦难以用言语表达! 概述: 8 位流水非精确定时,一秒循环灯闪烁,等待外部中断一下降沿中断触发信号, 外部中断一旦触发,等待触发按键弹起(此时流水灯暂停状态),中断按键一旦弹起,继续运行上一级程序(流水灯继续运行); accomplish time : 2014-2-7 22:47:15;*/#include #include interrupt.h> //中断必备的头文件;typedef unsigned char uint8;typedef unsigned int uint16;void init_io() //所有io 口初始化函数;{ DDRA=0XFF;PORTA=0X00; //PA 口输出0;DDRB=0XFF;PORTB=0X00; //PB 口输出0;DDRC=0XFF;PORTC=0X00; //PC 口输出0;DDRD=~(1}void delay(){ uint16 u=0 ; uint8 s=0;for(s=0;s}void buzz(){ uint16 s=0; uint8 i=0;PORTC|=0X80; for(i=0;iint main(void){ init_io(); //初始化io 口;//* 1. 先设置好由那个引脚来触发外部中断, 和触发方式; // MCUCR 是中断触发模式控制寄存器; MCUCR|=1 sei();//全局中断使能函数.没有此函数,中断将无法执行.(我不知道为什么!或许是甲鱼的屁股--规定!)while(1){ PORTB|=1 delay(); //非精确延时1 秒左右;PORTB&=~(1delay(); //非精确延时1 秒左右;}。
第3章课程设计——流水灯本设计是实时测控电路的基础,主要应用了80C51(单片机),2764(8KB/8的非易失性可编程存储器)、74HC573(8D锁存器)、74LS02(8D或非门)。
充分发挥了80C51单片机的程序存储器的扩展功能,其优点是硬件电路简单,易懂、易学。
3.1 工作原理3.1.1 存储电路原理80C51通过执行外部程序存储器(2764)里面的指令来对电路图下方的两片74HC573进行写操作,从而就可以灵活的改变74HC573里面锁存的内容,而使发光二极管按照指令的要求显示不同的状态。
由此可见,74HC573在此是被当作一个只可写而不可读的存储单元来使用的,至于为什么不可读,原因很简单,因为74HC373是一个单向的8D锁存器,其输入端不能同时作输出端。
但我们仍可以通过发光二极管来读它里面锁存的内容。
3.1.2驱动电路原理现在要解决的是P0口的时序问题,它包括两个方面:一方面是对外部程序存储器的访问;另一方面是对两个“数据写入单元”(即两个74HC573)的访问。
前一个问题的解决方法可以从何立民主编的《单片机初级教程》图9-2 得出。
对于第二个问题实现的方法可以有多种,本人使用P2.5和P2.6端口分别和80C51的写端口(WR)异或取反后作为这两片74HC573的片选信号。
可照此法扩展多片74HC573,驱动更多发光二机管。
本人在编程时所给两片74HC573的地址如下:表1 74HC573地址3.2 具体制作步骤3.2.1 绘制电路原理图根据该课程设计所要实现的功能,可画出电路原理图,见附录B 附图3.2.1。
3.2.2 确定元器件清单列出元器件清单,到电子城购买元器件。
元器件清单见附录C 附表3.2.1。
3.2.3 在万能板上焊接电路按照电路原理图的连接关系将元器件焊接好。
此步骤较为重要,需要有足够的耐心。
在焊接过程中我没有做一次成功,做了一些基本的通断检查,发现有三个地方虚焊,修改好后,再进行检查,找出错误将其一一改正。
郑州科技学院《单片机》课程设计题目单片机控制流水灯学生姓名X X X 专业班级电气工程及其自动化X班学号201XXXX院(系)电气工程学院指导教师X X完成时间201X年XX月XX日目录1设计的目的 (1)2设计的任务与要求 (2)3设计方案与论证 (2)4 元器件介绍 (4)4.1 单片机5 硬件电路设计 (8)6软件设计 (10)7硬件的制作与调试 (12)8总结 (13)参考文献 (14)附录1 总体电路原理图 (15)附录2 实物图 (15)引言基于单片机的LED流水灯的应用十分广泛,由单片机作为的核心控制器,通过按键实现控制功能和数据输入是非常普遍的。
通常在所需按键数量不多时,系统常采用独立式按键。
这种按键的电路配置灵活,软件结构简单。
由于实际应用中,不同系统对按键的要求不同,因此,对按键程序的设计要考虑全面,以便更好地完成按键所设定的功能,简述了该系统中一些重要芯片的基本工作原理,着重论述了硬件线路各个模块的设计思想。
进而熟练掌握相关专业基础知识的综合应用,提高学生的实际动手和设计能力。
本系统是基于AT89C51系列单片机为核心的LED流水灯设计,实现12个LED灯变化方向和速度的可调。
1 设计的目的1、使自己在学习理论知识的同时与实际操作相结合,从而提高自己动手操作的能力。
2、可以培养自己自主学习的能力,自己可以查阅资料,从而提高自己的知识储备。
3、可以提高自己的动手能力,提前为以后走向社会,适应社会而做准备。
4、在自己动手的同时,遇到不懂的可以请教老师,可以查阅资料,也可以通过自己的思考解决问题,这些都可以提高自己对理论知识的理解和对课外知识的扩展,从而提高以后工作的社会竞争力。
5、自己通过自己的努力而完成的作品会有一种巨大的成就感,会让自己更喜欢这门学科,从而以后更加好好学习这门学科。
2 设计的任务与要求1、通过单片机实现对LED灯进行闪烁控制。
2、学会实物的设计和制作。
3、能够自己设计仿真电路。
stm中断的原理与实现流水灯实验报告系部:电子通信工程系班级:电信####姓名:######学号:##实验一搭建实验环境一.实验简介搭建嵌入式系统开发环境,建立第一个工程,流水灯实验二.实验目的掌握STM32开发环境,掌握从无到有的构建工程。
三.实验内容熟悉MDK KEIL开发环境,构建基于固件库的工程,编写代码实现流水灯工程。
通过ISP下载代码到实验板,查看运行结果。
下载代码到目标板,查看运行结果。
四.实验设备硬件部分:PC计算机(宿主机)、STM32实验板。
软件部分:PC机WINDOWS系统、MDK KEIL软件、ISP软件。
五.实验步骤1.熟悉MDK KEIL开发环境2.熟悉串口编程软件ISP3.查看固件库结构和文件4.建立工程目录,复制库文件5.建立和配置工程6.编写代码7.编译代码8.使用ISP下载到实验板9.测试运行结果10.记录实验过程,撰写实验报告六.实验结果及测试程序代码主要有两部分,第一部分是GPIO端口的配置,打开端口时钟,配置为推挽输出模式,并使能端口。
代码如下:void LED_GPIO_Config(void){GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Per iph_GPIOC,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOB,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3;GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_4;GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_SetBits(GPIOB,GPIO_Pin_0);GPIO_SetBits(GPIOC,GPIO_Pin_4|GPIO_Pin_3);第二部分是主函数,主要实现LED灯的亮灭的功能。
用中断做流水灯课程设计一、课程目标知识目标:1. 让学生理解中断的概念,掌握中断在流水灯控制中的应用原理;2. 学会使用中断功能实现流水灯效果,了解相关电路连接和编程方法;3. 掌握中断优先级和中断嵌套的基本知识,提高对多中断处理的能力。
技能目标:1. 培养学生动手实践能力,能独立完成中断流水灯电路搭建和程序编写;2. 提高学生分析问题和解决问题的能力,能针对实际问题进行中断程序的调试和优化;3. 培养学生团队合作精神,能在小组讨论中积极参与,共同完成中断流水灯项目。
情感态度价值观目标:1. 激发学生对电子技术和编程的兴趣,培养其探索精神;2. 培养学生严谨、细心的学习态度,养成科学规范的操作习惯;3. 增强学生的自信心,使其在成功实现中断流水灯项目的过程中,感受到学习的乐趣和成就感。
课程性质:本课程为电子技术和编程实践课程,结合理论知识和实际操作,培养学生的动手能力和创新能力。
学生特点:学生具备基本的电子电路知识和编程基础,对实际操作有较高的兴趣。
教学要求:教师需关注学生的个体差异,采用启发式教学,引导学生主动探索,注重实践与理论相结合,提高学生的综合能力。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 中断概念及原理:回顾中断的定义、作用和分类,重点讲解中断响应过程和中断优先级管理。
教材章节:第三章第三节“中断与中断处理”2. 流水灯电路设计:介绍流水灯电路的基本原理,分析电路元件的选型和连接方式。
教材章节:第二章第二节“组合逻辑电路设计”3. 中断编程:讲解中断编程的基本方法,包括中断向量表、中断服务程序和中断返回等。
教材章节:第五章第二节“中断编程与应用”4. 流水灯程序编写:指导学生使用中断编程方法编写流水灯程序,实现流水灯效果。
教材章节:第五章第三节“中断在流水灯控制中的应用”5. 中断优先级和中断嵌套:分析多中断处理时的问题,讲解中断优先级和中断嵌套的解决方法。
用单片机实现流水灯的控制设计1.引言当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被智能控制系统所取代。
单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。
学习单片机的最有效方法就是理论与实践并重,本设计课题是流水灯的控制设计,流水灯是一串按一定的规律像流水一样连续闪亮。
流水灯控制是可编程控制器的一个应用,其控制思想在工业控制技术领域也同样适用。
2.硬件组成2.1 总体方案设计分析要求用8255的A口和B口做为输出,接16个发光二极管,从而实现16位流水灯的显示效果,基本的界限可如下图A所示,在C口的地两位接两个开关,实现两个扩展功能的控制。
i:基本流水灯显示电路A口和B口两个端口不能同时复制,从而在试验中可以用BX进行需要复制的数据的存储,因为BX可以分从BH BL两个部分进行独立的操作,在本次试验中用BH对A口进行赋值,用BL对B口进行赋值,通过演示一段时间再对BH BL 进行移位和输出,实现流水灯的效果。
ii:正反方向选择把PC.0口接在开关上,编写程序对C端口的数据进行读取,并进行判断,使得当PC.0为高电平的时候则灯进行左移,同时B口与A口相反。
iii:快慢速度控制把PC.1口接在开关上,编写程序对C端口的数据进行读取,并进行判断,使得当PC.1为高电平的时候则延时的时间缩短,使得流水灯的流水速度加快,低电平的时候则进行延时的时间变长,使得流水灯的流水速度加快。
3硬件原理设计A该模块的WR.RD分别练到PC总线接口模块的XIOW和XIORB该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到PC总线接口模块的数据(D0~D7)、地址线(A0~A7)C 8255模块选通线CA连到PC总线接口模块的IOY3D 8255的PA0~PA7连到发光二极管的L1~L8;8255的PB0~PB7连到发光二极管的L9~L16E 8255的PC0 PC1分别练到开关K0 K1F 软件流程框图及程序清单按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。
单片机课程设计报告
设计题目:外部中断控制流水灯变化
姓名
一.设计目的
通过学习单片机工作原理和各种工作方式及各管脚的功能,想通过P3口的俩管脚和第二功能,即外部中断来使CPU响应,达到控制流水灯的目的。
二.设计要求
主程序实现8个灯从到依次亮灭,灯与灯
之间间歇约秒.当口是低电平时,灯从到依次亮灭,灯与灯之之间间歇约秒.循环3次返回主程序.当口是低电平时,灯全灭,当口是高电平时,返回主程序.当同时使和为低电平时,灯全灭,因为外部中断0的优先级高于外部中断1的优先级.
三.MCS-51的硬件结构:
四.P3口的状态
P3口是双功能口,默认为第一功能(通用I/O口),通过编程可设置第二功能。
五.中断传送方式:
中断方式则是在外设为数据传送做好准备之后,就向CPU发出中断请求信号(相当于通知CPU)。
CPU接收到中断请求信号之后立即作
出响应,暂停正在执行的原程序(主程序),而转去外设的数据输入输
出服务,待服务完之后,程序返回。
CPU再继续执行被中断的原程序。
六.外部中断
外部中断是指从单片机外部引脚输入请求信号。
输入/输出的中断请求、实时事件的中断请求、掉电和设备故障的中断请求都可以作为
外部中断源,从引脚INT0、INT1输入。
外部中断请求、有两种触发方式:电平触发及跳变(边沿)触发。
这两种触发方式可以通过对特殊功能寄存器TCON编程来选择。
七.电路原理逻辑图如下:
灯亮情况
00全灭
01全灭
10从到依次亮灭
11从到依次亮灭八.实验硬件电路图如下
九.程序流程图如下
十.程序清单
ORG 0000H
AJMP START
ORG 0003H
AJMP SER
ORG 0013H
AJMP SER1
ORG 0030H
START: MOV IE,#85H ;外部中断0和1都开
MOV IP,#01H ;外部中断0级优先高
MOV TCON,#00H ;低电平出发MAIN: MOV A,#0FEH ;口亮
MOV P2,A
ACALL T IMO ;延时
RL A ;循环左移
SJMP RES
SER1: MOV R2,#18H ;循环3次
MOV A,#0EFH ;口亮
SER2: MOV P2,A
ACALL TIMO ;延时
RR A ;循环右移
DJNZ R2,SER2
RETI
TIMO: MOV R5,#50 ;延时子程序LOOP1: MOV R6,#100
LOOP2: MOV R7,#50
LOOP3: DJNZ R7,LOOP3
DJNZ R6,LOOP2
DJNZ R5,LOOP1
RET
SER: MOV P2,#0FFH ;灯全灭
RETI
END
十一.课程设计总结:
通过本次课程设计,发现了学习中一些不足的地方,及时进行了补充学习。
更进一步理解了本门课程的意义与作用,同时对汇编语言也有了更进一步的理解。
设计中发现,在使用汇编语言编程运算比较繁琐,而且运算范围及运算速度很受限制;而它的长处却在于进行控制,而语言的使用本身并不是很难,关键是逻辑思路要清晰。
掌握一门语言不难,训练一种良好的分析问题的思路却非一时之功。
通过使用STC89C51RC 单片机实验板,也加深了对硬件电路的理解。
使用硬件时遇到一定问题,体现了动手能力,实践能力较差,通过与同学讨论学习,在辩论中解决了问题,提升了能力。
十二.参考文献如下:
牛昱光主编《单片机原理与接口技术》电子工业出版社
51单片机实验指导书
胡汉才主编《单片机原理及其应用》清华大学出版社。