C# 2, 10, 16 dan 16 dan kode ASCII-nya --------//Konversi berbagai jenis karakter di C# untuk komunikasi port serial------------
Pemahaman panjang karakter string s = "Saya seorang prajurit 2"; int len = s.Panjang; 6 karakter byte[] sarr = System.Text.Encoding.Default.GetBytes(s); len = sarr. Panjang; 11 byte
Tidak masuk akal untuk mengonversi desimal ke string, dan harus dikonversi ke kode ASCII yang sesuai int t1 = 81; string s1 = t1. ToString(); Konversi desimal ini sesuai dengan karakter ASCII agar masuk akal. s1 = ((char)t1). ToString();
Heksadesimal ke string: Ini tidak masuk akal. Itu tostring. int intAB = 0x16; s1 = intAB.ToString(); Karakter heksadesimal ke ASCII: byte babb = 0x45; String Ass = ((char)babb). ToString();
String ASCII ke angka desimal string tr = "2Ab Liu"; string d = ""; untuk (int i = 0; Saya < tr. Panjang; i++) { int ii = (int)Convert.ToChar(tr. Substring(i, 1)); d = d +" "+ ii.ToString(); }
String ASCII ke bilangan heksadesimal string s2 = "2Ab Liu"; byte[] ba = System.Text.ASCIIEncoding.Default.GetBytes(s2); StringBuilder sb = StringBuilder(); baru foreach (byte b dalam ba) { sb. Lampir(b.ToString("x") + " "); }
Heksadesimal ke desimal int intA = 0x16; Saat mendefinisikan, itu harus 0x string strA = "16"; Senar bisa tanpa int intA1 = Konversi.KepadaInt32(intA); int intA2 = Konversi.KepadaInt32(strA, 16);
10 hingga 16 strA = Konversi.KeString(intA2, 16);
Desimal ke biner, heksadesimal serupa int int10 = 10; string str2 = Konversi.KeString(int10,2);
Biner ke desimal int10 = Konversi.KepadaInt32(str2,2);
//-------------------------------------------------------------------------------
Bagaimana c# serialport menerima satu set angka heksadesimal Bagaimana C# SerialPort menerima satu set angka heksadesimal, dan bagaimana program harus ditulis? Jawaban terbaik System.IO.Ports.SerialPort sp = System.IO.Ports.SerialPort baru("COM1"); ukuran buffer int = 6; Ukuran bilangan heksadesimal (katakanlah 6Byte) Byte[] buffer = Byte baru[buffersize]; Membuat buffer sp. Baca (buffer, 0, ukuran buffer); Baca dari COM1
Kumpulan bilangan heksadesimal ini diproses
Port serial C# mengirim data Poin hadiah: 5 - Waktu resolusi: 2009-10-19 21:15 Saya ingin mengirim perintah hex ke port serial, string perintahnya adalah: "00 00 00 1B 54 59 55 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF E1 00 05 00 0D 0A" Bagaimana cara mengonversi string di atas secara numerik sehingga port serial komputer tahu bahwa string yang saya kirim adalah heksadesimal? Suplemen Pertanyaan: Siapa yang memiliki kode sampel seperti itu, tolong bantu saya, saya produsen perangkat keras, tidak terbiasa dengan perangkat lunak, saya harap master dapat memberikan kode terperinci, terima kasih! Penanya: daishuanqing - Magang Level 1 Jawaban terbaik Tambahkan referensi: Microsoft.VisualBasic (adalah kode C#, tetapi perlu direferensikan.) )
Melintasi SerialPortNames dengan yang berikut ini untuk mendapatkan semua port serial Microsoft.VisualBasic.Devices.Computer pc = baru Microsoft.VisualBasic.Devices.Computer(); foreach (string s di pc. Ports.SerialPortNames)
{ this.comboBox1.Items.Add(s);
}
Kemudian nama port serial comName yang ditampilkan digunakan untuk mendapatkan objek operasi. Anda dapat membuka port serial ini:
System.IO.Ports.SerialPort com = System.IO.Ports.SerialPort baru(comName); com. Buka ();
Data kemudian dapat ditulis ke port serial
Mengirim data ke port serial: com. WriteLine(this.textBox1.Text); Array byte juga dapat ditulis com. Tulis(bArray,0,5); Ini mengacu pada 5 byte mulai dari 0 yang menulis array byte bArray
Data juga dapat diterima: com. Garis Baca() Dimungkinkan juga untuk membaca byte com. BacaByte();
Akhirnya, ditutup: com. Tutup();
Juga, ubah string heksadesimal menjadi byte byte b = Konversi.KeByte("1A",16); Port serial C# mengirim data Poin hadiah: 5 - Waktu resolusi: 2009-10-19 21:15 Saya ingin mengirim perintah hex ke port serial, string perintahnya adalah: "00 00 00 1B 54 59 55 54 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF E1 00 05 00 0D 0A" Bagaimana cara mengonversi string di atas secara numerik sehingga port serial komputer tahu bahwa string yang saya kirim adalah heksadesimal? Suplemen Pertanyaan: Siapa yang memiliki kode sampel seperti itu, tolong bantu saya, saya produsen perangkat keras, tidak terbiasa dengan perangkat lunak, saya harap master dapat memberikan kode terperinci, terima kasih! Penanya: daishuanqing - Magang Level 1 Jawaban terbaik Tambahkan referensi: Microsoft.VisualBasic (adalah kode C#, tetapi perlu direferensikan.) )
Melintasi SerialPortNames dengan yang berikut ini untuk mendapatkan semua port serial Microsoft.VisualBasic.Devices.Computer pc = baru Microsoft.VisualBasic.Devices.Computer(); foreach (string s di pc. Ports.SerialPortNames)
{ this.comboBox1.Items.Add(s);
}
Kemudian nama port serial comName yang ditampilkan digunakan untuk mendapatkan objek operasi. Anda dapat membuka port serial ini:
System.IO.Ports.SerialPort com = System.IO.Ports.SerialPort baru(comName); com. Buka ();
Data kemudian dapat ditulis ke port serial
Mengirim data ke port serial: com. WriteLine(this.textBox1.Text); Array byte juga dapat ditulis com. Tulis(bArray,0,5); Ini mengacu pada 5 byte mulai dari 0 yang menulis array byte bArray
Data juga dapat diterima: com. Garis Baca() Dimungkinkan juga untuk membaca byte com. BacaByte();
Akhirnya, ditutup: com. Tutup();
Juga, ubah string heksadesimal menjadi byte byte b = Konversi.KeByte("1A",16); |