--- trunk/H7 Server/H7 ServerDlg.cpp 2007/02/06 14:01:59 63 +++ trunk/H7 Server/H7 ServerDlg.cpp 2007/02/06 14:19:39 64 @@ -166,7 +166,7 @@ } m_Restart.EnableWindow(false); m_Stop.EnableWindow(false); - m_BaudRate.EnableWindow(false); + //m_BaudRate.EnableWindow(false); m_First = true; /**********************************************************************/ return TRUE; // return TRUE unless you set the focus to a control @@ -229,14 +229,14 @@ void CH7ServerDlg::OnBnClickedStart() { // Add's user defined Baud-Rate to regedit before the server start. - CRegKey reg; - CString Baud = "9600"; +// CRegKey reg; +// CString Baud = "9600"; // m_BaudRate.GetWindowText(Baud); - reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); - reg.SetDWORDValue("BaudRate", atoi(Baud) ); +// reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); +// reg.SetDWORDValue("BaudRate", atoi(Baud) ); - StartTcp(); +// StartTcp(); StartSerial(); m_Stop.EnableWindow(true); m_Restart.EnableWindow(true); @@ -281,69 +281,69 @@ int CH7ServerDlg::StartSerial(void) { + int Baud; + int dBaud; CString SerialPort; - unsigned long size = 6; - unsigned long Baud; - - CRegKey reg; - - reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); - reg.QueryDWORDValue("BaudRate", Baud); + Baud = m_BaudRate.GetCurSel(); m_Serial.GetWindowText(SerialPort); -// Starter Serial forbindelsen, hvis den ikke allerede er startet. - if( m_First == 1 ){ - Baud = 9600; - } - else - { - int selected = m_BaudRate.GetCurSel(); - try - { - H7Serial.writeTarget(10,selected); - } - catch (std::exception e) - { - MessageBox("PIC could not use selected baudrate"); - return 0; - - } - switch (selected) + switch (Baud) { case 0: - Baud = 1200; + dBaud = 1200; break; case 1: - Baud = 2400; + dBaud = 2400; break; case 2: - Baud = 4800; + dBaud = 4800; break; case 3: - Baud = 9600;; + dBaud = 9600; break; case 4: - Baud = 19200; + dBaud = 19200; break; default: //this should not be possible, but ... - Baud = 9600; + dBaud = 9600; break; } + + if( H7Serial.isOpen() ){ + try + { + H7Serial.writeTarget(10, Baud); + } + catch (std::exception e) + { + MessageBox( "Pic could not use selected baud rate." ); + return 0; + } H7Serial.close(); + H7Serial.open( SerialPort, dBaud ); + } + else { + H7Serial.open( SerialPort, dBaud ); } - if (!H7Serial.isOpen()) - H7Serial.open( SerialPort,Baud); - - - m_First = false; -// Nulstiller LED's - H7Serial.writeTarget(LED3,OFF); - H7Serial.writeTarget(LED4,OFF); - H7Serial.writeTarget(LED5,OFF); - return 0; + Sleep(50); + + + try { + int pot = H7Serial.readTarget(5); + CString debug; + debug.Format("%d", pot); + MessageBox(debug); + } + catch (...) + { + MessageBox("Major fuck-up"); + } + + +return 0; } void CH7ServerDlg::UpdateClient(TcpClientClass* caller)