资源简介
该设计基于单片机系统设计了一种篮球比赛计时计分系统,系统具有显示赛队
名字比分、时间暂停、按键清零、按键提示音、赛节显示等功能。
代码片段和文件信息
#include //头文件
#include
sbit E=P2^7; //1602使能引脚
sbit RW=P2^6; //1602读写引脚
sbit RS=P2^5;
sbit Hup=P1^0;
sbit Hdown=P1^1;
sbit Rup=P1^2;
sbit Rdown=P1^3;
sbit clc = P1^4;
sbit seg=P1^5;
sbit back24sec = P1^6;
sbit beginStop =P1^7;
sbit fangyin =P3^7;
unsigned char Countflag;
sbit bee_Speak=P2^0; //蜂鸣器接口
unsigned char dis1[]={“ZHU : KE “};
unsigned char dis2[]={“ : SEG- “};
char secminnumtimesec_24s;
unsigned int hpoint=128;
unsigned int rpoint=145; //讯响器控制脚
void DelayMs(unsigned char number)
{
unsigned char i;
while(number--)
{
for(i=0;i<120;i++)
{;}
}
}
void delay1ms(unsigned char ms)
{
unsigned char ij;
for(i=0;i for(j=0;j<110;j++);
}
void Beep(void)
{
bee_Speak=0; // 灯亮
DelayMs(400);
bee_Speak=1; // 灯灭
DelayMs(400);
}
unsigned char lcd_busy() /*判断液晶模块的忙碌状态*/
{
bit result;
RS=0;
RW=1;
E=1;
_nop_();
_nop_();
_nop_();
_nop_();
result = (bit)(P0&0x80);
E=0;
return result;
}
void lcd_wcmd(unsigned char cmd) /*写指令数据到LCD*/
{
while(lcd_busy());
RS=0;
RW=0;
E=0;
_nop_();
_nop_();
P0=cmd;
_nop_();
_nop_();
_nop_();
_nop_();
E=1;
_nop_();
_nop_();
_nop_();
_nop_();
E=0;
}
void lcd_pos(unsigned char pos) /*指定字符显示的实际地址*/
{
lcd_wcmd(pos|0x80);
}
void lcd_wdat(unsigned char dat) /*将数据(字符的标准ASCII码)写入液晶模块*/
{
while(lcd_busy());
RS=1;
RW=0;
E=0;
P0=dat;
_nop_();
_nop_();
_nop_();
_nop_();
E=1;
_nop_();
_nop_();
_nop_();
_nop_();
E=0;
}
void LcdInit() /*LCD1602初始化函数*/
{
delay1ms(15);
lcd_wcmd(0x38);
delay1ms(5);
lcd_wcmd(0x38);
delay1ms(5);
lcd_wcmd(0x38);
delay1ms(5);
lcd_wcmd(0x0c);
delay1ms(5);
lcd_wcmd(0x06);
delay1ms(5);
lcd_wcmd(0x01);
delay1ms(5);
}
void delay(int z)
{
int x;
unsigned char y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
/***初始化程序***/
void init(void)
{
time=0;
TMOD=0x10; //定时器1初始化
TL1=0x00;
TH1=0x4c;
EA=1; //开总中断
ET1=1; //开定时器1
TR1=0; //定时器1不工作
hpoint=0; //H.T分数初始化
rpoint=0; //R.T分数初始化
sec=0;
min=12;
num=1;
sec_24s=24;
}
/***LCD分数更新**
void point_lcd(uchar adduchar dat)
{
write_com(0x80+add);
write_dat(0x30+dat/100);
write_dat(0x30+(dat%100)/10);
write_dat(0x30+dat%10);
}
*/
void display(void)
{
lcd_pos(0x04);
lcd_wdat((hpoint/100)+48);
lcd_pos(0x05);
lcd_wdat((hpoint%100/10)+48);
lcd_pos(0x06);
lcd_wdat((hpoint%100%10)+48);
lcd_pos(0x08);
lcd_wdat((rpoint/100)+48);
lcd_pos(0x09);
lcd_wdat((rpoint%100/10)+48);
lcd_pos(0x0A);
lcd_wdat((rpoint%100%10)+48);
lcd_pos(0x40);
lcd_wdat(min/10+48);
lcd_pos(0x41);
lcd_wdat(min%10+48);
lcd_pos(0x43);
lcd_wdat(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-05-10 13:37 篮球赛计时计分器\
目录 0 2020-05-10 13:37 篮球赛计时计分器\仿真\
文件 143382 2018-06-11 10:32 篮球赛计时计分器\仿真\Last Loaded 篮球.DBK
文件 5770 2018-05-17 09:05 篮球赛计时计分器\仿真\dew.hex
文件 13412 2018-06-11 10:31 篮球赛计时计分器\仿真\仿真说明.docx
目录 0 2020-05-10 13:37 篮球赛计时计分器\仿真\程序\
文件 6376 2009-05-07 14:37 篮球赛计时计分器\仿真\程序\STARTUP.A51
文件 14048 2018-06-11 10:08 篮球赛计时计分器\仿真\程序\STARTUP.LST
文件 758 2018-06-11 10:08 篮球赛计时计分器\仿真\程序\STARTUP.OBJ
文件 19797 2018-05-17 09:05 篮球赛计时计分器\仿真\程序\dew
文件 28702 2018-05-17 09:05 篮球赛计时计分器\仿真\程序\dew.M51
文件 676 2018-06-01 10:04 篮球赛计时计分器\仿真\程序\dew.build_log.htm
文件 55 2018-05-17 09:05 篮球赛计时计分器\仿真\程序\dew.lnp
文件 137549 2018-06-15 11:20 篮球赛计时计分器\仿真\程序\dew.uvgui.win8
文件 137553 2018-06-11 10:27 篮球赛计时计分器\仿真\程序\dew.uvgui_win8.bak
文件 5678 2018-06-01 16:14 篮球赛计时计分器\仿真\程序\dew.uvopt
文件 14009 2018-06-01 16:14 篮球赛计时计分器\仿真\程序\dew.uvproj
文件 5324 2018-05-17 09:08 篮球赛计时计分器\仿真\程序\dew_uvopt.bak
文件 14006 2018-05-17 09:08 篮球赛计时计分器\仿真\程序\dew_uvproj.bak
文件 18344 2018-06-11 10:08 篮球赛计时计分器\仿真\程序\main.LST
文件 8531 2018-06-15 11:20 篮球赛计时计分器\仿真\程序\main.c
文件 143377 2018-06-11 10:33 篮球赛计时计分器\仿真\篮球.DSN
文件 768 2018-06-11 10:33 篮球赛计时计分器\仿真\篮球.PWI
目录 0 2020-05-10 13:37 篮球赛计时计分器\程序\
文件 5115 2002-04-16 15:32 篮球赛计时计分器\程序\STARTUP.A51
文件 11665 2018-06-11 10:23 篮球赛计时计分器\程序\STARTUP.LST
文件 758 2018-06-11 10:23 篮球赛计时计分器\程序\STARTUP.OBJ
文件 712 2018-06-15 12:20 篮球赛计时计分器\程序\ball.build_log.htm
文件 21673 2018-06-11 10:22 篮球赛计时计分器\程序\dew
文件 26974 2018-06-11 10:22 篮球赛计时计分器\程序\dew.M51
文件 1798 2018-06-11 10:23 篮球赛计时计分器\程序\dew.build_log.htm
............此处省略14个文件信息
相关资源
- 单片机单总线通信的自已编写
- 带串口通信的温度控制器(带proteus仿
- MEID&IMEI批量生成软件
- 基于51单片机的智能家居系统程序
- AD9833驱动程序
- erdas9.2软件操作初学指南
- 软件工程实验报告销售管理系统
- 嵌入式软件开发流程----很好的流程资
- 线切割\\Yh线切割软件5.2免费版
- 103等多种协议测试软件
- 汇编语言实验二英文打字练习软件
- hmc5883l 电子罗盘430单片机程序
- 多种制冷剂压焓图查询软件
- 邮件地址搜索软件SearchMail
- 基于C51单片机音乐盒设计[1]
- 89C51单片机控制HT1621B驱动LCD(C程序)
- 可以控制加减的十二进制计数器
- 单片机单击,双击,长击程序
- 51单片机 lcd1602测试C程序
- ADC0804与单片机的模数转换程序附仿真
- 易通眼镜店配镜记录档案管理软件_注
- 基于单片机的智能温度控制系统设计
- 单片机.zip
- 基于atmega16单片机的时钟
- 基于51单片机LCDLM041L显示贪吃蛇小游戏
- 数据结构文件实现宿舍管理软件设计
- 色品坐标图显示软件
- C 语言实现湿度传感器SHT30(51代码)
- 51 单片机串口通信程序,RS232串口通信
- protel DXP 2004画51常元件库
评论
共有 条评论