单片机的上位机简单开发(2)
界面设计
增加了GroupBox控件和radio按钮,我们设置其默认的enabled为false
在连接串口之后enabled变为true
groupBox1.Enabled = true;
小灯开关的实现
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
if (radioButton1.Checked)
{
try
{
serialPort1.WriteLine("k");
}
catch
{
serialPort1.Close();
MessageBox.Show("端口错误", "错误");
}
}
else {
try
{
serialPort1.WriteLine("g");
}
catch
{
serialPort1.Close();
MessageBox.Show("端口错误", "错误");
}
}
}
因为单选按钮在同一组中,且只有2个按钮,所以我们只需要对其中一个单选按钮进行代码的编写即可
单片机脚本
int val; // 定义变量val
int ledPin = 13; // 定义数字接口13
void setup()
{
Serial.begin(9600); // 设置波特率为9600,这里要跟软件设置相一致.当接入特定设备(如蓝牙)时,我们也要跟其他设备的波特率达到一致
pinMode(ledPin,OUTPUT); // 设置数字13 口为输出接口,Arduino 上我们用到的I/O 口都要进行类似这样的定义
}
void loop()
{
val = Serial.read();// 读取PC 机发送给Arduino 的指令或字符,并将该指令或字符赋给val
if (val == 'k')// 判断接收到的指令或字符是否是"R"。
{
// 如果接收到的是"R"字符
digitalWrite(ledPin,HIGH); // 点亮数字13口 LED
}
else if(val == 'g')
{
digitalWrite(ledPin,LOW);
}
}