实习报告校验板由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“校对工作实习报告”。
电路综合实习报告
学院: 专业: 姓名: 学号: 指导老师:
一.实习要求
1.1实习设计要求与目的了解并初步掌握单片机及其开发流程,综合模拟电子技术和数字电子技术,掌握以单片机为核心的电子系统体系。
通过实习掌握必要的单片机开发能力,熟悉开发环境,熟练焊接技巧,培养动手能力,锻炼自主意识。
1.2实习环境
开发环境:Keil /wave6000(伟福6000)单片机类型:Atmel89s52 开发工具:万用表、5V稳压电源、电子元件、电烙铁等。
1.3实习内容
独立焊接并利用89S52的小系统板,使用C语言设计一个可以在单片机中显示特定字符,如姓名学号的程序。将其在LCM1602中显示。
可以利用该板另行扩展功能,如PS/2键盘接口,A/D,D/A转换等。
1.4元器件清单【尾附一】
二.芯片资料
2.1 89S52主要特性介绍:
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。在芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89s52为众多嵌入式控制应用系统提供高灵活‘超有效的解决方案。
AT89s52具有以下标准功能:8K字节Flash,256字节RAM,32位IO口线,看门狗定时器,2个数据指针,三个16位定时器计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM定时器\计数器,串口,中断继续工作。掉电保护方式下,RAM内容被保存,震荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
各引脚详细功能介绍见尾附二
2.2 LCD1602应用简介
模块内部自带字符发生存储器(CGROM),字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是(41H),显示时模块把代码41H发给液晶模块,我们就能在液晶上看到字母“A”。
1602液晶模块内部的控制器共有11条控制指令,丰富的指令可以完成液晶的时序控制、工作方式式设置和数据显示等。
该液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应 用。
三.电路、PCB板设计 本次实习采用PCB板已根据实际情况由宋老师帮助设计,从而除去了学生们独立设计PCB板的障碍。使得大家能够更加集中的将精力放在单片机的总体设计部分。其中DBNZ1104和DBNZ104的布局如下:
四.主要系统单元设计 4.1 A89S52外围电路设计
P3.1口接LED状态显示电路;晶振采用12MHz,接两个30pF的电容,起到稳定振荡频率快速起振的作用。同时晶振和电容安装在离单片机的时钟引脚比较近的文职,以减少寄生电容,更好的保证了振荡器稳定可靠的工作。
4.2电源插座、复位电路
复位电路采用手动复位,节约成本。其中RST引脚是复位信号输入端,在所示电路中,通电瞬间,C15的充电过程中,RST段出现一定宽度的正脉冲,只要该脉冲保持10ms以上,就能使单片机可靠的上电复位。
4.3 LCD接口电路
采用的LCM1602液晶模块是标准16针插座,关于LCM1602的详细资料见附三。
4.4 并口通讯电路
PC并口是25针,在下载程序到单片机时必须采用合理的ISP下载线,JTAG接口解决了这个问题。
五.实习总结
5.1实习中的收获和感受
单片机时计算机技术,大规模集成电路技术和控制技术的综合产物。现在,单片机早已成为人类生活中不可或缺的助手。作为本专业的核心课程之一,我意识到,要学好单片机,不仅要在理论上弄清其工作原理和工作方式,更要在实践中加强自己的动手能力,培养软硬件结合的意识,以全面的掌握单片机开发技术。
本次电路综合实习意在以单片机开发为核心,培养锻炼同学们自主设计电子系统的能力,综合模电和数电基础,整合电路基础、信号与系统知识,构建完整的电子系统开发知识体系。
单片机应用系统设计不断要求熟练掌握单片机程序语言和编程技术,而且还要具备扎实的单片机硬件方面的理路和实践知识。一开始我们在PCB板的焊接上存在盲区,因为毕竟PCB板不是自己动手设计,但是通过熟读PCB板的原理图,配合有关资料,我们逐渐了解了各个系统单元的功能和原理,更好的在实践中学习了单片机的有关知识,也在其后的焊接过程中,在动手实践的过程中养成了独立完成自主思考的良好习惯。
在用C语言编写软件时,由于一开始不熟悉keil的开发环境,在编写过程中浪费了很多时间,但是,也正是因为如此,我们更好的学会了使用keil和有关51单片机的下载软件,更直观的学到了软硬件结合的技巧和过程。
5.2实习中遇到的问题和教训 虽然在实习中有很多收获,但是这过程并不是一路顺风顺水的,在实习中我们也有过非常大的挑战,犯过很多错误,也正是因为这些错误和纠正错误的过程,我们才能不断进步。
第一,在焊接过程中,由于没有吃透电路图的设计,对某些原件的焊接顺序等技巧没有合理掌握,造成焊错焊反的结果,这是十分值得警惕注意的,在后来的过程中,由于需要添加别的原件以及通过并口下载线烧录程序,某些之前没有仔细布局好的地方成了很大的障碍。
第二,由于使用C51编写程序还不熟练,在复习C语言的过程中浪费了很多时间,其直接结果就是只完成了最基本的液晶模块,其他模块因为时间仓促,修改不善只能忍痛放弃。
第三,在调试过程中,由于对KEIL环境的陌生,不得不请教老师和周围同学,有时限于软件知识的缺乏,只能手动从源程序中寻找BUG,没有合理运用软件的辅助,这使得自己在调试过程中总是比别人慢半拍,这个教训值得谨记。
第四,虽然老师帮我们解决了自己独立设计PCB板的现实障碍,但是在设计PCB板,学习使用Protel DXP方面,其实我们应该责无旁贷的通过自主学习培养技巧,掌握技能,在这方面,我一开始存在误区,以至于在后来软硬件结合的过程中有了很多盲区。
这些经验教训一方面让我认识到了所学知识的局限,一方面也加深了我对电子电路知识的理解。可以说,正是因为有了这些经验教训,我才能在这其中真正学到东西。
5.3实习的心得体会
在开发过程中,通过上网搜索资料,查阅课本及课外书籍,我对电路各部分的工作原理加深了了解。学会了仿真环境KEIL的使用方法,也学会了焊接PCB板的必要技巧。这是个磨练意志的过程,但是更重要的是通过不断的常识,不断的校核,不断的修改,最后完成一个合理的设计过程,需要的是细心和耐心,在很大程度上培养了我拼搏的工作精神,使我受益匪浅,更加明确了自己专业的方向。
实习时培养学生综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,通过电路综合实习我们能够比较系统的了解理论知识,把理论和实践相结合,并且应用到生活当中。在设计过程中我们遇到的问题,在努力寻求最佳路径解决问题是,无形中提高了我们的动手动脑能力,并且同学之间还能相互探讨问题,研究解决方案,增进大家的团队意识。
实习时短暂的,影响却是长远的。本次电路综合实习,我们对本专业的研究内容和研究方法有了比较深入的了解,也相信通过这种实践活动,能够培养我们独立自主的意识,为了以后电子工程设计打下坚实的基础。
六.源程序
#include #define uchar unsigned char//宏定义 #define uint unsigned int
sbit RS=P2^0;//对各个端口单独定义 sbit RW=P2^1;sbit E=P2^2;
uchar i,j;uchar code table1[]=“Guo chao”;//显示的字符 uchar code table2[]=“20081001150”;
void delay(uchar);//定义各个子函数类型 void write_comd(uchar);void write_data(uchar);
void main()//主函数 { delay(100);//延时以等待液晶屏响应 write_comd(0x01);//清屏
write_comd(0x38);//设定液晶屏为双行8位显示 write_comd(0x0f);// 显示打开;有光标;光标闪烁 write_comd(0x06);//光标左移;所有文字不左移 write_comd(0X3C);// 与0x38作用类似,双行4位显示 write_comd(0x80);//设置第一行地址指针
for(i=0;i
write_comd(0Xc0);// 设置第二行地址指针
for(j=0;j
while(1);//使指针保持在此处 }
void delay(uchar z)//延时子程序 { uchar i,j;for(j=z;j>0;j--)for(i=150;i>0;i--);}
void write_comd(uchar com)//写命令子程序 { RS=0;P1=com;RW=0;delay(25);E=1;delay(25);E=0;//设置P2.2的下降沿以写入 }
void write_data(uchar date){ RS=1;P1=date;RW=0;delay(25);E=1;delay(25);E=0;//P2.2下降沿有效 }
【附一】元件清单:
【附二】AT89S52各引脚详细功能介绍:
【附三】
LCD1602各引脚说明
第1脚:VSS为地电源 第2脚:VDD接5V正电源
第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源
时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一 个10K的电位器调整对比度。
第4脚:RS为寄存器选择,高电平选择数据寄存器、低电平选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时(00)可以写入指令或者显示地址;
当RS为低电平RW为高电平时(01)可以读入忙信号;
当RS为高电平RW为低电平时(10)可以写入数据。
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:D0~D7为8位双向数据线。第15~16脚:背光阳极和背光阴极。
指令1:清显示 指令码01H, 光标复位到地址00H位置; 指令2:光标复位 指令码02H, 光标返回到地址00H位置 ; 指令3:光标和显示模式设置
I/D位 → 光标移动方向,高电平右移,低电平左移;
S 位 → 屏幕上所有文字是否左移或者右移,高电平有效,低电平无效; 指令4:显示开关控制
D 位 → 控制整体显示的开与关,高电平表示开显示,低电平表示关显示; C 位 → 控制光标的开与关,高电平表示有光标,低电平表示无光标; B 位 → 控制光标是否闪烁,高电平闪烁,低电平不闪烁 ; 指令5:光标或显示移位
S/C位 → 高电平时移动显示的文字,低电平时移动光标 指令6:功能命令设置
DL位---高电平时为4位数据总线,低电平时为8位总线; N—位低电平时为单行显示,高电平时为双行显示;
F—位低电平时显示5x7的点阵字符,高电平时为5x10的点阵字符;
指令7:字符发生器RAM地址设置 指令8:DDRAM地址设置 指令9:读忙信号和光标地址
BF位 → 为忙标志位,高电平表示忙,此时模块不能接收命令或者数据 指令10:写数据 指令11:读数据