Em đang làm đề tài Voltmet ứng dụng 89C51 hiển thị lên form C#. Em đã làm phần đo điện áp rồi nhưng khi truyền lên win form thì kí tự bị lỗi sao ấy "/??/?/?? " như vậy đó. Em không tài nào sửa được. Mong pro nào biết chỉ dùm em về phần này tí. Hay có tài liệu gì cho em cũng được. Em cảm ơn nhiều!
tài liệu có liên quan đến C# nhận dữ liệu data từ 89c51 qua cổng rs232(COM)
Collapse
X
-
-
bạn có tài liệu cơ bản về c hay c# ko cÓ thể cho mình xin dc koTổng thống + điện = Ăn mày + điện = die => Tổng thống = ăn mày
Comment
-
Cái này trên mạng có nhiều lắm em.
Post lên đây cũng được tuy nhiên mấy tài liệu kia là bên diễn đàn khác, anh ngại ko dám post lên đây, sợ anh em nghĩ anh PA cho họ.
Em chỉ cần search trên mạng 1 cái là có liền, nó cũng ko quá khó khăn đâu em.
Nên bỏ hẳn ra 1 hoặc 2 hôm để học, anh nghĩ chắc chắn là được thôi.
Comment
-
Đây là code keil C
#include<reg51.h>
int a;
void ini() // Initialize Timer 1 for serial communication
{
TMOD=0x20; //Timer1, mode 2, baud rate 9600 bps
TH1=0XE6; /* 1200 bps for 12 MHz clock */
SCON=0x50;
TR1=1;
}
void transmit(unsigned int value) // Funtion to transmit serial data
{
SBUF=value;
while(TI==0);
TI=0;
}
void main()
{
while(1)
{
ini();
a=9;
transmit(a); //gui a=9 len C#
}
}
Comment
-
Đây là code C#
//-------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.IO.Ports;
using System.Xml;
namespace thu_nghiem
{
public partial class demo : Form
{
SerialPort P = new SerialPort(); // Khai báo 1 Object SerialPort mới.
string InputData = String.Empty; // Khai báo string buff dùng cho hiển thị dữ liệu sau này.
delegate void SetTextCallback(string text); // Khai bao delegate SetTextCallBack voi tham so string
public demo()
{
InitializeComponent();
string[] ports = SerialPort.GetPortNames();
// Thêm toàn bộ các COM đã tìm được vào combox cbCom
cbCom.Items.AddRange(ports); // Sử dụng AddRange thay vì dùng foreach
P.ReadTimeout = 500;
}
private void cbCom_SelectedIndexChanged(object sender, EventArgs e)
{
if (P.IsOpen)
{
P.Close(); // Nếu đang mở Port thì phải đóng lại
}
P.PortName = cbCom.SelectedItem.ToString(); // Gán PortName bằng COM đã chọ
}
private void thoat_Click(object sender, EventArgs e)
{
this.Close();
}
private void ketnoi_Click(object sender, EventArgs e)
{
try
{
/*P.BaudRate = 9600;
P.DataBits = 8;
P.Parity = Parity.None;
P.StopBits = StopBits.One;
P.Handshake = Handshake.None;
P.DtrEnable = true;*/
ngat.Visible = true;
ketnoi.Visible = false;
cbCom.Enabled = false;
// Hiện thị Status
P.Open();
status.Text = "Đang kết nối với cổng " + cbCom.SelectedItem.ToString() + ".";
status.ForeColor = Color.Black;
}
catch (Exception ex)
{
ketnoi.Visible = true;
ngat.Visible = false;
cbCom.Enabled = true;
MessageBox.Show("Không kết nối được.", "Thử lại", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void button1_Click(object sender, EventArgs e)
{
P.Close();
status.Text = "Đã Ngắt Kết Nối";
cbCom.Enabled = true;
ngat.Visible = false;
ketnoi.Visible = true;
}
private void status_Click(object sender, EventArgs e)
{
}
string data;
private void ok_Click(object sender, EventArgs e)
{
try
{
data = "";
data = P.ReadExisting();
kq.Text = data + "VAC";
}
catch (System.Exception ex)
{
MessageBox.Show("Không kết nối được.", "Thử lại", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}
Comment
-
Anh eKhanhHoa ah.
Em rất cần! Anh có thể gửi cho em qua mail là: mtuanlatoi@gmail.com được không anh. Cảm ơn anh nhiều.
Comment
-
Em rất cần! Anh có thể gửi cho em qua mail là: mtuanlatoi@gmail.com được không anh. Cảm ơn anh nhiều.Nguyên văn bởi eKhanhHoa Xem bài viếtCái này trên mạng có nhiều lắm em.
Post lên đây cũng được tuy nhiên mấy tài liệu kia là bên diễn đàn khác, anh ngại ko dám post lên đây, sợ anh em nghĩ anh PA cho họ.
Em chỉ cần search trên mạng 1 cái là có liền, nó cũng ko quá khó khăn đâu em.
Nên bỏ hẳn ra 1 hoặc 2 hôm để học, anh nghĩ chắc chắn là được thôi.
Comment
Bài viết mới nhất
Collapse
-
-
bởi bqvietĐám UPS cửa cuốn đời cổ vẫn chạy 1 biến áp sắt từ vừa để hạ áp điện lưới nạp bình điện, vừa để kích áp bình điện thành sóng vuông đầu ra đấy thôi. Kiểu tiết kiệm này đã có từ mấy chục năm nay. Sơ đồ đại loại như link
https://www.homemade-circuits.com/si...rchargerchang/...-
Channel: Nguồn!
06-09-2026, 16:49 -
-
bởi dinhthuong92Không biết nó thiết kế kiểu gì mà dùng chung được cuộn cảm L cho cả mạch Buck hạ áp để sạc pin và Boost nâng áp cho Led. Muốn vẽ mạch để xem mà nhiều linh kiện quá, e không kham nổi!
Bác nào có sơ đồ xin up lên cho mọi người tham khảo nhé!...-
Channel: Nguồn!
04-09-2026, 11:09 -
-
-
Trả lời cho TCL - Tập hợp các vấn đề về màn hình màu TCLbởi dtvankhoeBác nào có file rom này cho em xin em cảm ơn ạ TCL L43S6500 – TPD.RT2841.PB772
-
Channel: Điện tử truyền hình
30-08-2026, 21:08 -

Comment