關鍵詞:c語言 51單片機 1602 籃球計分
20170711095026.png (20.1 KB, 下載次數: 49)
下載附件
2017-7-11 09:51 上傳
0.png (55.03 KB, 下載次數: 47)
下載附件
2017-7-11 15:08 上傳
單片機源程序如下:
- #include<reg52.h>
- #include "1602.h"
- #define DataPort P0
- sbit KEY1=P3^0;
- sbit KEY2=P3^1;
- sbit KEY3=P3^2;
- sbit KEY4=P3^3;
- sbit KEY5=P3^4;
- sbit KEY6=P3^5;
- sbit KEY7=P3^6;
- int a;
- int b;
- bit flag=0;
- char code Ad[16]="Scores A: ";
- char code Bd[16]="Scores B: ";
- void Delay10ms() //@11.0592MHz
- {
- unsigned char i, j;
- i = 18;
- j = 235;
- do
- {
- while (--j);
- } while (--i);
- }
- void KeyScan(void)
- {
- /********************************************************/
- if(!KEY1)
- {
- Delay10ms();
- if(!KEY1)
- {
- while(!KEY1);
- {
- flag=!flag;
- }
- }
- }
- if(!KEY2)
- {
- Delay10ms();
- if(!KEY2)
- {
- while(!KEY2);
- {
- a++;
- }
- }
- }
- if(!KEY3)
- {
- Delay10ms();
- if(!KEY3)
- {
- while(!KEY3);
- {
- b++;
- }
- }
- }
- if(!KEY4)
- {
- Delay10ms();
- if(!KEY4)
- {
- while(!KEY4);
- {
- a=a+2;
- }
- }
- }
- if(!KEY5)
- {
- Delay10ms();
- if(!KEY5)
- {
- while(!KEY5);
- {
- b=b+2;
- }
- }
- }
- if(!KEY6)
- {
- Delay10ms();
- if(!KEY6)
- {
- while(!KEY6);
- {
- a=a+3;
- }
- }
- }
- if(!KEY7)
- {
- Delay10ms();
- if(!KEY7)
- {
- while(!KEY7);
- {
- b=b+3;
- }
- }
- }
- }
- void Axian()
- {
- char x,y,z,num;
- LCD_Write_Com(0x80);
- for(num=0;num<9;num++)
- {
- LCD_Write_Data(Ad[num]);
- }
- x=a/100;
- y=(a%100)/10;
- z=(a%100)%10;
- LCD_Write_Com(0x80+11);
- LCD_Write_Data(0x30+z);
- LCD_Write_Com(0x80+10);
- LCD_Write_Data(0x30+y);
- LCD_Write_Com(0x80+9);
- LCD_Write_Data(0x30+x);
- }
- void Bxian()
- {
- char x,y,z,num;
- LCD_Write_Com(0x80+0x40);
- for(num=0;num<9;num++)
- {
- LCD_Write_Data(Bd[num]);
- }
- x=b/100;
- y=(b%100)/10;
- z=(b%100)%10;
- LCD_Write_Com(0x80+0x40+11);
- LCD_Write_Data(0x30+z);
- LCD_Write_Com(0x80+0x40+10);
- LCD_Write_Data(0x30+y);
- LCD_Write_Com(0x80+0x40+9);
- LCD_Write_Data(0x30+x);
- }
- void Axian1()
- {
- char x,y,z,num;
- LCD_Write_Com(0x80+0x40);
- for(num=0;num<9;num++)
- {
- LCD_Write_Data(Ad[num]);
- }
- x=a/100;
- y=(a%100)/10;
- z=(a%100)%10;
- LCD_Write_Com(0x80+0x40+11);
- LCD_Write_Data(0x30+z);
- LCD_Write_Com(0x80+0x40+10);
- LCD_Write_Data(0x30+y);
- LCD_Write_Com(0x80+0x40+9);
- LCD_Write_Data(0x30+x);
- }
- void Bxian1()
- {
- char x,y,z,num;
- LCD_Write_Com(0x80);
- for(num=0;num<9;num++)
- {
- LCD_Write_Data(Bd[num]);
- }
- x=b/100;
- y=(b%100)/10;
- z=(b%100)%10;
- LCD_Write_Com(0x80+11);
- LCD_Write_Data(0x30+z);
- LCD_Write_Com(0x80+10);
- LCD_Write_Data(0x30+y);
- LCD_Write_Com(0x80+9);
- LCD_Write_Data(0x30+x);
- }
- /*------------------------------------------------
- 主函數
- ------------------------------------------------*/
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
籃球計數器—1602顯示.zip
(58.07 KB, 下載次數: 83)
2017-7-11 09:53 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|