51单片机与上座机通信,使用C#语言
51单片机与上位机通信,使用C#语言
我用c#编写了一个小程序,想让它与单片机通信,并把单片机键盘扫描的键值通过串口传给上位机,发1时led1灯亮,发0时灯灭,但是我发出去1时灯没有反应,也接受不到键值;当我把串口的2,3脚相连是,发送数据又可以接到,这是为什么呀?那位朋友可以指点一下,这是代码
private void Form1_Load(object sender, EventArgs e)
{
int i = 0;
string[] portname = SerialPort.GetPortNames();
foreach (string port in portname)
{
CuankoucomboBox.Items.Add(port);
i++;
}
if (i > 0)
{
CuankoucomboBox.SelectedIndex = 0;
}
BotecomboBox.SelectedIndex = BotecomboBox.Items.IndexOf("9600");//波特率设为9600
Openbutton.Text = "打开串口";
sendbutton.Enabled = false;
serialPort1.Close();
}
private void Openbutton_Click(object sender, EventArgs e)
{
if (Openbutton.Text == "打开串口")
{
try
{
Openbutton.Text = "关闭串口";
sendbutton.Enabled = true;
serialPort1.PortName = CuankoucomboBox.SelectedItem.ToString();
serialPort1.BaudRate = Convert.ToInt32(BotecomboBox.SelectedItem);//设置波特率和把串口名字赋给serailport控件
serialPort1.DataBits = 8;//传输数据的长度
serialPort1.StopBits = StopBits.One;//使用停止位为1位
serialPort1.Parity = Parity.None;//不使用奇偶校验位
我用c#编写了一个小程序,想让它与单片机通信,并把单片机键盘扫描的键值通过串口传给上位机,发1时led1灯亮,发0时灯灭,但是我发出去1时灯没有反应,也接受不到键值;当我把串口的2,3脚相连是,发送数据又可以接到,这是为什么呀?那位朋友可以指点一下,这是代码
private void Form1_Load(object sender, EventArgs e)
{
int i = 0;
string[] portname = SerialPort.GetPortNames();
foreach (string port in portname)
{
CuankoucomboBox.Items.Add(port);
i++;
}
if (i > 0)
{
CuankoucomboBox.SelectedIndex = 0;
}
BotecomboBox.SelectedIndex = BotecomboBox.Items.IndexOf("9600");//波特率设为9600
Openbutton.Text = "打开串口";
sendbutton.Enabled = false;
serialPort1.Close();
}
private void Openbutton_Click(object sender, EventArgs e)
{
if (Openbutton.Text == "打开串口")
{
try
{
Openbutton.Text = "关闭串口";
sendbutton.Enabled = true;
serialPort1.PortName = CuankoucomboBox.SelectedItem.ToString();
serialPort1.BaudRate = Convert.ToInt32(BotecomboBox.SelectedItem);//设置波特率和把串口名字赋给serailport控件
serialPort1.DataBits = 8;//传输数据的长度
serialPort1.StopBits = StopBits.One;//使用停止位为1位
serialPort1.Parity = Parity.None;//不使用奇偶校验位