voice.c
来自「使用AT89S52单片机」· C语言 代码 · 共 35 行
C
35 行
#include "voice.h" //修改该文件,以适合单片机环境
//延时函数
void delay50us(unsigned int t) //约50uS
{
unsigned char j;
for(;t>0;t--)
for(j=39;j>0;j--);
}
//发送8位语音地址数据,由低位到高位,推荐1KHZ
void send(unsigned char B_Data)
{
unsigned char i;
for(i=0;i<8;i++)
{
K2_CLK=0;
K1_data=B_Data&0x01;
delay50us(10); //可调短
K2_CLK=1;
delay50us(10); //可调短
B_Data>>=1;
}
K1_data=K2_CLK=1;
while(O1_BUSY==1); //判断O1是否忙
}
void setPM50(void)
{
while(O1_BUSY==1); //判断O1是否忙
K1_data=0; //K1先送>40mS的低电平
delay50us(1000);
K1_data=1;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?