標題: 請問STC12C5A60S2單片機的串口2怎么用于連接syn7318語音模塊啊? [打印本頁]

作者: 雨晨    時間: 2018-8-6 21:22
標題: 請問STC12C5A60S2單片機的串口2怎么用于連接syn7318語音模塊啊?
試了串口2用不了。。。。。。。有大神能貼個程序嗎!
void UartInit(void)  //115200bps@11.0592MHz
{
AUXR &= 0xF7;  //??????
S2CON = 0x50;  //8???,?????
AUXR |= 0x04;  //???????????Fosc,?1T
BRT = 0xFD;  //?????????????
AUXR |= 0x10;  //??????????
}
void UART_Put_Char(uchar txd)
{
S2BUF = txd;
while(!TI);   //·¢ËͽáÊøÊ± TI = 1;  µÈ´ýTI = 0£»¿ªÊ¼·¢ËÍÊý¾Ý
TI=0;
}
void UART_Put_String(uchar* Pst,uint Length)
{
uint i;
for(i = 0; i < Length; i++)
{
  S2BUF = Pst[i];
  while(!TI);   //·&cent;&Euml;&Iacute;&frac12;á&Ecirc;&oslash;&Ecirc;± TI = 1;  &micro;&Egrave;&acute;&yacute;TI = 0&pound;&raquo;&iquest;&ordf;&Ecirc;&frac14;·&cent;&Euml;&Iacute;&Ecirc;&yacute;&frac34;&Yacute;
    TI=0;
}
}
uchar UART_Get_char()
{
while(!RI);  //S2RI = 1;&frac12;&Oacute;&Ecirc;&Otilde;&frac12;á&Ecirc;&oslash;
RI=0;
return(S2BUF);
}
void UART_Get_String(unsigned char *Pst,unsigned char Length)
{
  unsigned char i;
  for(i=0;i<Length;i++)
  {
     Pst[i] = UART_Get_char();
  }
}



作者: devcang    時間: 2018-8-7 00:18
驅(qū)動起來之后,就是一般的串口。。。。根據(jù)那個語音模塊通訊,發(fā)送、接收命令和內(nèi)容
作者: 雨晨    時間: 2018-8-7 09:38
怎么使用串口2��?

作者: HUA1314HL    時間: 2018-12-5 19:12
雨晨 發(fā)表于 2018-8-7 09:38
怎么使用串口2��?

你怎么解決的?
作者: yaoji123    時間: 2018-12-6 19:25
while(!RI);  //S2RI = 1;&frac12;&Oacute;&Ecirc;&Otilde;&frac12;á&Ecirc;&oslash;
RI=0;有問題,
應 if(S2CON&0x01)        //判斷S2CON的最后一位是否為1,如果是1就說明是接收中斷,如果是0就表示是發(fā)送中斷。
                         //注意:串口中斷是接收數(shù)據(jù)和發(fā)送數(shù)據(jù)都能產(chǎn)生的。
        {
         S2CON  =0x50;  //清零標志位,注意S2CON寄存器的地址為0x9b 不能被8整除,所以只能字節(jié)尋址
         buf2=S2BUF;  //將S2BUF的數(shù)據(jù)賦值給




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1