【c#作为上位机控制51单片机(下位机)温度检测】

本文介绍了如何使用C#编写上位机程序配合51单片机,通过DS18B20温度传感器实现远程温度检测。51单片机主程序中包含了DS18B20的初始化、读取温度值等关键代码,并将数据发送至上位机进行显示。
摘要由CSDN通过智能技术生成

文章目录

    • 概要
    • C#上位机程序
    • 51单片机(下位机)程序
    • 使用DS18B20温度传感器实现测温
    • 小结

概要

通过串口方式与下位机通信,通信协议自定上位机可以实时显示下位机采集到的温度数据 

C#上位机程序

Form.cs部分代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO.Ports;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {

        //SerialPort serialPort1 = new SerialPort();
        GreenHouse greenHouse = new GreenHouse();
        private bool serial_open = false;

         
        public Form1()
        {
            InitializeComponent();
            serialPort1.DataReceived += serialPort1_DataReceived;

            greenHouse.RequestSendData += Greenhouse1_RequestSendData;

            
        }

        private void Greenhouse1_RequestSendData(byte[] data)
        {
            serialPort1.Write(data, 0, data.Length);
        }

        

        private void Form1_Load(object sender, EventArgs e)
        {
            uart_name();   
            cb_bot.SelectedIndex = 1;
            Cb_databit.SelectedIndex = 0;
            cb_jiaoyan.SelectedIndex = 2;
            cb_stopbit.SelectedIndex = 0;
        }


        private void suo_uart_Click(object sender, EventArgs e)
        {
            uart_name();
        }

        private void open_uart_Click(object sender, EventArgs e)
        {
            if (serial_open == true)
            {
                usart_portclose();
            }
            else

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值