voice.c

来自「LPC2132和周立功语音芯片ISD1420设计程序」· C语言 代码 · 共 151 行

C
151
字号
#include "..\src\config.h"

/****************************************************************************
* 名称:voice_pin_set()
* 功能:语音控制 引脚配置
* 返回值:无
****************************************************************************/
void voice_pin_set()
{
	PINSEL0 &= 0xffffffcf;						 // GPIO_P0.4
	PINSEL1 &= 0x3fcfc3ff;						 // GPIO_P0.31.26.22.21
    PINSEL2 &= 0xfffffff3;						 // GPIO_P1.

	IO0DIR |= (A0 | A3 | A6 | A7 | nPLAYL);      // 输出
	IO1DIR |= (A1 | A2 | A4 | A5 | nREC);
	
	IO0CLR = A0 | A3 | A6 | A7;
	IO1CLR = A1 | A2 | A4 | A5;

	IO0SET = nPLAYL;
	IO1SET = nREC;
}

/****************************************************************************
* 名称:set_voice_address()
* 功能:语音控制 寻址
* 返回值:无
****************************************************************************/
void set_voice_address(uint8 address)
{
	if(address & 0x01)
	{
		IO0SET = A0;
	}
	else
	{
		IO0CLR = A0;
	}

	if(address & 0x02)
	{
		IO1SET = A1;
	}
	else
	{
		IO1CLR = A1;
	}

	if(address & 0x04)
	{
		IO1SET = A2;
	}
	else
	{
		IO1CLR = A2;
	}

	if(address & 0x08)
	{
		IO0SET = A3;
	}
	else
	{
		IO0CLR = A3;
	}

	if(address & 0x10)
	{
		IO1SET = A4;
	}
	else
	{
		IO1CLR = A4;
	}

	if(address & 0x20)
	{
		IO1SET = A5;
	}
	else
	{
		IO1CLR = A5;
	}

	if(address & 0x40)
	{
		IO0SET = A6;
	}
	else
	{
		IO0CLR = A6;
	}

	if(address & 0x80)
	{
		IO0SET = A7;
	}
	else
	{
		IO0CLR = A7;
	}
}

/****************************************************************************
* 名称:set_voice_nplayl()
* 功能:语音控制 电平触发播放键
* 返回值:无
****************************************************************************/
void set_voice_play(uint8 command)
{
	if(command)
	{
		IO0SET = nPLAYL;
	}
	else
	{
		IO0CLR = nPLAYL;
	}
}

/****************************************************************************
* 名称:set_voice_nplayl()
* 功能:语音控制 录音键
* 返回值:无
****************************************************************************/
void set_voice_record(uint8 command)
{
	if(command)
	{
		IO1SET = nREC;
	}
	else
	{
		IO1CLR = nREC;
	}
}














⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?