我們這么來說吧!上面有一句語“每發一個信號前必須有一個同步頭”。
那么好,他的協議方式說明白了,同時也說明他是寫操作,后面(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),就能執行你相對應的命令了
|