我们这么来说吧!上面有一句语“每发一个信号前必须有一个同步头”。
那么好,他的协议方式说明白了,同时也说明他是写操作,后面(5)又说先接收数据最高位,
那就是说写的时候数据要右移。因此,可以写2个函数
void init_music(void)
{
写同歩头时序...................
}
void write byte(u8 dat)
{
u8 i, temp;
init_music();
for(i=0; i <= 8; i++)
{
temp = dat & 0x01;
dat = dat>>1;
if(...........)
{
1的时序...........
}
else
{
0的时序...........
}
}
}
后面你要写的代码放这里面调用就OK了.比如用写0x50, write byte(0x50),就能执行你相对应的命令了
|