標(biāo)題:
基于51單片機(jī)的MY1690語(yǔ)音模塊串口驅(qū)動(dòng)程序
[打印本頁(yè)]
作者:
51黑電子迷
時(shí)間:
2017-5-15 01:04
標(biāo)題:
基于51單片機(jī)的MY1690語(yǔ)音模塊串口驅(qū)動(dòng)程序
/*********************************************************************************
* 【作 者】: 深圳邁優(yōu)科技有限公司
* 【Q Q】: 854544856
* 【函數(shù)功能】: 基于51單片機(jī)的語(yǔ)音模塊串口驅(qū)動(dòng)程序
**********************************************************************************/
#include<reg52.h> //包括一個(gè)52標(biāo)準(zhǔn)內(nèi)核的頭文件
#define uchar unsigned char //定義一下方便后面使用
#define uint unsigned int //定義一下方便后面使用
#define ulong unsigned long //定義一下方便后面使用
#define COMM_BAUD_RATE 9600 //串口波特率
#define OSC_FREQ 11059200 //運(yùn)行晶振:11.05926MHZ
void Delay_Ms(int z)
{
int x=0 , y=0;
for(x=110 ; x>0 ;x--)
for(y=z; y>0;y-- );
}
/******************************************************************************
- 功能描述: 串口1初始化
- 注: 設(shè)置為9600波特率
******************************************************************************/
void Serial_init(void)
{
TMOD = 0x20; // 設(shè)置 T1 為波特率發(fā)生器
SCON = 0x50; // 0101,0000 8位數(shù)據(jù)位, 無(wú)奇偶校驗(yàn)
PCON = 0x00; //PCON=0;
TH1=256-(OSC_FREQ/COMM_BAUD_RATE/32/12);//設(shè)置為9600波特率
TL1=256-(OSC_FREQ/COMM_BAUD_RATE/32/12);
TR1 = 1; //定時(shí)器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é)束標(biāo)志,以便再發(fā)送數(shù)據(jù)
}
/*********************************************************************************
* 【函 數(shù) 名】: void send_3dat_cmd(uchar cmd,uchar dat)
* 【功 能】: 除了起始和結(jié)束標(biāo)志外,發(fā)三位長(zhǎng)度的數(shù)據(jù)
*send_3dat_cmd(0x11,0x12); // 播放
*send_3dat_cmd(0x12,0x11); //暫停
* send_3dat_cmd(0x13,0x10); // 下一曲
* send_3dat_cmd(0x14,0x17); //上一曲
*send_3dat_cmd(0x15,0x16); //音量加
*send_3dat_cmd(0x16,0x15); //音量減
* send_3dat_cmd(0x1A,0x19); //快進(jìn)
*send_3dat_cmd(0x1B,0x18); //快退
* send_3dat_cmd(0x1C,0x1F); //播放/暫停
**********************************************************************************/
void send_3dat_cmd(uchar cmd,uchar jy)
{
send_cmd(0x7E); //發(fā)送"開始命令"到SBUF
send_cmd(0x03); //發(fā)送"命令長(zhǎng)度"到SBUF
send_cmd(cmd); //發(fā)送"命令"到SBUF
send_cmd(jy); // 發(fā)送校驗(yàn)碼到SBUF
send_cmd(0xEF); //發(fā)送"結(jié)束指令"到SBUF
}
/*********************************************************************************
* 【函 數(shù) 名】: void send_4dat_cmd(uchar cmd,uchar cs,uchar jy )
* 【功 能】: 除了起始和結(jié)束標(biāo)志外,發(fā)四位長(zhǎng)度的數(shù)據(jù)
* send_4dat_cmd(0x32,0x00,0x36 ) ; //設(shè)置EQ
* send_4dat_cmd(0x34,0x01,0x31 ) ; //文件切換
* send_4dat_cmd(0x35,0x01,0x30 ) ; //設(shè)備切換
**********************************************************************************/
void send_4dat_cmd(uchar cmd,uchar cs,uchar jy )
{
send_cmd(0x7E); //發(fā)送"開始命令"到SBUF
send_cmd(0x04); //發(fā)送"命令長(zhǎng)度"到SBUF
send_cmd(cmd); //發(fā)送"插播指令"到SBUF
send_cmd(cs); // 發(fā)送參數(shù) 到SBUF
send_cmd(jy); // 發(fā)送校驗(yàn)碼到SBUF
send_cmd(0xEF); //發(fā)送"結(jié)束指令"到SBUF
}
/*********************************************************************************
* 【函 數(shù) 名】: void send_5dat_cmd(uchar cmd,uchar cs,uchar gq,uchar jy )
* 【功 能】: 除了起始和結(jié)束標(biāo)志外,發(fā)四位長(zhǎng)度的數(shù)據(jù)
* send_5dat_cmd(0x43,0x00,0x03,0x45); //插播功能
* send_5dat_cmd(0x44,0x01,0x06,0x46) ; //插播指定文件夾的歌曲播放,本指令為文件夾01的第6首歌曲
**********************************************************************************/
void send_5dat_cmd(uchar cmd,uchar cs,uchar gq,uchar jy )
{
send_cmd(0x7E); //發(fā)送"開始命令"到SBUF
send_cmd(0x05); //發(fā)送"命令長(zhǎng)度"到SBUF
send_cmd(cmd); //發(fā)送"插播指令"到SBUF
send_cmd(cs); // 發(fā)送參數(shù) 到SBUF
send_cmd(gq); //發(fā)送第幾首歌曲到SBUF
send_cmd(jy); // 發(fā)送校驗(yàn)碼到SBUF
send_cmd(0xEF); //發(fā)送"結(jié)束指令"到SBUF
}
void main()
{
while(1)
{
Serial_init() ;//串口寄存器的初始化設(shè)置
send_3dat_cmd(0x11,0x12); // 播放
Delay_Ms(3800) ;
……………………
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
下載地址:
http://www.torrancerestoration.com/bbs/dpj-84774-1.html
作者:
fefen0
時(shí)間:
2017-5-16 17:11
樓主多發(fā)精品。。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1