《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc

上传人:文库蛋蛋多 文档编号:4146916 上传时间:2023-04-07 格式:DOC 页数:25 大小:7.09MB
返回 下载 相关 举报
《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc_第1页
第1页 / 共25页
《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc_第2页
第2页 / 共25页
《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc_第3页
第3页 / 共25页
《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc_第4页
第4页 / 共25页
《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc》由会员分享,可在线阅读,更多相关《《单片机原理与接口技术》课程设计报告SST51系列单片机综合实验板开发设计.doc(25页珍藏版)》请在三一办公上搜索。

1、计算机与信息工程系单片机原理与接口技术课程设计报告 专业 通信工程 班级 * 学号 * 姓名 * 报告完成日期 2011-12-25 指导教师 * 评语:成绩:批阅教师签名: 批阅时间:SST51系列单片机综合实验板开发设计摘 要SST51单片机开发板是一款功能强大、集成度高且可扩展性强的单片机实验开发系统。它将单片机实验板、编程器、仿真器集成到一个系统上,成本与价格低廉,而且摆脱了传统单片机开发套件繁琐的方式。同时,它外围集成了2位7段数码管、22矩阵键盘、2位LED指示灯、LCD等,资源丰富,可进行多种实验,非常适用于单片机教学配套试验版,另外板上具有大量的外扩接口,可非常方便的进行系统扩

2、展,适用于科研试验或学生参加电子设计竞赛。SST89E516RD是8位集成存储器的51系列兼容单片机,和51系列单片机软件兼容、开发工具兼容、管脚也兼容。在本设计中他可以实现多种功能,如流水灯、LED计数以及液晶显示两行字符,并可以用按键控制其不同功能间的转换。本设计是采用keilc编程及protus仿真电路进行仿真,最终下载到电路板上实现不同的功能。关键词:SST89E516RD、数码管LED、液晶显示器LCD、键盘、发光二级管、keilc、protusSST51 series microcontroller comprehensive Experimental board developm

3、ent designABSTRACTSST51 SCM development board is a powerful and high level of integration and extensibility of SCM experiment development system. It will SCM experiment board, programmer, simulation is integrated into a system, cost and the price is low, and from the traditional SCM development kit

4、tedious way. At the same time, the integration of the two outer it seven sections digital tube, 2 * 2 matrix keyboard, two LED indicator light, such as LCD, abundant resources, can perform a variety of experiments, is suitable for single chip microcomputer test version of the teaching form a complet

5、e set, another board has a lot of outside enlarge interface, which can be very convenient for system extension, used in scientific research test or students to attend electronic design contest.SST89E516RD is eight integrated storage 51 series of compatible single chip microcomputer, and 51 series si

6、ngle-chip microcomputer software compatibility, development tools, pipe compatible feet compatible.In this design can be realized he a variety of functions, such as water light, LED count, and liquid crystal display two lines of characters, and can use the button control of its different function of

7、 the conversion between.This design is to use keilc programming and protus simulation circuit simulation, finally downloaded to the circuit board the realization of different functions.Key words: SST89E516RD, csaladfai, LED, LCD LCD, keyboard, leds, keilc, protus目 录前 言v第一章系统概述21. 1设计题目21.2 系统设计目的和内容

8、21.2.1 设计目的21.2.2 设计内容21.2.3 设计要求2第2章 软件开发32.1 设计总体方案32.2 液晶显示器模块的原理42.3 PC机与单片机的点对点串行通信接口设计52.4 相关芯片简介62.4.1 74LS13862.4.2 74LS37362.4.3 设计原理7第3章 软件电路设计73.1 LED模块设计73.2 主程序模块设计11第4章硬件电路设计164.1 设计原理图164.2 电路焊接174.3 焊接实物图:17第五章 下载与调试运行175.1 下载步骤175.2 运行结果18第6章 调试及故障分析18结论19谢辞20参考文献21前 言SST51单片机开发板简介S

9、ST51系列单片机实验平台由基础板与多个不同功能扩展板组成。它将单片机的基础板、扩展板、编程器、仿真器等资源集成在该平台上。构成了高性能、低价位、易扩展、便于携带的嵌入式技术学习环境。SST51单片机开发板是一款功能强大、集成度高且可扩展性强的单片机实验开发系统。它将单片机实验板,编程器,仿真器集成到一个系统上,成本与价格低廉,而且摆脱了传统单片机开发套件繁琐的方式。同时,它外围集成了2位7段数码管、4个独立键盘、8位LED指示灯、流水灯、320240等大屏幕图像点阵LCD接口,资源丰富,可进行多种实验,非常适用于单片机教学配套实验板,另外板上具有大量的外扩接口,可非常方便地进行系统扩展,适用

10、于科研实验或学生参加电子设计竞赛。SST51 开发系统提供了大量的实验内容,其中包括了基础实验、扩展实验和综合实验,每个实验均提供详细的学习资料,实验指导书和软件代码。基础实验主要帮助初学者了解单片机外围接口方式与编程方法,同时熟练掌握按键、LED/LCD 显示、流水灯等常见器件的使用;扩展实验在技术难度上比基础实验更提升一级,相当于基础实验的提高篇,给出了在当前系统下进行系统功能扩展的示例;综合实验指导使用者利用单片机进行系统设计实战,使其了解常见电子产品与系统的设计方法。第一章系统概述1.1 设计题目 SST51系列单片机实验平台开发设计1.2 系统设计目的和内容1.2.1 设计目的此次课

11、程设计,有如下目的:通过此次的课程设计,使学生熟悉单片机控制系统的组成与原理以及开发流程加深学生对电子产品的制作调试及基本焊接方法有深入的理解。巩固单片机、接口等理论知识。学会通过进行查阅资料、方案设计、电源和系统电路设计、编程设计等工作,独立完成本次系统的设计与仿真。提高学生动手设计的能力及独立分析问题和解决问题的能力、综合设计及创新能力。1.2.2 设计内容利用SST系列单片机作为微控制器开发一套软、硬件结合的单片机实验平台,主要包括以下内容:1. 电路原理图设计,主要包括集LCD显示模块、串口通信模块、数码管显示模块、LED发光二极管、键盘等接口电路的设计。2. 学习集成电路等芯片的焊接

12、方法与技巧,进行实际元器件的识别,进行电路板焊接。3. 在Keil C环境下,进行软件设计。主要包括流水灯、计数器、定时器、LCD字符显示、键盘的控制等功能程序设计。4. 针对所开发的实验板,结合器件选择、原理图设计、硬件焊接、软件编程调试、软硬件联调等方面写出课程设计报告。1.2.3 设计要求通过单片机原理与接口技术课程设计,学生应完成下列基本设计任务:1. 完成综合实验平台的电路结构分析,进行模块分解,掌握各部分电路工作原理。2. 独立完成电路板的焊接,掌握故障排除方法,完成实验平台的硬件设计及开发。3. 结合Keil C软件在焊接无误的SST51实验平台上开发出流水灯、LCD显示模块,通

13、信模块等程序设计。4.熟练掌握电子器件的焊接与调试方法。1.2.4 设计步骤电路主要由2行16字LCD显示模块、2位7段数码管模块、4个LED发光二级管、4个小键盘、等几部分组成。将其焊接到电路板上,并编写keilc程序,设计出各个模块,运行且仿真成功后,下载到单片机电路板上。第2章 软件开发2.1 设计总体方案开始判断是是否有键摁下哪个键被摁下KEY2KEY1KEY3KEY4显示:By MinYanPingB090507流水灯测试LED数码管测试显示:over! Thanks判断是是否有键摁下哪个键被摁下是否停止相应的测试程序2.2 液晶显示器模块的原理字符型液晶显示模块RT-1602C的外

14、观与引脚显示容量:162个字符;工作电流2.0mA(5.0V);字符尺寸:2.954.35mm。RT-1602C采用标准的16脚接口,各引脚情况如下:第1脚:VSS为电源地;第2脚:VDD为+5V电源;第3脚:VL为液晶显示对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时,会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为数据/命令选择端,高电平时选择数据寄存器、低电平时选择命令寄存器。RS寄存器及操作00指令寄存器写入01忙信号和地址计数器读出10数据寄存器写入11数据寄存器读出第5脚:,读写操作选择(1读,0写)。第6脚:E端为使能端,当E端由高电

15、平跳变成低电平时(负跳变),液晶模块执行命令。第714脚:D0D7,为8位双向数据总线,与单片机的数据总线相连,三态。第15脚:BLA,背光电源,通常为5V,并联一个电位器,调节背光亮度。第16脚:BLK,背光电源地。 2.3 PC机与单片机的点对点串行通信接口设计在测控系统中,由于单片机的数据存储容量和数据处理能力都较低,所以一般情况下单片机通过串行口与PC机的串行口相连,把采集到的数据传送到PC机上,再在PC机上进行数据处理。由于单片机的输入输出是TTL电平,而PC机配置的都是RS-232标准串行接口,为9针“D”型连接器(插座),如图2-3-1所示。表7-3为 “D”型9针插头的引脚定义

16、。由于两者的电平不匹配,必须对单片机输出的TTL电平转换为RS-232电平。单片机与PC机的接口方案如图2-3-2所示。 图2-3-2 单片机与PC机的串行接口方案 图2-3-1 “D”型9针插头引脚定义图中电平转换芯片为MAX232,接口的连接只用了3 条线,即RS-232插座中的2脚、3脚与5脚。2.4相关芯片简介2.4.1 74LS13874LS138 为3 线8 线译码器,共有 54/74S138和 54/74LS138 两种线路结构型式。 其工作原理如下: 当一个选通端(E1)为高电平,另两个选通端((/E2)和/(E3))为低电平时,可将地址端(A0、A1、A2)的二进制编码在Y0

17、至Y7对应的输出端以低电平译出。比如:A2A1A0=110时,则Y6输出端输出低电平信号。 若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器。 利用 E1、E2和E3可级联扩展成 24 线译码器;若外接一个反相器还可级联扩展成 32 线译码器。 可用在8086的译码电路中,扩展内存。2.4.2 74LS37374LS373是20引脚的锁存器,8输入8输出,输入与单片机的一个8位I/O口相连接,输出至数码管的引脚。D锁存器(3S,锁存允许输入有回环特性) 简要说明: 373为三态输出的八 D 透明锁存器,共有 54S373 和 74LS373 两种线路 结构型式,其主要电器特性

18、的典型值如下:型号 tPd PD 54S373/74S373 7ns 525mW 54LS373/74LS373 17ns 120mW 373 的输出端 O0O7 可直接与总线相连。 当三态允许控制端 OE 为低电平时,O0O7 为正常逻辑状态,可用来驱动负载或总线。当 OE 为高电平时,O0O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。 当锁存允许端 LE 为高电平时,O 随数据 D 而变。当 LE 为低电平时,O 被锁存在已建立的数据电平。当 LE 端触发器的输入滞后作用,使交直流噪声抗扰度被改400mV。引出端符号:D0D7数据输入端、OE 三态允许控制

19、端、LE锁存允许端 O0O7 输出端2.4.3 设计原理 基于keilc语言设计一个SST51系列单片机综合实验板。通过键盘控制,实现流水灯、计数定时器、LCD字符显示等功能。 具体控制如下: KEY1:控制LCD第一行显示“By MinPingYan”,第二行显示“B090507”; KEY2::控制LED显示器的循环计数; KEY3: 控制LCD显示器第一行显示“over!”,第二行显示“Thanks”; KEY4: 控制发光二级管,实现流水灯上下流动。第3章 软件电路设计3.1 LED模块设计#include LED.H /*共阴极数码管1显示段选数据 0F+无显示*/code unsi

20、gned char xianshi1=0xBE, 0x12, 0x7C, 0x76, 0xD2, 0xE6, 0xEE, 0x32, 0xFE, 0xF6, 0xFA, 0xCE, 0xAC, 0x5E, 0xEC, 0xE8, 0x00;/*共阴极数码管2显示段选数据 0F+无显示*/code unsigned char xianshi2=0xFA, 0x12, 0xBC, 0x3E, 0x56, 0x6E, 0xEE, 0x32, 0xFE, 0x7E, 0xF6, 0xCE, 0xE8, 0x9E, 0xEC, 0xE4, 0x00;/*延时函数*/void delay(unsigned

21、 int xMs)unsigned int i;unsigned int j;for(i=0; ixMs; i+)for(j=0; j99)LED_Init();elseLED_Play_Sgnal(num%10),0);LED_Play_Sgnal(num/10),1); /*单个数码管显示*/void LED_Play_Sgnal(unsigned char num,bit wei)if(wei) /十位LED_DATA_PORT = 0x00;A_138 = 1;B_138 = 0;C_138 = 0; LED_DATA_PORT = xianshi1num;C_138 = 1;else

22、 /个位LED_DATA_PORT = 0x00;A_138 = 0;B_138 = 0;C_138 = 0;LED_DATA_PORT = xianshi2num;C_138 = 1;/*流水灯测试程序*/void LED_LIGHT_PLAY()unsigned char i = 0xFE;unsigned char j = 0;for(j=0; j4; j+)LED_LIGHT_PORT = i;i=(i7);delay(100);if(P3&(0x3C) != 0X3C)return;/文件名:LED.H#ifndef _LED_H_#define _LED_H_#include co

23、mmon.h /*138译码器,正常工作或全部为高电平输出*/#defineLED_DATA_PORTP0#defineLED_LIGHT_PORTP2 void LED_Init(void);void delay(unsigned int xMs);void LED_Play(unsigned char num);void LED_Play_Sgnal(unsigned char num,bit wei);void LED_LIGHT_PLAY();#endif/文件名:COMMEN.H#ifndef _COMMON_H_#define _COMMON_H_#include sbitA_13

24、8 = P25;sbitB_138 = P26;sbitC_138 = P27;sbitDIR = P14;sbitG1 = P15;sbitKEY1 = P32;sbitKEY2 = P33;sbitKEY4 = P34;sbitKEY3 = P35;sbitLED0 = P20;sbitLED1 = P21;sbitLED2 = P22;sbitLED3 = P23;#endif3.2 主程序模块设计#include common.h #include LED.Hsbit RS = P16;sbit RW = P17;void delays(unsigned int ms)unsigned

25、 char i;while(ms-)for(i=0;i120;i+);void light(void)unsigned char i = 0xFE;unsigned char j = 0;for(j=0; j4; j+)LED_LIGHT_PORT = i;i=(i7);delay(100);if(P3&(0x3C) != 0X3C)return;unsigned char busy()unsigned char lcd;RS=0;RW=1;C_138=0;B_138=1;A_138=0;delays(20);lcd=P0;delays(20);C_138=1;B_138=0;A_138=0;

26、return lcd;void wcmd(unsigned char cmd)RS=0;RW=0;C_138=0;B_138=1;A_138=0;P0=cmd;C_138=1;B_138=0;A_138=0;delays(20);void wdat(unsigned char dat)RS=1;RW=0;C_138=0;B_138=1;A_138=0;P0=dat;delays(20);C_138=1;B_138=0;A_138=0;void LCD_Print(unsigned char *str) while(*str!=0) wdat(*str); str+; void init()wc

27、md(0x01);wcmd(0x38);wcmd(0x0e);wcmd(0x06);void main()unsigned char i = 0;init();G1=1;DIR = 1;while(1) if(KEY1=0)wcmd(0x01);wcmd(0x80);LCD_Print(By Min Ping Yan);wcmd(0xC0);LCD_Print( B090507);if(KEY1=0);if(KEY2 = 0)if(KEY2 = 0)delays(5);while(KEY2=0); /等待按键送开while(P3&(0x3C) = 0X3C)/检测是否有按键被摁下 LED_Pl

28、ay(i); delays(40); i+; if(i = 100) i = 0;i = 0;while(P3&(0x3C) != 0X3C);/等待按键松开if(KEY4=0)delays(5);while(P3&(0x3C) != 0X3C); /等待按键松开delays(5);while(P3&(0x3C) = 0X3C)light();if(KEY3=0)wcmd(0x01);wcmd(0xC0);LCD_Print( 0ver thanks!);while(KEY3=0); 第4章 硬件电路设计4.1 设计原理图如下为“SST51系列单片机实验平台”的总体设计电路图:图2-1 总体设

29、计电路图4.2电路焊接 用到的元器件主要有:、470电阻四个、47电阻两个、10K电阻六个、8.2K电阻一个、5.1K电阻一个、0.1uF电容若干、电源接口、电位器、排阻、稳压管、晶振、下载串口、LCD、LED、芯片底座、7段数码管、键盘。4.3焊接实物图:第五章 下载与调试运行5.1下载步骤打开SSTFlashFlex51软件,进行如下步骤:1、点击DetectChip/RS232 2、选第一项3、默认ok 4、Detect MCU5、按住板子上的复位键别动,再点击确定6、然后松开复位键 7、再选右侧的download8、选择要加载的.hex文件 9、ok5.2运行结果 插上电源,按下按键,

30、则相应的功能如下:KEY1:控制LCD第一行显示“By MinPingYan”,第二行显示“B090507”; KEY2::控制LED显示器的循环计数; KEY3: 控制LCD显示器第一行显示“over!”,第二行显示“Thanks”; KEY4: 控制发光二级管,实现流水灯上下流动。第6章 调试及故障分析在编第一个程序时,程序调试成功,但下载到电路板上后运行出现错误,数码管显示的数字部分出现错误。后经检查分析发现程序中LED数码管的定义错误,重新定义数码管后再次下载,运行成功。流水灯程序,刚开始时周期过长,多次调整延时函数后,达到了预期的效果。最后调试时发现,液晶显示器LCD前半部分显示异常

31、,字符若隐若现,可能多次插拔液晶显示器,造成管脚松动,LCD显示异常,换了另一块LCD运行成功。同时也对程序做了微小的调整,刚开始设计的是显示一行字符,经我组成员讨论决定添加部分程序指令使LCD显示两行字符。结论在课程设计这段时间,我们组花费了一个下午焊接电路,两天的时间编程并查找错误,有时候一个小小的错误就可以花费很长的时间修改才能正确,有时候仅仅是因为一个标点符号的错误,就有可能导致程序出错,其错误位置提示的往往是其附近,所以修改时有点小困难,花费的时间也相对的增加了不少。反复理解电路原理图后,才能从中找到解决问题的方法,反复的测试,纠错,不仅提高了我对电路的理解,更深层次对理论的理解,也

32、培养了我分析数字电路问题,解决问题的能力。在这个过程中,我们要静下心来细心的分析问题,找出解决问题的方法。此次课程设计收获不小,用到了也认识了很多元件和芯片,并了解了相关的引脚及其功能,以及相关的判断规则。Keilc分模块编程和宏定义都是这次课程设计的一大尝试,以前没怎么用过,不过还好没有出现太多的问题,出现的问题也都及时解决了,从中学到了不少东西。在这次的课程设计中所积累的实际开发经验和培养分析问题解决问题的能力是本次课设最大的收获。这次的课程设计,让我深深的体会到了团队合作的重要性。合作期间,分工明确,可以使我们更快、更好地完成我们的工作。同时,我学到了怎样在单片机开发板上进行实际测试,认

33、识到理论联系实际的重要性。并且提高了我对硬件开发的兴趣,初步认识到了软件编程与硬件功能实现的结合点。在此期间,我们可以更好的知道自己的优势所在,把握好自己的优势,也可以知道自己的不足和缺陷,加以改正。谢辞在论文完成之际,我要向帮助我的指导老师李老师表示衷心的感谢,在这次课程设计中,有不懂的地方就向李老师询问,李老师总能不厌其烦的讲解。同时也要感谢我的同学,虽然我们编的程序不一样,但是当我遇到问题时,他们总能认真的帮我分析问题并耐心的跟我讲解。李老师与我们交谈时,我发现老师是那么的和蔼可亲。感谢您为我们提供了这次动手锻炼的机会,为同学们营造的浓郁的学习氛围以及学习上的无私帮助!参考文献1 李蒙,毛建东编.单片机原理及应用M.1版. 中国轻工业出版社,2009.2 夏路易,石宗义编著.电路原理图与电路板设计教程M.北京希望电子出版社,2002.3 徐泳龙主编.单片机原理及应用M.机械工业出版社,2004.4 皮大能,南光群,刘金华编.单片机课程设计指导书M.北京理工大学出版社.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号