您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 述职报告 > 第16讲51单片机课程课题设计方法
1标题:课程设计方法教学目标与要求:掌握课程设计的思路及方法授课时数:2教学重点:设计思路教学内容及过程:一、设计功能要求首先要了解要设计的课题的具体功能是什么?如设计时钟要了解这一电路是使用单片机实现由LED数码管显示时、分、秒的数字钟,并具有使用按键修改时钟参数。二、设计的思路要分解设计任务包括那些基本电路,使用哪种电路形式。如时钟电路中包括:1、显示电路:1)动态显示所谓动态显示,就是一位一位地轮流点亮各显示器,对每一位显示器来说,每隔一段时间点亮一次。显示器的亮度跟导通的电流有关,也和点亮的时间与间隔的比例有关。动态显示器因其硬件成本较低,而得到广泛的应用。2)静态显示所谓静态显示,就是当显示器显示某一个字符时,相应的发光二极管恒定的导通或截止。静态显示的优点是,显示稳定,在发光二极管导通一定的情况下显示器的亮度大,系统在运行过程中,仅仅在需要更新显示内容时CPU才执行一次显示更新子程序,这样大大节省了CPU的时间,提高CPU的工作效率;缺点是:位数较多时I/O口往往不够用。在这里我们为了学习的目的,选用动态显示。2、按键电路:3、复位电路三、硬件电路的设计方案硬件电路的设计应从两个方面予以考虑。一是根据应用系统总体设计的参数范围、测控速度与精度等技术指标要求选择单片机。不同系列单片机或同一系列不同型号单片机芯片内部提供的资源状况各不相同,如ROM、RAM容量,定时/计数器、I/O接口、中断系统等硬件配置,应选择性价比最适合的单片机型。二是在已选定单片机型号的基础上,根据应用系统的功能要求扩展单片机外部设备的配置,如键盘、打印机、A/D、D/A、报警电路、驱动电路及通用/专用I/O接口等。硬件电路的设计原则如下:(1)在性价比满足应用系统要求的基础上,选择更可靠、更熟悉的单片机,缩短研制周期。(2)尽可能选择较成熟的典型应用电路,以提高系统的可靠性。(3)单片机内部的资源与外部扩展资源应在满足应用系统设计要求的基础上留有余地,为进一步升级和扩展其功能提供方便。2(4)应充分结合软件方案统筹考虑硬件结构,通常硬件功能较完善,其相应的软件就简单,但硬件成本较高;而硬件功能略低,其相应的软件就复杂。实际中应尽量以软件替代硬件来降低成本。(5)整个系统的相关器件应尽可能做到性能匹配,如电平、速度的匹配等。(6)充分考虑整个系统的抗干扰设计,如选择具有抗干扰设计的单片机并充分筛选芯片与器件,在电路中采取隔离和屏蔽措施等。如时钟课题硬件方案选择如下:1、单片的选择简单介绍几种单片机的区别8031:片内不带程序存储器ROM,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPROM的2764系列。用户若想对写入到EPROM中的程序进行修改,必须先用一种特殊的紫外线灯将其照射擦除,之后再可写入。写入到外接程序存储器的程序代码没有什么保密性可言。8051:片内有4kROM,无须外接外存储器和373,更能体现“单片”的简练。但是你编的程序你无法烧写到其ROM中,只有将程序交芯片厂代你烧写,并是一次性的,今后你和芯片厂都不能改写其内容。8751:与8051基本一样,但8751片内有4k的EPROM,用户可以将自己编写的程序写入单片机的EPROM中进行现场实验与应用,EPROM的改写同样需要用紫外线灯照射一定时间擦除后再烧写。AT89C51:他不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为ATMELAT89xx做的编程器均带有这些功能。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护了你的劳动成果。再着,AT89C51、AT89S51目前的售价比8031还低,市场供应也很充足,所以本设计采用89C51单片机。2、时钟电路引脚XTAL1为反相器输入端,XTAL2为反相器输出端。当在放大器两个引脚上外接一个晶体(或陶瓷振荡器)和电容组成的并联谐振电路作为反馈元件时,便构成一个自激振荡器,如图1.1所示。图1.1单片机时钟电路三、复位电路内部时钟电路GNDXTAL1R1RfVCCC1C2XTAL2石英晶体或陶瓷振荡器(外部)PD3单片机在开机时或在工作中因干扰而使程序失控或工作中程序处于某种死循环状态等情况下都需要复位。复位的作用是使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这个状态开始工作。AT89C51单片机的复位靠外部电路实现,信号由RESET(RST)引脚输入,高电平有效,在振荡器工作时,只要保持RST引脚高电平两个机器周期,单片机即复位。复位电路一般有上电复位、手动开关复位和自动复位电路三种,如图1.2所示。图1.2单片机复位电路图(a)上电复位电路;(b)手动复位电路;(c)自动复位电路本设计采用(b)图,即有上电复位又可手动复位3、显示电路的设计与器件选择在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。下面做一些简单的介绍(1)八段LED显示器在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。下面做一些简单的介绍:八段LED显示器由8个发光二极管组成。其中7个长条形的发光管排列成“日”字形,另一个点形的发光管在显示器的右下角作为显示小数点用。它能显示各种数字及部份英文字母。LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED显示器。如图1.3所示图1.3七段LED显示器(a)共阴性;(b)共阳性;(c)管脚配置(2)、6位一体的显示LEDVCCRSTVSS89C51+5VC10FR8.2kVCCRSTVSS89C51+5VC10FR8.2kVCCRSTP1.089C51+5VWDIMAX750WDOPESET10k10F12(a)(b)(c)1k89C51dpcabdefgdpcabdefg+5VadgfbcegfGNDabedGNDcdp(a)(b)(c)4如图1.4所示,将所有数码管的a、b、c、d、e、f、g、sp引线并联在一起,由一个8位I/O口控制,而公共端由另一个I/O口控制。应用时,轮流送入每个LED的字形码与位选码,利用人的视觉暂留现象来显示各位的字符。当然本设计采用6位一体的显示LED,结构还是一样的。4、按键电路设计与器件选择本设计只用了简单两个按键,但对键盘的设计做也做一定的介绍,便于学生学习1)、行列式非编码键盘的工作原理行列式键盘又叫矩阵键盘,如图1.5所示,按键设置在行列的交叉点上,如用2×2的行列结构可构成四个键的键盘,4×4的行列结构可构成16个键的键盘。在按键数量较多时,矩阵键盘可节省I/O口线。图1.5矩阵键盘与AT89C51接口连接图对于非编码键盘,按键处理程序应具有如下四个功能:(1)判断键盘上有无键按下。(2)去除键的机械抖动。(3)求按下键的键码。(4)闭合一次,只进行一次键功能操作。2)、单片机对非编码键盘的控制方式:1)查询方式这种方式是指在单片机完成其它工作后的空余时间,调用键盘扫描子程序,来响应键盘输入的要求,在执行键功能程序时,CPU不再响应键输入要求。2)定时扫描工作方式定时扫描工作方式是利用单片机内部定时器产生定时中断,CPU响应中断后对键盘进行扫描,当有键按下时,转入键功能的处理程序。定时扫描在本质上是中断方式,只不过是定时扫描键盘,以中断的方式处理键盘,它的硬件电路与编程扫描工作方式相同。3)中断工作方式单片机应用系统工作时,并不经常需要键输入。因此,无论是编程工作方式或是定时工作方式,CPU经常处于空扫描状态图1.6是AT89C51利用中断扫描方式实现的一个2×8矩阵式键盘的硬件接口电路。1.6利用中断扩展2×8键盘电路图通过前面的原理可知,完成键盘管理的程序主要有主程P1.7P1.6P1.5P1.4AT89C51+5V+5V5.1k×4P1.3P1.2P1.1P1.05.1k×4P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0AT89C510INT1INTS9S1S10S2S11S3S12S4S13S5S14S6S15S7S16S8+5V5序和中断服务程序,主程序主要完成初始化和键值处理任务,中断服务程序主要完成键盘扫描和键值读入任务。5、综合以上选择可画出电路原理图:由上分析,我们绘制以下的电路图,如图1.7所示,这里的图形是用PROTUES6.3绘制,只是用于模拟仿真;实际制作电路板时,还要考虑显示器电流的问题,既电流放大与限流的问题。XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51X1CRYSTALC122fFC222pFRESETR91kC320u+5V+5VS0D9LED-REDR10100S1R11kR21k+5VA1B2C3E16E24E35Y015Y114Y213Y312Y411Y510Y69Y77U274LS138VDD234567891RP11K+5V图1.7电路原理图1.1.6软件的设计方案待硬件电路接线完成后,通常可先编写简单的测试程序对硬件电路进行测试,排除硬件电路设计中存在的错误。然后根据设计任务的要求确定系统程序的整体结构,尽可能采用模块化程序设计的方法,将任务划分为相对独立的功能模块,明确各模块的功能、时间顺序和相互关系,如系统管理、数据与信息采集、报警处理、误差处理、标度变换、数据处理、输出控制等;列出详细的资源划分表,确定各模块的出口和入口状态;建立必要的数学模型,正确描述出系统中输入和输出间的数学关系;画出各程序模块的详细流程图;根据流程图逐一编写程序;最后将各个模块连接成完整的程序。(1)软件设计的基本原则。①程序整体结构清晰、简洁、流程合理,主程序尽可能简单明了。②各种功能的实现应采用模块化、子程序化,以便于编制、阅读、连接、移植、修改和调试。③对各子程序的入口、出口条件,占用的资源要明确,以便于分析、调试和共享。④程序存储区、数据存储区、寄存器区、位寻址区、堆栈区应规划合理,做到既节约资源又不会发生相互间的冲突。⑤运行状态标志化管理,对各功能程序的运行结果、操作状态应设置状态标志,以便查询和实现运行控制。⑥运用软件或软硬件相结合等方法抑制干扰,提高系统的抗干扰能力。⑦必要时可结合硬件采取加密措施。(2)模块化程序结构。①主程序MAIN:完成系统初始化,包括时钟参数及初始标识的设定;I/O口、定时/计数器初始状态的设定;键盘和时钟显示的监控管理。②时钟参数修改子程序FTION0:关定时器,;时钟修改位置记录值加1,根据记录6值将对应的时钟时、分、秒修改标识置1。③加1键修改子程序CUM:根据修改(或设置)标识将时钟(或闹钟)相应单元内容加1。④键盘测试子程序KEYTEST:判断是否有键按下。⑥查键号子程序SERCH:若有键按下,则确定键号。⑥显示子程序DISPLAY:根据显示单元首地址显示时钟时间。⑦定时修正时钟参数中断服务子程序CLOCK:定时修改时钟参数。6、资源分配选用定时/计数器T0,定时方式2工作,每隔50ms溢出中断一次。表1-3单
本文标题:第16讲51单片机课程课题设计方法
链接地址:https://www.777doc.com/doc-2243827 .html