基于K9F6408U0A和SPDS202A的數(shù)碼錄音系統(tǒng)
TADD7~TADD0為8位數(shù)據(jù)線。它在工作時(shí),主控制器的SPDS202A發(fā)送三個(gè)字節(jié)的數(shù)據(jù),其中,第一個(gè)字節(jié)總是0FFh,第二個(gè)字節(jié)為命令碼低字節(jié),第三個(gè)字節(jié)命令碼高字節(jié);然后再由主控制器接收從SPDS202A返回的兩個(gè)字節(jié)的數(shù)據(jù)。二者之間的通信程序如下(用C51編寫):
Void Mcu_202_Comm(void) /*MUC和SPDS202A通信程序*/
{via=0xFF; /*第一字節(jié)送0FFh*/
SendOneData( ); /*調(diào)用發(fā)送一字節(jié)數(shù)據(jù)子程序*/
Via=CMDL; /*第二字節(jié)送命令碼低字節(jié)*/
SendOneData( );
Via_CMDH; /*第三字節(jié)送命令碼高字節(jié)*/
SendOneData( );
ECHOL=ReadOneData( ); /*讀返回?cái)?shù)據(jù)*/
ECHOH=ReadOneData( );
}
下面以錄音功能的實(shí)現(xiàn)程序?yàn)槔?,可以很清楚地說明系統(tǒng)是如何工作的。
Void Record(void)
{CMDL=0x00; /*發(fā)送錄音命令碼*/
CMDH=0x10;
Mcu_202_Comm( );
If(Err=1) /*如果發(fā)生錯(cuò)誤,則返回*/
{Err=0;
return;
}
}
可以看出,系統(tǒng)是通過主控制器向SPDS202A發(fā)送一系列控制命令碼來實(shí)現(xiàn)其功能的。
評(píng)論