找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
發表文章前請先閱讀相關版規尊貴會員無限看帖不用回覆認識好友、聊天,分享生活趣事
mega 無office偷拍母乳mggdoffice
[彩画堂]愛聖天使三救姻緣alice or靈異界限世幻想緣團寵農女

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

(4月新番)[繁]戰隊大

[繁]迷宮飯12~15-

[繁]戰隊大失格02-

(4月新番)[繁]夜櫻家

(4月新番)[繁]轉生為

[繁]格林童話變奏曲03
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 706|回復: 0
打印上一主題下一主題

[求助]編碼轉換問題[複製鏈接]

loves760617 該用戶已被刪除
跳轉到指定樓層
樓主
發表於 2009-10-29 04:31 PM|只看該作者|倒序瀏覽
以下是我用vb 2008 express寫RS232 接收程式,現在是可以讀到別的地方傳過

來的資料,但是讀取的是Unicode,我要將他轉成二進制,以數字顯示,卻一直都失敗,

我試過一些方法,一樣會在txtReceive顯示"~",想請問大家是否有其他方法嗎?  謝

謝   (紅色部分是編碼跟顯示部分)
  1. Imports System.IO.Ports
  2. Imports System.Text
  3. Public Class Form1
  4.     Dim RS232 As SerialPort
  5.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  6.         For Each sp As String In SerialPort.GetPortNames()
  7.             cmbCOM.Items.Add(sp)
  8.         Next
  9.         cmbCOM.Sorted = True
  10.         cmbCOM.SelectedIndex = 0
  11.         btnSend.Enabled = False
  12.     End Sub

  13.     Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStart.Click
  14.         Dim mBaudRate As Integer
  15.         Dim mParity As IO.Ports.Parity
  16.         Dim mDataBit As Integer
  17.         Dim mStopbit As IO.Ports.StopBits
  18.         Dim mPortName As String
  19.         mPortName = cmbCOM.SelectedItem.ToString
  20.         mBaudRate = 9600
  21.         mParity = Parity.None
  22.         mDataBit = 8
  23.         mStopbit = StopBits.One
  24.         RS232 = New IO.Ports.SerialPort(mPortName, mBaudRate, mParity, mDataBit, mStopbit)
  25.         RS232.Encoding = Encoding.Unicode
  26.         If Not RS232.IsOpen Then
  27.             RS232.Open()
  28.             btnSend.Enabled = True
  29.             Timer1.Interval = 100
  30.             Timer1.Enabled = True
  31.         Else
  32.             MsgBox("通訊埠已被開啟", MsgBoxStyle.Critical Or MsgBoxStyle.OkCancel)
  33.             End
  34.         End If
  35.     End Sub
  36.     Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click
  37.         If RS232 Is Nothing OrElse Not RS232.IsOpen Then
  38.             MsgBox("通訊埠尚未開啟", MsgBoxStyle.Critical Or MsgBoxStyle.OkCancel)
  39.         Else
  40.             btnSend.Enabled = False
  41.             Timer1.Enabled = False
  42.             RS232.Close()
  43.         End If
  44.     End Sub
  45.     Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  46.         Dim InString As String
  47.         Dim HE As String
  48.         InString = ""
  49.         Try
  50.             RS232.ReadTimeout = 1000
  51.             InString = RS232.ReadExisting()
  52.             HE = Val("&H RS232.ReadExisting()")
  53.             If InString.Length = 0 Then
  54.                 Exit Sub
  55.             Else
  56.                 txtReceive.Text += Hex(HE)
  57.             End If
  58.         Catch ex As Exception
  59.             MessageBox.Show("讀取錯誤:" + ex.ToString, "錯誤通知", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
  60.         End Try
  61.     End Sub
  62.     Private Sub btnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
  63.         RS232.Write(txtSend.Text)
  64.     End Sub
  65.     Private Sub btnEnd_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnd.Click
  66.         If Not RS232 Is Nothing Then
  67.             If RS232.IsOpen Then RS232.Close()
  68.         End If
  69.         End
  70.     End Sub
  71. End Class
複製代碼
...
瀏覽完整內容,請先 註冊登入會員
分享分享0收藏收藏0支持支持0
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部