樹莓派外設開發接口文檔參考
https://www.cnblogs.com/lulipro/p/5992172.html
樹莓派和語音子產品的接線示意圖
代碼如下:
#include <stdio.h>
#include <unistd.h>
#include <string.h>
int main ()
{
int fd;
char cmd[128] = {'\0'};
int nread;
/*初始化樹莓派*/
if(wiringPiSetup() == -1)
{
printf("初始化失敗!\n");
return -1;
}
/*linux一切皆檔案,打開序列槽檔案*/
fd = serialOpen("/dev/ttyAMA0");
while(1)
{
nread = read(fd,cmd,sizeof(cmd));
if(strstr(cmd,"open") != NULL)
{
printf("open light\n");
}
if(strstr(cmd,"close") != NULL)
{
printf("close light");
}
/*清空數組*/
memset(cmd,'\0',sizeof(cmd));
}
}
思路:
語音子產品會将識别的結果列印到序列槽檔案,樹莓派通過serialOpen打開序列槽檔案。使用read函數讀取識别的結果,然後通過判斷去執行不同的分支。