单片机原理与接口技术课程设计论文内容摘要:
SW5 左循环 花样循环 累加模式 H3切换 计时器 L2切换 信息介绍 结束语 留下备用 结束 9 第 5章 调试及故障分析 焊接准备阶段元器件测试、电路原理图故障分析 焊接电路钱应该先对各器件识别、测试,包括二极管,色环电阻,电容,按键开关,自锁开关,排阻,芯片等。 然后按照所给的电路图正确焊接。 元器件的识别与测试方法不止一种。 例如,发光二极管可以直接识别引脚的长短来判断正负,长引脚的为正极,也可利用万用表合适的欧姆档接在二极管两端,看是否会亮; 此实验平台的电容分电解电容、陶瓷电容两种,电解电容不分正负极,电解电容长引脚的为正极,电容上的标识表示电容的大小;色环电阻一般比较难识别,可以直接用万用表测量其阻值;按键开关分并行的两路导通与断开的,焊接时应注意所需要的状态,自锁开关也分为并行的两排,共有六个引脚,焊接前应先测量,以免出错。 电路原理图故障分析:图中 38 译码器的接法出现矛盾, E1 端为使能端,反而接在 GND,低电平不能使 38 译码器工作,经过仿真电路测试,将 E1 端接在 引脚,作为 38 译码器的使能控制端;原理图中译码器的引脚位置与实际 电路也存在出入,但不存在逻辑错误,实际焊接电路的时候需要特别注意。 电路焊接过程中的故障分析 首先对电路板中可能存在虚焊的地方用万用表一一检查,并对焊接不牢固的焊点进行修补。 上电前用万用表测得单片机的 GND 与 VCC 是导通的,通过老师讲解才知道电路板在设计的时候存在缺陷, USB 接口与电源插口的连线需要断开。 上电下载程序时 MAX 芯片存在问题,更换一个 MAX232 芯片下载程序正常。 测试时一个数码管有一段接触不良,通过修补数码管的排母得到解决。 一般在不知问题出在何处的情况下利用万用表从最可能存在问题的地方 开始用进行逐步排查,找出电路中错误的地方,然后进行修改。 一般根据二极管单向导通、电容通交流阻直流的特性等,帮助检查电路的错误。 程序编写过程中的故障分析 编程调试过程中使用中断作为计数器的触发条件,但是实际电路中按键触发中断时会发生抖动,造成计数不准确,后改成开关作为触发条件,并在程序中进行消除抖动的操作,计数器的功能完整实现。 由于对模块化编程的熟悉程度还不够,刚开始使用模块化方法编写程序时常忘记添加进工作组,软件编译过程中也很难查找到错误。 不过警告可以很好的提示程序编译过程中的问题。 模块化编程使 程序更清晰明了,程序编写还应该注意一个问题,很好的程序应该具备明确的注释及说明文档。 10 实物演示效果 图 10 实物演示效果 11 结论 本文研究了基于 AT89C52 单片机的实验平台的设计原理与实现方法,包括硬件与软件设计。 实现了单片机的基本功能的仿真、实际电路中的调试功能。 对单片机原理及应用中定时器、中断、 LED、 LCD、按键、数码管等原理有了系统的了解,并能很好地在实际电路中实现程序的控制。 本次单片机课程设计,学到了单片机实际应用的许多东西,即使在实验过 程中遇到了很多问题,但最终都在队友的相互配合下得以解决,解决问题的过程中不仅学到了很多书本上难以理解的问题,也明白一个道理:团队的力量大于个人能力。 实习中队友无比激情地去面对每个需要解决的问题,每一个焊点都会认真对待,经过深思熟虑、团队讨论之后得出最好的解决方案,完成焊接测试的任务。 课程知识与实际实践的结合,使自己对单片机的实际应用有了更深刻的理解。 软硬件结合,灵活运用所学知识解决实际问题。 通过这次课程设计,提高了自己的课题分析能力,编程能力,和解决实际综合问题的能力。 12 谢辞 本论文 的完成需特别感谢老师的精 心指导。 在本课题的 设计 过程中,通过老师耐心的指导和 队友 李晓颖 、 刘书全 的通力合作 ,受到很多的启发 , 并学到许多单片机的理论实践 知识。 同时联系到大学 两 年所学的相关专业知识,加深了对 单片机系统 的认识。 在 老师的谆谆教导 下 ,掌握了 许多相关 专业知识,从而有机会有可能完成这 个设计,从而学到很多有关单片机的实践知识,除对于书本上理论知识的巩固与加深外,对于自己的动手能力也有很大的提高。 在此 也衷心的感谢身边的同学和朋友给我的关心和 指导。 13 参考文献 [1] 李蒙 毛建东编 单片机原理及应用 [M]. 北京:中国轻工业出版社 , 2020 [2] 林立 张俊亮编 单片机原理及应用:基于 Proteus 和 Keil C[M]. 北京:电子工业出版 社 , [3] 丁明亮,唐前辉。 51 单片机应用设计与仿真 [M]. 北京:北京航空航天大学出版社 ,2020 [4] 徐爱钧,彭秀华。 单片机高级语言编程与应用实践 [M]. 北京:电子工业出版社 ,2020. [5] 李学礼。 基于 Proteus 的 8051 单片机实例教程 [M]. 北京:电子工业出版社 ,2020. [6] 郭天祥 编 新概念 51 单片机 C 语言教程:入门、提高、开发、扩展全攻略 [M]. 北京: 电子工业出版 , 14 附 录 1 单片机 源程序 主函数 include // 延时的 头 文件 include // 液晶的头文件 include // LED灯的头文件 include // 数码管的头文件 include // 开关选择的头文件 include // 选择流水灯模式的头文件 include include include /******************************************************************** * function : sbit * explain : 位及 变量的定义 * add : ********************************************************************/ sbit Key1 = P3^2。 // Key1 sbit Key3 = P3^4。 // Key3 sbit Key4 = P3^5。 // Key4 sbit LS138_EN = P1^5。 // 74LS138 uchar count = 0。 uchar mod[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}。 //共阴极数码管字模 void count_sys() { LS138_EN = 1。 // 74LS138 G 引脚低电平有效 EN_Y0()。 P0 = mod[count%10]。 delay_1ms(10)。 EN_Y1()。 P0 = mod[count/10]。 delay_1ms(10)。 } /******************************************************************** * function : main * explain : 开机显示 wele to use 随后提示开关控制 * add : ********************************************************************/ void main(void) { int mode_switch。 15 char flag = 0。 IT0 = 1。 IE = 0x81。 P0 = 0x00。 wele()。 // 欢迎使用 delay_1ms(1500)。 point()。 // 提示信息 while( flag == 0 ) { // Key4 while( Key4 == 0 ) { delay_1ms(10)。 if( Key4 == 0 ) { flag = 1。 } } count_sys()。 // 计数器 while( Key1 == 0 ) { delay_1ms(10)。 if( Key1 == 0 ) { count++。 // 计数值 if( count ==100 ) { count = 0。 } } while( Key1 == 0 )。 } } while( flag == 1 ) { mode_switch = Key_mode()。 switch(mode_switch) { case 1: LED1_switch()。 // Key1 流水灯模式 16 break。 case 2: LED2_switch()。 // 数码管模式 break。 case 3: // 液晶模式 LCD_switch()。 break。 } } } 延时函数 include /******************************************************************** * function : delay_1ms * explain : 实现 time ms 延时 * add : ********************************************************************/ void delay_1ms( uint time ) { uchar i。 while( time ) for(i=0。 i120。 i++)。 } void delay_us(uint y) //微秒级延时 { for (。 y 0。 y)。 } 开关选择函数 include include include /******************************************************************** * function : sbit * explain : 开关位定义 * add : ********************************************************************/ sbit Key1 = P3^2。 // Key1 LED 的各种循环显示 sbit Key2 = P3^3。 // Key2 sbit Key3 = P3^4。 // Key3 sbit Key4 = P3^5。 // Key4 /******************************************************************** * function : Key_mode 17 * explain : 开机 /复位选择工作模式 * add : ********************************************************************/ int Key_mode(void) { int mode。 // Key1 if( Key1 == 0 ) { delay_1ms(10)。 if( Key1 == 0 ) {。单片机原理与接口技术课程设计论文
相关推荐
计(论文) 7 位又分按键脉冲复位和按键电平复位。 电平复位将复位端通过电阻与 Vcc相连,按键脉冲复位是利用 RC分电路产生正脉冲来达到复位的。 C1 0R2V C CS2.. .. 图 复位电路原理图 时钟电路设计 单片机内部有一个高增益反向放大器,输入端为芯片引脚 ,输出端为引脚。 而在芯片外部 和 之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。 晶体震荡频率高
加工编程 8 确定加工方案 零件上比较精密表面加工,常常是通过粗加工、半精加工和精加工逐步达到的。 对这些表面仅仅根据质量要求选择相应的最终加工方法是不够的,还应正确的确定毛坯到最终成形的加工方案。 毛坯先夹持右端 车右端轮廓 95mm 处,先用中心钻打 中心孔,再用 Φ 8 的钻头钻 25mm 的孔,再用 Φ 20 的钻头扩孔,再用镗刀镗 Φ 的孔, 再用内槽刀镗 Φ 28 的槽
器称为过电流继电器;低于整定值时动作的继电器称为欠电流继电器。 过电流继电器在正常工作时,电流线圈通过的电流为额定值,所以产生的电磁力不足以克服反作用弹力;常闭触头 仍保持闭合状态,当通过线圈的电流超过整定值后,电磁吸力大于反作用弹簧拉力,铁心吸引衔铁,使常闭触头断开,常开触头闭合,过电流细继电器主要用于频繁、重载启动场合、作为电动机或主电路的短路和过载保护
上下 左右 前后 铁路货车 运行时的振动( 30~ 60km/h) ~ ~ ~ 减速时的振动 ~ ~ ~ 汽车 一般公路 20~ 40km/h 良好路面 ~ ~ ~ 不良路面 ~ ~ ~ 铺装公路 50~ 100km/h 满载 ~ ~ ~ 空载 ~ ~ ~ 船舶 船舶是个弹性结构,自身就是个振动系统。 海水的浮力与弹簧类似 ,所以在海上航行时与海水也构成复杂的振动系统。 船舶产生震动的原因
气味,沸点 11 0C,凝固点 59 0C,极不稳定,不易储存,使用时必须临用现配。 二氧化氯易溶于 水,溶解度约为氯的 5 倍。 其氯是以正 4价的形式存在,活性为氯的 2. 5 倍。 可以有效的氧化医院污水中的某此化学物质,如酚、氰、硫及其产生的臭味。 生产二氧化氯的设备叫二氧化氯发生器。 常见的制备二氧化氯的设备是二氧化氯协同消毒剂发生器,具有渗透性隔膜的电解槽专用直流电源和吸收管路等 3
液 相 密 度 ,气 相 密 度 ,负 荷 因 子 , 取塔板间距 , 板上液层高度 1 5 5 0 .0 5 5h m m m , 塔板间距与塔径的关系 塔 径 /D, m ~ ~ ~ ~ ~ 板间距 /HT, mm 200~ 300 250~ 350 300~ 450 350~ 600 400~ 600 那么分离空间: 1 0 . 4 0 . 0 5 5 0 . 3 4 5TH h