当前位置: 首页 > article >正文

C#串口温度读取

背景:每天学点,坚持

要安装好虚拟串口和modbus poll,方便调试(相关资源在文末,也可以私信找我要)

传感器部分使用的是达林科技的DL11B-MC-D1,当时42软妹币买的(官网上面有这个传感器的说明:广州达林电子科技有限公司-DL11B_MC_D1温度传感器)

然后照着所给说明使用modbus-poll进行调试,可以后就在C#中使用NModbus库来方便读取温度

控制台显示温度的简单样例:

class Program
{
    static void Main(string[] args)
    {
        // 设置串口参数
        using (SerialPort port = new SerialPort("COM7"))
        {
            port.BaudRate = 9600;
            port.DataBits = 8;
            port.Parity = Parity.None;
            port.StopBits = StopBits.One;
            port.Open();

            // 创建 Modbus 工厂
            var factory = new ModbusFactory();
            // 使用工厂创建 Modbus 主站 (Master)
            var master = factory.CreateRtuMaster(port);

            try
            {
                // 读取保持寄存器(功能码 03),假设温度数据存储在地址 0x0000
                ushort startAddress = 0x0000;
                ushort[] holdingRegisters = master.ReadHoldingRegisters(1, startAddress, 1);

                // 解析读取到的温度数据
                // 假设寄存器的值即为温度数据(例如,温度为21.8度,可能存储为218)
                float temperature = holdingRegisters[0] / 10.0f;

                // 将温度值显示在控制台
                Console.WriteLine("当前温度: " + temperature + " °C");
            }
            catch (Exception ex)
            {
                Console.WriteLine("读取温度失败: " + ex.Message);
            }
        }

        // 保持控制台打开
        Console.ReadLine();
    }
}

串口助手破解
链接:https://pan.baidu.com/s/1Q5DNgR8v1EWzBD1BF5OYMw?pwd=csdn 
提取码:csdn 
 


http://www.kler.cn/news/334736.html

相关文章:

  • Spring Boot框架下的足球青训俱乐部后台开发
  • 【前沿 热点 顶会】NIPS 2024中目标检测有关的论文
  • 【报错】mac m1 gateway 报错
  • Prompt 模版解析:诗人角色的创意引导与实践
  • 3.JVM
  • 技术人生-AD域
  • 论文 | Model-tuning Via Prompts Makes NLP Models Adversarially Robust
  • 自动驾驶系列—自动驾驶背后的数据通道:通信总线技术详解与应用场景分析
  • 银河麒麟桌面操作系统V10 SP1:取消安装应用的安全授权认证
  • Python和C++及MATLAB和R时间序列中数学物理金融气象运动和电子材料
  • (C语言贪吃蛇)16.贪吃蛇食物位置随机(完结撒花)
  • Linux进程调度和进程切换
  • leetcode面试题17.04:消失的数字(C语言版)
  • 【系统架构设计师】专题:系统分析和设计
  • 乌班图基础设施安装之Mysql8.0+Redis6.X安装
  • 【STM32开发之寄存器版】(三)-详解NVIC中断
  • 论文阅读:InternVL v1.5| How Far Are We to GPT-4V? 通过开源模型缩小与商业多模式模型的差距
  • SpringBoot在线教育平台:设计与实现的深度解析
  • Unity 快速定位到目标文件夹
  • [运维]3.containerd无法使用fluentd的问题