版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、设计要求设计要求n设计制作一个篮球赛场计时计分牌,功能如下:设计制作一个篮球赛场计时计分牌,功能如下:n具有计分分功能具有计分分功能+1、+2、+3、-1分,并分,并在在LCD1602上显示双方比分。上显示双方比分。n具有计时功能,每节总时间倒计时,具有计时功能,每节总时间倒计时,24S倒计倒计时,倒计时结束蜂鸣器报警。时,倒计时结束蜂鸣器报警。n具有暂停、具有暂停、24秒复位、秒复位、24秒结束自动暂停、秒结束自动暂停、系统复位等功能。系统复位等功能。系统方案设计系统方案设计硬件设备硬件设备l单片机单片机AT89C51简介:在一块芯简介:在一块芯片中集成了片中集成了CPU、RAM、ROM、定
2、时定时/计数器和多功能计数器和多功能I/O口等计口等计算机所需要的根本部件的大规模算机所需要的根本部件的大规模集成电路,又称集成电路,又称MCU。其以体积。其以体积小、功能全、性价比等诸多优点小、功能全、性价比等诸多优点而独具特色,在工业控制、尖端而独具特色,在工业控制、尖端武器、通信设备、家用电器等嵌武器、通信设备、家用电器等嵌入式应用领域中独占鳌头。如果入式应用领域中独占鳌头。如果说说C语言程序设计课程设计的根语言程序设计课程设计的根底课,那么单片机以其系统硬件底课,那么单片机以其系统硬件构架完整、价格低廉、学生能动构架完整、价格低廉、学生能动手等特点,成为工科学生硬件设手等特点,成为工科
3、学生硬件设计根底课。计根底课。 AT89C51管脚说明管脚说明VCC:供电电压 GND:接地 P0口:P0口作为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1缓冲器能接收输出4TTL门电流。 P2口:P2口为一个内部上拉电阻的8为双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1时,其管脚被内部上拉电阻拉高,且作为输入。 P3口:P3口管脚是8个带内部上拉斯电阻的双向I/O口,可接收输出4个TTL门电流。P3口也可作为AT89C51的一些特殊功能 LCD1602介绍介绍n本设计采用LCD1602实现显
4、示功能, 1602是16字符*2行的字符型LCD显示器,它由32个字符点阵块组成,每个字符点阵块由57或510个点阵组成,可以显示ASCII码表中的所有可视的字符。它内置了字符产生器ROM(CGROM)、字符产生器RAM(CGRAM)和显示数据RAMDDRAM。1602液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 系统电路原理图系统电路原理图(仿真图仿真图Protel设计电路设计电路123456ABCD654321DCBATitleNumberRevisionSizeBDate:18-Dec-2013Sheet of Fi
5、le:G:新建文件夹hMyDesignMyDesign.ddbDrawn By:EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10VCC40GND20U1805112345678910111213141516J1CON16123456789J2CON9+5+5X112MC133pF
6、C233pFS1SW-PBS2SW-PBS7SW-PBS3SW-PBS4SW-PBS8SW-PBS5SW-PBS6SW-PBS9SW-PBQ1PNPR310K+5+5R12KS10SW-PBC322uFR251+51234J3CON4+5+5U2BUZZER123J4CON3PCB电路板制作电路板制作工程分析工程分析 n本次工程的设计首先需要我本次工程的设计首先需要我们了解们了解C C中各种语句的使用中各种语句的使用方法,单片机定时器的结构方法,单片机定时器的结构及定时器的工作方式、初始及定时器的工作方式、初始值设置、值设置、16021602的使用等根的使用等根本技能,其次我们必须分配本技能,
7、其次我们必须分配好硬件资源,不要太浪费。好硬件资源,不要太浪费。程序流程图NY定时器0,1,LCD初始化显示倒计时时间读取P1口的值开始是否有按键按下哪个按键按下加一加二加三减一暂停复位复位经P0,P2.7口输出LCD显示时间、分数、节次,蜂鸣器报警?函数声明n#include n#include n#define uchar unsigned charn#define uint unsigned int n#define Lcd_Port P0 n#define KEY_IO P1 nsbit RS=P20; nsbit RW=P21;nsbit E=P22;nsbit Busy=P07;n
8、sbit speaker=P27;nuchar data keytemp,key;nuchar c=0;nuint b=0;nuchar j=0;nuchar e=1;nuchar d=0;nuchar er=240;nuchar min=12;nuchar sec=0; nuchar data flag=0 x00;nbit flag_key=0; nuchar code Lcddata=0123456789:.;nvoid Delay(int t)nnuchar a;nwhile(t-)n nfor(a=0;a120;a+);nn延时函数主函数nvoid main(void)nnInit_
9、LCD(); n Timer0Init(); n Write_Comm(0 x80); n Write_Data(L);nWrite_Data(B);nWrite_Data(J);n Write_Data(:);n Write_Comm(0 x80+0 x4e);n Write_Data(S);n Write_Data(T);n Write_Comm(0 x80+0 x40);nWrite_Data(K);nWrite_Data(O);n Write_Data(B);n Write_Data(:);n while(1)n nShow_Time();n keyscan();nnnvoid Sho
10、w_Time(void)nnWrite_Comm(0 x80+0 x48); nWrite_Char(er/100);nWrite_Char(er/10%10);nWrite_Char(11);nWrite_Char(er%10);nWrite_Comm(0 x80+0 x4d);nWrite_Char(e%10); nWrite_Comm(0 x80+0 x0a);nWrite_Char(min/10); /显示倒计时分钟nWrite_Char(min%10);nWrite_Char(10); /显示:nWrite_Char(sec/10); /显示倒计时秒nWrite_Char(sec%1
11、0);nWrite_Comm(0 x80+0 x44);nWrite_Char(d/100);nWrite_Char(d/10%10);nWrite_Char(d%10%10);nWrite_Comm(0 x84);nWrite_Char(c/100);nWrite_Char(c/10%10);nWrite_Char(c%10%10); n显示函数显示函数nvoid Write_Char(uint num)n nRead_Busy();nRS=1;RW=0;E=1;nLcd_Port = Lcddatanum;nE=0;nnvoid Write_Data(uchar lcddata)n nRe
12、ad_Busy();n RS=1;RW=0;E=1;q Lcd_Port = lcddata;n E=0;nnvoid Init_LCD(void)n nDelay(400);Write_Comm(0 x38)Write_Comm(0 x0c); Write_Comm(0 x01); Write_Comm(0 x06); n Write_Comm(0 x02);nnvoid Read_Busy(void)n nuchar i=50;nLcd_Port=0 xff;nRS=0;nRW=1;nE=1;nwhile(i-)&Busy);nE=0;nnvoid Write_Comm(uchar
13、 lcdcomm) n n Read_Busy();n RS=0;n RW=0;n E=1;n Lcd_Port=lcdcomm;n E=0;nLCD1602控制函数控制函数按键扫描函数nvoid keyscan()nnuchar i,t=0 xef; nKEY_IO=0 x0f;nkeytemp=(KEY_IO)&0 x0e;nif(keytemp!=0) nnDelay(20);nfor(i=0;i3;i+)nnKEY_IO=t; keytemp=(KEY_IO)&0 x0e; if(keytemp!=0&flag_key=0)nnflag_key=1;nswitc
14、h(keytemp)nncase 0 x08:key=0*3+i;break;ncase 0 x04:key=1*3+i;break;ncase 0 x02:key=2*3+i;break;ndefault:break;n nswitch(key)n n case 0:d+;j=1;b=0;break;n case 1:d+;d+;j=1;b=0;break;n case 2:d+;d+;d+;j=1;b=0;break;n case 3:c+;b=1;j=0;break;n case 4:c+;c+;b=1;j=0;break;n case 5:c+;c+;c+;b=1;j=0;break;
15、n case 6:if(j=1&(d!=0) d-;if(b=1&(c!=0) c-;break;ncase7:TR0=TR0;TR1=TR1;speaker=0;Delayms(1500);speaker=1;break;ncase 8:TR1=1;TR0=1;er=240;break;ndefault:break;nn t=(t1)|0 x01;nn else flag_key=0;n中断0函数nTR0=0;nTR1=0;n speaker=0;n Delay(1500);n speaker=1;ne+;nmin=12;n sec=0;ner=240;n n elsen n sec=60;n min-;n n nsec-;nnnvoid IsrTimer0() interrupt 1 using 1 /T0 50mS中断程序n nstatic uchar count=0;nTH0=0 x3c;nTL0=0 xb0;ncount+;nif(count=20) n n count=0; n if(sec=0) n n if(min=0) n 中断1函数nvoid IsrTimer1(void) interrupt 3 using 3/T1 50mS中断程序nnstatic uchar t24ms=0;n TH1=0 x3c;nTL1=0 xb0;nt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 墙布国庆活动策划方案(3篇)
- 农业面源污染与人体健康的关系研究-洞察及研究
- 动物专业营销方案(3篇)
- 2025年第三类医疗器械经营企业质量管理的自查报告
- 建材全年活动策划方案(3篇)
- 2025年疾控中心控烟自查报告
- 肝纤维化分子机制研究-洞察及研究
- 美甲店转让合同模板及注意事项
- 员工竞业限制协议标准模板
- 房屋买卖协议合同标准文本
- 毕业设计(论文)-轿车盘式制动器设计
- 中医护理技术推拿
- 2025年人教版(2024)小学信息科技三年级(全一册)教学设计及反思(附目录P206)
- 6061铝合金与CFRP回填式搅拌摩擦点焊:工艺解析与接头性能探究
- 校油泵维修协议书
- 中小学食堂管理规范
- 零基础电脑知识课件下载
- 煤矿重大灾害治理顶层设计方案
- 车辆加水协议书范本
- 2021年重庆市高等职业教育分类考试文化素质真题(中职类)
- 平潭岛旅游景点
评论
0/150
提交评论