Пример #1
0
        public bool tryBaudSwitch(int brd, int baud)
        {
            int iBaudRate = m_CommELM.getBaudRate();

            if (m_CommELM.Online)
            {
                m_CommELM.Close();
            }

            m_CommELM.setRxTerminator(CommBase.ASCII.CR);
            if (m_CommELM.Open())
            {
                if (confirmAT("ATBRD" + brd.ToString(), 3))
                {
                    m_CommELM.Close();
                    m_CommELM.setBaudRate(baud);
                    if (!m_CommELM.Open())
                    {
                        return(false);
                    }

                    if (m_CommELM.getResponse("").IndexOf("ELM327") >= 0)
                    {
                        m_CommELM.Close();
                        m_CommELM.setRxTerminator((CommBase.ASCII) 0x3e);
                        if (!m_CommELM.Open())
                        {
                            return(false);
                        }
                        if (confirmAT("\r", 1))
                        {
                            return(true);
                        }
                    }
                }
                if (m_CommELM.Online)
                {
                    m_CommELM.Close();
                }

                m_CommELM.setRxTerminator((CommBase.ASCII) 0x3e);
                m_CommELM.setBaudRate(iBaudRate);
                m_CommELM.Open();
            }
            return(false);
        }