#include <reg51.h>
sbit K1=P0^5;
sbit K2=P0^6;
sbit O1=P0^7; //语音接口
void delay1ms(int x)
{
int j,k;
for(j=0;j<x;j++)
for(k=0;k<120;k++);
}
/*void delay(int x)
{
int i;
for(i=0;i<x;i++);
} */
void pm50(unsigned char dd) // 80H-FFH 128段
{
char i;
while(O1);
K2=1;
K1=0;
delay1ms(50);
K1=1 ;
delay1ms(10);
for(i=0;i<8;i++)
{
K2=0;
K1=(dd&0x01);
dd=dd>>1;
delay1ms(10);
K2=1;
delay1ms(10) ;
}
K1=1 ;
}
void main()
{ int i;
pm50(0x80+1);
while(1);
}
本文介绍了一个基于51单片机的简单程序,该程序通过特定的接口实现与外部设备的通信来控制语音播放。程序使用了sbit定义了三个特殊功能寄存器位来操作P0口的第5、6、7位,并定义了一个延时函数和一个用于发送数据到语音接口的函数。
1万+

被折叠的 条评论
为什么被折叠?



