欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機棋牌游戲仿真設(shè)計 附源碼和仿真圖
[打印本頁]
作者:
izhineng
時間:
2018-1-10 04:08
標題:
單片機棋牌游戲仿真設(shè)計 附源碼和仿真圖
棋牌的設(shè)計,附源碼和仿真圖
0.png
(19.82 KB, 下載次數(shù): 82)
下載附件
2018-1-10 04:06 上傳
單片機源程序如下:
#include <MSP430f249.h>
#define uchar unsigned char
#define uint unsigned int
uchar const led_tab[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //共陰數(shù)碼管段選碼表,無小數(shù)點
uchar key; //按鍵值
uint flag1=0,flag2=0,flag3=0;
void delayus(uint t)
{
uint i;
while(t--)
for(i=1300;i>0;i--);
}
void system_Initial(void)
{
P3SEL &= 0x00; //選擇P3為輸入/輸出口
P3DIR |= 0XFF; //選擇P3為輸出功能
P3OUT=0xFF;
P1DIR = 0xFF; // 設(shè)置方向為輸出
P4DIR = 0xFF; // 設(shè)置方向為輸出
P2DIR = BIT0 + BIT1+BIT2+BIT3;
P1OUT = 0x00; //LED輸出全部關(guān)閉
P4OUT = 0x00; //LED輸出全部關(guān)閉
P2OUT = BIT0 + BIT1+BIT2+BIT3;
P2IE |= BIT4+BIT5+BIT6; //P2.2中斷使能
P2IES |= BIT4+BIT5+BIT6; //P2.2下降沿中斷
P2IFG &=~(BIT4+BIT5+BIT6); //P2.2清除中斷標志
_EINT();
}
// 端口2中斷服務程序
#pragma vector=PORT2_VECTOR
__interrupt void Port_2(void)
{
P2IFG &= ~(BIT4+BIT5+BIT6); //清除中斷標志
}
//**********************************************************************
int main(void)
{
uchar i;
uchar count = 29; //計數(shù)值
uchar disp_buf[4]; //顯示緩沖區(qū)
WDTCTL = WDTPW + WDTHOLD; // 關(guān)閉看門狗
system_Initial();
while(1)
{
if(!(0x10 & P2IN)) {
flag1=1;
if(flag2==1)
count=29;
flag2=0;
}
if(!(0x20 & P2IN)) {
flag2=1;
if(flag1==1)
count=29;
flag1=0;
}
if(!(0x40 & P2IN)) {
flag3=1;
}
if(flag1 == 1)
{
flag3=0;
if(count>0)
{
disp_buf[1] = count / 10; //對計數(shù)值取十位數(shù)
disp_buf[0] = count % 10; //對計數(shù)值取個位數(shù)
for(i = 0;i < 25; i++) //總共循環(huán)25次,計時1s
{
P1OUT = 0;
P1OUT = led_tab[disp_buf[1]];
P2OUT = ~BIT0; //顯示十位數(shù)
delayus(2); //軟件仿真時,取20不閃爍
P1OUT = 0;
P1OUT = led_tab[disp_buf[0]];
P2OUT = ~BIT1; //顯示個位數(shù)
delayus(2); //軟件仿真時,取20不閃爍
}
count--;
}
if(count==0)
{
P1OUT = 0;
P1OUT = led_tab[0]; //30s倒計時結(jié)束,顯示0;
P2OUT = ~BIT1;
P3OUT=~BIT1;
}
}
if(flag2 == 1)
{
flag3=0;
if(count>0)
{
disp_buf[3] = count / 10; //對計數(shù)值取十位數(shù)
disp_buf[2] = count % 10; //對計數(shù)值取個位數(shù)
for(i = 0;i < 25; i++) //總共循環(huán)25次,計時1s
{
P4OUT = 0;
P4OUT = led_tab[disp_buf[3]];
P2OUT = ~BIT2; //顯示十位數(shù)
delayus(2); //軟件仿真時,取20不閃爍
P4OUT = 0;
P4OUT = led_tab[disp_buf[2]];
P2OUT = ~BIT3; //顯示個位數(shù)
delayus(2); //軟件仿真時,取20不閃爍
}
count--;
}
if(count==0)
{
P4OUT = 0;
P4OUT = led_tab[0]; //30s倒計時結(jié)束,顯示0;
P2OUT = ~BIT3;
P3OUT=~BIT0;
}
}
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
棋牌.rar
(152.8 KB, 下載次數(shù): 18)
2018-1-10 04:08 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1