亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
一個基于單片機的MY1690語音播放系統(tǒng)源程序
[打印本頁]
作者:
jiazhengjing
時間:
2017-5-14 18:25
標題:
一個基于單片機的MY1690語音播放系統(tǒng)源程序
這是我畢業(yè)設(shè)計的題目餐廳語音播放系統(tǒng)的碼源,用keil編的,資料包括所使用的元器件和語音模塊的說明說和電路圖。
0.png
(69.42 KB, 下載次數(shù): 147)
下載附件
2017-5-14 18:50 上傳
單片機源程序如下:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar yytable[]={0x7e,0x05,0x41,0x00,0x0b,0x4f,0xef, //請
0x7e,0x05,0x41,0x00,0x00,0x44,0xef, //0
0x7e,0x05,0x41,0x00,0x00,0x44,0xef, //0
0x7e,0x05,0x41,0x00,0x00,0x44,0xef, //0
0x7e,0x05,0x41,0x00,0x0e,0x4a,0xef, //號顧客
0x7e,0x05,0x41,0x00,0x0c,0x48,0xef, //dao
0x7e,0x05,0x41,0x00,0x00,0x44,0xef, //0
0x7e,0x05,0x41,0x00,0x00,0x44,0xef, //0
0x7e,0x05,0x41,0x00,0x0d,0x49,0xef}; //號餐桌就餐
uchar yinjia[]={0x7e,0x03,0x15,0x16,0xef};
uchar yinjian[]={0x7e,0x03,0x16,0x15,0xef};
uchar xstable[]={0xc7,0Xeb,0xa3,0xb0,0xa3,0xb0,0xa3,0xb0,0xba,0xc5,0xb9,0xcb,0xbf,0xcd,0xa2,0xa0,
0xb5,0xbd,0xa3,0xb0,0xa3,0xb0,0xba,0xc5,0xb2,0xcd,0xd7,0xc0,0xbe,0xcd,0xb2,0xcd};
//請00 0號顧客_ 0x80 0x81 0x82 0x83 0x83 0x84 0x85 0x86
//到00號餐桌就餐
sbit rs=P1^0;
sbit rw=P1^1;
sbit e=P1^2;
sbit psb=P1^3;
void write_12864com(uchar com);
void write_12864dat(uchar dat);
void initial(void);
void display(void);
void send_cmd(uchar dat);
void send_yytable(void);
void Serial_init(void);
//****************************
//在12MHz的晶振下,延時5us
//*****************************
void delay_50us(uint t)
{
uchar j;
for (; t>0;t--);
for (j=19; j>0;j--);
}
//****************************
//在12MHz的晶振下,延時50ms
//*****************************
void delay_50ms(uint t)
{
uint j;
for (; t>0;t--);
for (j=6245; j>0;j--);
}
void Delay_Ms(int z)
{
int x=0 , y=0;
for(x=110 ; x>0 ;x--)
for(y=z; y>0;y-- );
}
void main ()
{ uchar b;
uint i;
uint Key_flag;
uchar key_l;
uchar key_h;
uchar key;
uchar xs7=0xb0;
uchar xs5=0xb0;
uchar xs3=0xb0;
uchar yy11=0x00;
uchar yy18=0x00;
uchar yy25=0x00;
uchar jy ;
Key_flag=0;
Serial_init();//串口初始化
initial();//液晶初始化
display();
while(1)
{ //jianpan
P2=0xf0;
key_l=P2;
key=0x00;
key_l=key_l&0xf0; //
if (key_l!=0xf0)
{
delay_50us(100);
if (key_l!=0xf0)
{
key_l=P2&0xf0;
key_l=key_l|0x0f;
P2=key_l;
key_h=P2;
key_h=key_h&0x0f;
key_l=key_l&0xf0;
key=key_l+key_h;
}
}
switch (key)
{
case 0xee:
if (Key_flag%2==0) //Key_flag偶數(shù)
{Key_flag++;
xstable[19]=0xb1; //顯示餐桌號1_
yytable[46]=0x01; //語音餐桌號1_
yytable[47]=0x45;
display();
delay_50ms(50000) ;
}
else //(Key_flag%2==0) Key1_flag奇數(shù)
{
Key_flag++;
xstable[21]=0xb1; //顯示餐桌號_1
yytable[53]=0x01; //語音餐桌號_1
yytable[54]=0x45;
display();
delay_50ms(50000) ;
}
break;
case 0xde:
if(Key_flag%2==0) //Key_flag偶數(shù)
{Key_flag++;
xstable[19]=0xb2; //顯示餐桌號2_
yytable[46]=0x02; //語音餐桌號2_
yytable[47]=0x46;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb2; //顯示餐桌號_2
yytable[53]=0x02; //語音餐桌號_2
yytable[54]=0x46;
display();
delay_50ms(50000) ;
} break;
case 0xbe:
if (Key_flag%2==0) //Key_flag偶數(shù)
{Key_flag++;
xstable[19]=0xb3; //顯示餐桌號3_
yytable[46]=0x03; //語音餐桌號3_
yytable[47]=0x47;
display();
delay_50ms(50000) ;}
else //Key1_flag奇數(shù)
{Key_flag++;
xstable[21]=0xb3; //顯示餐桌號_3
yytable[53]=0x03; //語音餐桌號_3
yytable[54]=0x47;
display();
delay_50ms(50000) ;
} break;
case 0x7e: xs7=0xb0;
xs5=0xb0;
xs3=0xb0;
yy25=0x00;
yy18=0x00;
yy11=0x00;
xstable[7]=0xb0; //顧客號歸零
xstable[5]=0xb0;
xstable[3]=0xb0;
yytable[25]=0x00;
yytable[26]=0x44;
yytable[18]=0x00;
yytable[19]=0x44;
yytable[11]=0x00;
yytable[12]=0x44;
Key_flag=0;
display();
break;
case 0xed:;
if (Key_flag%2==0) //Key_flag奇數(shù)
{Key_flag++;
xstable[19]=0xb4; //顯示餐桌號4_
yytable[46]=0x04; //語音餐桌號4_
yytable[47]=0x40;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb4; //顯示餐桌號_4
yytable[53]=0x04; //語音餐桌號_4
yytable[54]=0x40;
display();
delay_50ms(50000) ;
} break;
case 0xdd:
if (Key_flag%2==0) //Key_flag奇數(shù)
{Key_flag++;
xstable[19]=0xb5; //顯示餐桌號5_
yytable[46]=0x05; //語音餐桌號5_
yytable[47]=0x41;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb5; //顯示餐桌號_5
yytable[53]=0x05; //語音餐桌號_5
yytable[54]=0x41;
display();
delay_50ms(50000) ;
} break;
case 0xbd:
if (Key_flag%2==0) //Key_flag奇數(shù)
{Key_flag++;
xstable[19]=0xb6; //顯示餐桌號6_
yytable[46]=0x06; //語音餐桌號6_
yytable[47]=0x42;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb6; //顯示餐桌號_6
yytable[53]=0x06; //語音餐桌號_6
yytable[54]=0x42;
display();
delay_50ms(50000) ;
} break;
case 0x7d:
if (xs7==0xb9)
{
if (key_l!=0xf0)
{
delay_50us(100);
if (key_l!=0xf0)
{
xs7=0xb0;
xstable[7]=xs7;
xs5++;
xstable[5]=xs5; //? 顯示顧客號0X0變?yōu)?+0
yy25=0x00;
yytable[25]=yy25; // 語音顧客號009變?yōu)?00
yytable[26]=0x44;
yy18++;
yytable[18]=yy18; //? 語音顧客號0X0變?yōu)?+0
jy=0x05^0x41^yy18;
yytable[19]=jy;
display();}
}}
else if (xs5==0xb9)
{
if (key_l!=0xf0)
{
delay_50us(100);
if (key_l!=0xf0)
{
xs5=0xb0;
xstable[5]=xs5;
xs3++;
xstable[3]=xs3;
yy18=0x00;
yytable[19]=0x44;
yytable[18]=yy18; //? 語音顧客號X90變?yōu)閄00
yy11++;
yytable[11]=yy11; // 語音顧客號X00變+00
jy=0x05^0x41^yy11;
yytable[12]=jy;
display();}
}}
else
{Key_flag++;
yy25++;
yytable[25]=yy25; //? 語音播放顧客號000+1
jy=0x05^0x41^yy25;
yytable[26]=jy;
xs7++;
xstable[7]=xs7; //顯示屏顧客號000+1
delay_50ms(2000) ;
display();
send_yytable();}
break;
case 0xeb:
if (Key_flag%2==0) //Key_flag奇數(shù)
{ Key_flag++;
xstable[19]=0xb7; //顯示餐桌號7_
yytable[46]=0x07; //語音餐桌號7_
yytable[47]=0x43;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{ Key_flag++;
xstable[21]=0xb7; //顯示餐桌號_7
yytable[53]=0x07; //語音餐桌號_7
yytable[54]=0x43;
display();
delay_50ms(50000) ;
} break;
case 0xdb:
if (Key_flag%2==0) //Key_flag奇數(shù)
{Key_flag++;
xstable[19]=0xb8; //顯示餐桌號8_
yytable[46]=0x08; //語音餐桌號8_
yytable[47]=0x4c;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb8; //顯示餐桌號_8
yytable[53]=0x08; //語音餐桌號_8
yytable[54]=0x4c;
display();
delay_50ms(50000) ;
} break;
case 0xbb:
if (Key_flag%2==0) //Key_flag奇數(shù)
{
Key_flag++;
xstable[19]=0xb9; //顯示餐桌號9_
yytable[46]=0x09; //語音餐桌號9_
yytable[47]=0x4d;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0xb9; //顯示餐桌號_9
yytable[53]=0x09; //語音餐桌號_9
yytable[54]=0x4d;
display();
delay_50ms(50000) ;
}break;
case 0x7b:
for (i=0;i<5;i++)
{ b=yinjia[i];
send_cmd(b);}break;
case 0xe7:
for (i=0;i<5;i++)
{ b=yinjian[i];
send_cmd(b);}break;
case 0xd7:
if (Key_flag%2==0) //Key_flag奇數(shù)
{Key_flag++;
xstable[19]=0xb0; //顯示餐桌號0_
yytable[46]=0x00; //語音餐桌號0_
yytable[47]=0x44;
display();
delay_50ms(50000) ;}
else //Key1_flag偶數(shù)
{Key_flag++;
xstable[21]=0x00; //顯示餐桌號_0
yytable[53]=0x00; //語音餐桌號_0
yytable[54]=0x44;
display();
delay_50ms(50000) ;
}break;
case 0xb7: Key_flag++;
yy25--;
yytable[25]=yy25; //? 語音播放顧客號000-1
jy=0x05^0x41^yy25;
yytable[26]=jy;
xs7--;
xstable[7]=xs7; //顯示屏顧客號000-1
display();
send_yytable();
delay_50ms(50000) ;
break;
}
}}
void write_12864com (uchar com)
{
rw=0;
rs=0;
delay_50us(1);
P0=com;
e=1;
delay_50us(10);
e=0;
delay_50us(2);
}
void write_12864dat (uchar dat)
{
rw=0;
rs=1;
delay_50us(1);
P0=dat;
e=1;
delay_50us(10);
e=0;
delay_50us(2);
}
void initial(void)
{ delay_50ms(2);
write_12864com(0x30);
delay_50us(4);
write_12864com(0x30);
delay_50us(4);
write_12864com(0x0c); //顯示開關(guān),光標,白底都開,00001111,0c 00001100光標和白底都關(guān)了
delay_50us(4);
write_12864com(0x01);//清屏
delay_50us(300);
write_12864com(0x06);//模式設(shè)置
delay_50us(10);
}
void display(void)
{
uchar i;
write_12864com(0x80);
delay_50us(1);
for(i=0;i<32;i++)
{
write_12864dat(xstable[i]);
delay_50us(1);
}}
/******************************************************************************
- 功能描述: 串口1初始化
- 注: 設(shè)置為9600波特率
******************************************************************************/
void Serial_init(void)
{
TMOD = 0x20; // 設(shè)置 T1 為波特率發(fā)生器
SCON = 0x50; // 0101,0000 8位數(shù)據(jù)位, 無奇偶校驗
PCON = 0x00; //PCON=0;
TH1=0xfd;//設(shè)置為9600波特率
TL1=0xfd;
TR1 = 1; //定時器1打開
REN = 1; //串口1接收使能
ES = 1; //串口1中斷使能
}
/*********************************************************************************
* 【函 數(shù) 名】: void send_cmd(uchar dat)
* 【功 能】: 串口發(fā)送數(shù)據(jù)命令
**********************************************************************************/
void send_cmd(uchar dat)
{
SBUF=dat; //發(fā)送指令到SBUF
while(!TI); //等待發(fā)送結(jié)束
TI=0; //清除結(jié)束標志,以便再發(fā)送數(shù)據(jù)
}
void send_yytable(void)
{ uchar a;
Delay_Ms(500);
a=yytable[0];
send_cmd(a);
a=yytable[1];
send_cmd(a);
a=yytable[2];
send_cmd(a);
a=yytable[3];
send_cmd(a);
a=yytable[4];
send_cmd(a);
a=yytable[5];
send_cmd(a);
a=yytable[6];
send_cmd(a);
Delay_Ms(800);
a=yytable[7];
send_cmd(a);
a=yytable[8];
send_cmd(a);
a=yytable[9];
send_cmd(a);
a=yytable[10];
send_cmd(a);
a=yytable[11];
send_cmd(a);
a=yytable[12];
send_cmd(a);
a=yytable[13];
send_cmd(a);
Delay_Ms(800);
a=yytable[14];
send_cmd(a);
a=yytable[15];
send_cmd(a);
a=yytable[16];
send_cmd(a);
a=yytable[17];
send_cmd(a);
a=yytable[18];
send_cmd(a);
a=yytable[19];
send_cmd(a);
a=yytable[20];
send_cmd(a);
Delay_Ms(800);
a=yytable[21];
send_cmd(a);
a=yytable[22];
send_cmd(a);
a=yytable[23];
send_cmd(a);
a=yytable[24];
send_cmd(a);
a=yytable[25];
send_cmd(a);
a=yytable[26];
send_cmd(a);
a=yytable[27];
send_cmd(a);
Delay_Ms(800);
a=yytable[28];
send_cmd(a);
a=yytable[29];
send_cmd(a);
a=yytable[30];
send_cmd(a);
a=yytable[31];
send_cmd(a);
a=yytable[32];
send_cmd(a);
a=yytable[33];
send_cmd(a);
a=yytable[34];
send_cmd(a);
Delay_Ms(1300);
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
語音播放系統(tǒng).rar
(7.31 MB, 下載次數(shù): 89)
2017-5-14 18:25 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
jxdianqi
時間:
2017-5-15 10:56
沙發(fā),下載學(xué)習(xí),謝謝樓主
作者:
fefen0
時間:
2017-5-16 17:12
如何給顧客編號呢。。。
作者:
值班室
時間:
2017-6-4 10:26
剛買了這樣的語音模塊,正好學(xué)習(xí),謝謝
作者:
luojunhaolq
時間:
2017-9-7 22:01
學(xué)習(xí)中!
作者:
晉梅
時間:
2018-1-13 19:25
學(xué)習(xí)下!
作者:
meung
時間:
2018-2-7 16:47
謝謝樓主!電路原理圖和pcb圖不知為何打開是一片空白。
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1