📄 main.c
字号:
#include <MSP430X12X.h>
#include "Init430.h"
#define T_PUD 5 /* Power Up Delay Time to wait ( miliseconds ) */
#define POWER_UP_CMD 0x20 //上电
#define POWER_DN_CMD 0x10 //下电
#define STRT_RECORD_CMD 0xb0 //开始录音
#define PLAY_CMD 0xf0 //开始播放
#define SET_PLAY 0xE000 //开始播放
#define STOP_PLAY 0x30 //停止当前操作
#define INIT_MSG_CUE_CMD 0xe8 //快进
#define STRT_MSG_CUE_CMD 0xf8 //
#define CLK4003_UP P2OUT |= BIT0
#define CLK4003_DOWN P2OUT &= ~BIT0
#define OUT4003_UP P2OUT |= BIT1
#define OUT4003_DOWN P2OUT &= ~BIT1
#define CS4003_UP P2OUT |= BIT3
#define CS4003_DOWN P2OUT &= ~BIT3
void write4003(uchar j);
void power4003(uchar sw);
void play4003(uint addr,uchar stp,uchar goon);
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗
_DINT(); // 关闭中断
init_clk();
P2DIR|=BIT0; //clk is out;
P2DIR|=BIT1; //clk is out;
P2DIR|=BIT3; //clk is out;
power4003(1);
play4003(0,0,1);
power4003(0);
while (1)
{
delay_ms(20);
}
}
void write4003(uchar j)
{
uchar i;
for(i=0;i<8;i++)
{
if(j&0x01)
OUT4003_UP;
else
OUT4003_DOWN;
CLK4003_UP;
CLK4003_DOWN;
j>>=1;
}
}
void power4003(uchar sw)
{
CS4003_DOWN;
// write4003(0);
if (sw!=0)
write4003(POWER_UP_CMD);
else
write4003(POWER_DN_CMD);
CS4003_UP;
delay_ms(T_PUD); //power delay
}
/**********************************************************************************************
原形:void PlayVoice(unsigned int addr,unsigned char stp,unsigned char goon)
功能:ISD4003播放驱动程序。
参数:addr 播放地址,stp=1停止播放,stp=0开始播放,goon=0表示从addr地址开始播放
goon=1表示从当前地址开始播放。
返回值:无。
***********************************************************************************************/
void play4003(uint addr,uchar stp,uchar goon)
{
unsigned char i;
CS4003_DOWN;
if(stp==0)
{
if(goon==0)//从addr地址开始播放
{
addr&=0x7ff;
addr|=SET_PLAY;
for(i=0;i<16;i++)
{
CLK4003_DOWN;
if(addr&0x01)
OUT4003_UP;
else
OUT4003_DOWN;
CLK4003_UP;
addr>>=1;
}
//SpiWrite(PLAY_CMD);
}
else
{ //从当前地址开始播放
write4003(PLAY_CMD);
}
}
else
{
write4003(STOP_PLAY);
}
CS4003_UP;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -