串口通信及红外线通信代码

  • 名称:串口通信及红外线通信代码
  • 类型:单片机学习
  • 授权方式:免费版
  • 更新时间:09-10 23:00:35
  • 下载要求:无需注册
  • 下载次数:6927
  • 语言简体中文
  • 大小:2.19 MB
  • 推荐度:3 星级
《串口通信及红外线通信代码》简介

标签:单片机开发,单片机原理,
串口通信及红外线通信代码5Chapter,SH3Dbg
// CScanDlg message handlers
 
 BOOL CScanDlg::OnInitDialog()
 {
 CDialog::OnInitDialog();
 
 // Set the icon for this dialog. The framework does this automatically
 // when the application's main window is not a dialog
 SetIcon(m_hIcon, TRUE); // Set big icon
 SetIcon(m_hIcon, FALSE); // Set small icon
 
 CenterWindow(GetDesktopWindow()); // center to the hpc screen
 
 // TODO: Add extra initialization here
 
 return TRUE; // return TRUE unless you set the focus to a control
 }
 
 
 
 void CScanDlg::OnButtonRead()
 {
 UpdateData(TRUE);
 
 HANDLE hReadThread;
 DWORD dwThreadID;
 
 // 创建一个读端口线程.
 if (hReadThread = CreateThread (NULL,0,(LPTHREAD_START_ROUTINE)PortReadThread, this, 0, &dwThreadID)) PCB下载站
 {
 CloseHandle (hReadThread);
 }
 else
 {
 ::MessageBox (NULL, _T("不能创建一个读端口线程"), _T("Error"), MB_OK);
 }
 
 UpdateData(FALSE);
 }
 
 void CScanDlg::OnButtonSend()
 {
 UpdateData(TRUE);
 
 HANDLE hReadThread;
 DWORD dwThreadID;
 
 // 创建一个读端口线程.
 if (hReadThread = CreateThread (NULL,0,(LPTHREAD_START_ROUTINE)PortSendThread, this, 0, &dwThreadID))
 {
 CloseHandle (hReadThread);
 }
 else
 {
 ::MessageBox (NULL, _T("不能创建一个写端口线程"), _T("Error"), MB_OK);
 }
 
 UpdateData(FALSE);
 }
 
 void PortReadThread(CScanDlg *dlg)
 {
 dlg->GetDlgItem(IDC_BUTTON_READ)->EnableWindow(FALSE); 字串6
 dlg->GetDlgItem(IDC_BUTTON_SEND)->EnableWindow(FALSE);
 if (Serial.Open(dlg->m_COM+1,19200) )//打开端口
 {
 char data[1024];
 #ifdef _UNICODE
 Serial.ReadData(data);
 USES_CONVERSION;
 dlg->m_szContent = A2W(data);
 #else
 Serial.ReadData(data);
 dlg->m_szContent = data;
 #endif
 Serial.PortClose();
 }
 else
 {
 AfxMessageBox(_T("Open Port error."));
 }
 
 dlg->GetDlgItem(IDC_BUTTON_READ)->EnableWindow(TRUE);
 dlg->GetDlgItem(IDC_BUTTON_SEND)->EnableWindow(TRUE);
 dlg->GetDlgItem(IDC_EDIT_CONTENT)->SetWindowText(dlg->m_szContent);
 }
 
 void PortSendThread(CScanDlg *dlg)
 {
 dlg->GetDlgItem(IDC_BUTTON_READ)->EnableWindow(FALSE);
 dlg->GetDlgItem(IDC_BUTTON_SEND)->EnableWindow(FALSE); 字串7
 if (Serial.Open(dlg->m_COM+1,19200) )//打开端口
 {
 #ifdef _UNICODE
 USES_CONVERSION;
 Serial.SendData(W2A(dlg->m_szContent),strlen(W2A(dlg->m_szContent)));
 #else
 Serial.SendData((char*)(LPCTSTR)dlg->m_szContent,strlen((char*)(LPCTSTR)dlg->m_szContent));
 #endif
 Serial.PortClose();
 }
 else
 {
 AfxMessageBox(_T("Open Port error."));
 }
 
 dlg->GetDlgItem(IDC_BUTTON_READ)->EnableWindow(TRUE);
 dlg->GetDlgItem(IDC_BUTTON_SEND)->EnableWindow(TRUE);
 }, 大小:2.19 MB
Tag:单片机学习单片机开发,单片机原理单片机学习

《串口通信及红外线通信代码》相关下载