求毕业设计参考:单片机与上位机(PC)通信电路与软件设计

我知道你会 2021-09-19 09:35 267 次浏览 赞 150

最新问答

  • 宅男阳光刺眼

    1系统总体结构原理
    粮食在储藏期间,由于受环境、气候和通风条件等因素的变化,粮仓内温度或湿度会发生异常,这极易造成粮食的霉烂、或发生虫害。那么针对粮食储藏的特殊性,我们选择了粮仓内的温度和湿度作为主要监测参数,把粮虫发生情况作为辅助参数。
    整个监测系统由上位管理主机(HOST)、USB/CAN转换器和多个智能节点组成。节点的数量由大型仓库里的粮库数量决定,一般在采用标准帧进行CAN通信时,节点不超过110个;采用扩展帧CAN进行CAN通信时,节点数量原则上无。整个监测网络采用总线式拓扑结构,其结构原理图如图1所示。
    上位管理机采用PC机,主要完成整个监测网络系统的参数设置、粮库的状态查询、处理、粮情分析、超限实时报警和报表打印等功能。下位智能节点由单片机、采集电路和CAN通控制驱动电路构成。
    下位机不仅要实时监测本粮库内各个测试点的温度、湿度和粮虫发生情况,并保存和显示结果,还要负责接收上位管理机的命令,根据上位机的要求上传。
    USB/CAN转换器负责将上位机通过USB口输出的命令转换成CAN总线格式后,再下传到CAN总线;或者将下位机通过CAN总线上传的转换成USB格式后,再送到PC机。
    2 下位机硬件电路结构
    下位机以单片机AT89S52为核心,通过扩展显示电路、采集电路和CAN通信模块构成一个完整硬件体系,如图2所示。
    2.1 采集电路
    采集电路由温度采集电路、湿度采集电路和粮虫检测电路构成。温度检测采用Dallas公司生产的单总线数字温度传感器DS18B20,它不仅能直接输出串行数字信号,而且具有微型化、低功耗、高性能、易于微处理器连接和抗干扰能力强等优点。DS18B20数字温度传感器对于实测的温度了9-12位的和报警温度寄存器,它的测温范围为-55℃~+125℃,其中在-10℃~+85℃的范围内的测量精度为±0.5℃。由于每个DS18B20有唯一的一个连续64位的产品号,所以允许在一根电缆上连接多个传感器,以构成大型温度测控网络。图2电路中,设计了两条测温单总线,每条单总线用一只场效应管电源,每条总线上可并联十几只数字温度传感器DS18B20。
    湿度检测采用湿度传感器HIH3610和DS2438组合模块。HIH-3610是美国Honeywell公司生产的相对湿度传感器,该传感器具有精度高、响应快速、高稳定性、低温漂、抗化学腐蚀性能强及互换性好等优点。HIH-3610采用热固聚酯电容式传感头,在芯片内部集成了信号处理功能电路,可以完成将相对湿度值变换成电容值,再将电容传转换成线性的电压输出。因此它输出的模拟湿度信号,不能直接送单片机处理,必须经过A/D转换。DS2438也是Dallas公司的单总线器件,具有A/D功能。HIH3610和DS2438可以组合在一起,构成单总线数字湿度传感器模块。
    粮虫检测器,当检测到粮食虫害发生时,粮虫检测器输出负脉冲,送微处理器记数和处理。系统采用一个8输入与非门,可带8台粮虫检测器。
    2.2 显示电路
    显示电路和微控制器的连接采用I2C总线,由于AT89S52单片机内部没有集成I2C总线模块,故采用软件模拟的方法实现I2C通讯。显示驱动器采用具有I2C总线的器件SAA1064,可动态驱动4位8段LED显示器。它内部具有显存和自动刷新功能,可免去微控制器的频繁刷新任务,腾出大量时间做其他事情。
    2.3 CAN通信模块
    CAN是现场总线中唯一被批准为国际标准的现场总线。其信号传输介质为双绞线。通信速率最高可达1Mbps/40m,直接传输距离最远可达10Km/5Kbps。CAN协议采用CRC检验并可相应的错误处理功能,保证了通信的可靠性。当节点严重错误时,具有自动关闭的功能,以切断该节点于总线的联系,使总线上的其它节点及其通信不受影响,具有较强的抗干扰能力。
    图2中的CAN控制驱动模块由CAN控制器SJA1000、光耦6N137模块和CAN驱动器82C50构成。SJA1000负责与微控制器进行状态、控制和命令等信息交换,并承担网络通信任务;82C50为CAN控制器和总线接口,对总线的差动发送和对CAN控制器的差动接收功能。光耦6N137起隔离作用。
    3 系统软件设计
    系统软件由上位机主程序和下位监控程序构成,上位机主程序用VB语言开发,采用模块化设计,具体的功能模块如图3所示。利用VB编写的应用软件人机界面友好,便于维护和管理。
    下位机的软件由下位机主程序、温度采集程序、湿度采集程序、粮虫检测中断程序和CAN收发中断服务程序等构成。由于篇幅所限这里仅给出了下位机主程序和CAN通信中断服务程序的流程图,分别如图4和图5所示。在下位机主程序里,系统要首先进行单片机的初始化、CAN的初始化、开外部中断、开启计数器和使能CAN接收中断的过程,是系统处于就绪状态,然后调用采集程序和处理程序,实时采集粮库现场的参数并予以处理,处理后的要保存起来供上位机随时查询,同时送显示器显示。
    粮虫检测中断程序主要完成粮库发生粮虫后的处理,一方面要判断粮虫计数器是否计满,计满清零并保存;一方面设置粮库发生虫害标志,并供上位机查询和显示。
    CAN收发中断服务程序负责上下位机的命令和传送。当上位机发送命令时,CAN接收一个报文,CAN的中断使能标志置1,产生接收中断,CPU立即响应,进入中断服务程序,然后系统再根据上位机的具体命令,向上位机传送该节点工作状态或采集的。
    4 结论
    由于系统采用了全数字化的温度、湿度传感器,直接输出的是表示温度和湿度的数字信号,不存在由模拟量到数字量转换的中间环节,所以该系统具有稳定可靠、测量精度高、一致性好、无需任何调整、信号线长短不会影响其性能等优点,还有单总线也带来安装方便、线路清晰、节省线材等长处。上下位机通信采用CAN总线通信方式,提高了系统内部的速率和实时性,降低了误传送的概率。粮虫检测器的设计使该系统除了能实时监测温度和湿度外,也能监测粮食虫害的发生情况。
    回答者:200402028 - 试用期 一级 3-28 10:05
    提问者对于的评价:
    xiexiel
    您觉得最佳好不好? 目前有 2 个人评价
    100% (2)
    0% (0)
    对最佳的评论
    我想求一份EDA设计要求是:传感器与信号处理系统的设计、调试与实现 该部分要求掌握几种传感器的电路形式、作用、信号特点、典型电路的设计及模拟实现,同时解决信号的检测、调整,以及采集信号的存储、处理与显示等。并在实验设备上选择某一种类传感器及相关器件,设计、组成一个小系统。用此系统完成测量及处理。只要符合起要求就好,谢谢各位了!
    评论者: gzb731 - 试用期 一级
    hao
    评论者: 7325719 - 试用期 一级
    看看这个吧!
    评论者: 小宝0121 - 助理 二级
    其他回答共 1 条
    .单片机温度控制系统 [Admin|service-86
    在生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。其中,温度控制也越来越重要。在生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个生产中经常会遇到的控制问题。 [详情……]
    基于单片机的温度控制系统 [Admin|service-86
    单片机系统的开发应用给现代测控领域带来了一次新的技术,自动化、智能化均离不开单片机的应用。单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、控制等领域中。在生产中,电流、电压、温度、压力和流量也都是常用的被控参数。 [详情……]
    基于八位单片机的数字温度控制系统 [Admin|service-86
    本设计以8位单片机和新型数字传感器为核心组成温度测量及控制系统。本系统采用INTEL MCS-51指令系统的ATMEL(爱特梅尔)AT89C51单片机作为控制芯片,完成温度值接收、转换、报警处理;由DALLAS出品的新型的单路串行数字温度传感器DS18B20,完成温度测量、分析、判断阈值、输出功能。整个系统具有集成度高、可*性强、抗干扰性强(串行通信特点)、鲁 棒 性强、可扩展性强(可利用识别序列号组成多点测量)、体积小、功耗低等特点。本系统具有测温、上限报警、下限报警、温度控制及显示功能。基于本系统可扩展如下功能:1.增加键盘使可随时调整温度上下限。2.扩展传感器数量,组成测量网络。实现多点测量。同时对MCS-51单片机系列各芯片进行了优劣势对比、介绍了单线数字温度传感器的基本内部结构及主要性能特点。 [详情……]

    浏览 235赞 136时间 2023-02-27
  • 叹久妞子

    我帮你写了个程序:

    /*

    硬件环境:AT89C51

    P1口接LED8个灯

    */

    #include "reg52.h"

    #define uchar unsigned char

    #define uint unsigned int

    bit R_MOVING_LIGHT=0,L_MOVING_LIGHT=0;

    uchar DATA_1,DATA_2;

    /*

    --初始化AT89C52 串行端口--

    T1 方式2 (8位重装载) 波特率9600,启动T1

    T0 方式1 (16位器),未初始化,未启动

    串行口设置为方式1(8 bit UART)

    */

    void delay_1ms(uint _1ms)

    {

    uint i;

    while (_1ms--)

    {

    i=1000;

    while(i--);

    }

    }

    void init_serial_port(void)

    {

    SM2=0;

    SM0=0;SM1=1;//串口工作在方式1

    TMOD=0x20;//器1工作在方式2

    TH1=253;

    TL1=253;//波特率9600b/s

    EA=1;//总中断允许

    ES=1;//允许串口中断

    REN=1;

    TR1=1;

    }

    void serial_port_init() interrupt 4

    {

    uchar i;

    RI=0;

    i=SBUF;

    if(i=='R')

    {

    R_MOVING_LIGHT=1;

    L_MOVING_LIGHT=0;

    DATA_1=0x80;

    }

    if(i=='L')

    {

    L_MOVING_LIGHT=1;

    R_MOVING_LIGHT=0;

    DATA_2=0x01;

    }

    }

    void main()

    {

    init_serial_port();

    P1=0x00;

    while(1)

    {

    if(R_MOVING_LIGHT)

    {

    P1=DATA_1;

    delay_1ms(100); //100MS 调节改变流水灯速度

    DATA_1>>=1;

    if(!DATA_1)

    DATA_1=0x80;

    }

    if(L_MOVING_LIGHT)

    {

    P1=DATA_2;

    delay_1ms(100);

    DATA_2<<=1;

    if(!DATA_2)

    DATA_2=0x01;

    }

    }

    }

    因为我这边硬件不方便搭,没有看最终效果,有什么问题可以找我!

    下图为单片机P1口与8个LED灯的连接方法,为高电平亮低电平灭。

    浏览 240赞 76时间 2022-06-01
  • 诗酒趁年少r

    上位机用串口调试助手就OK,
    串口调试助手界面就有对话框,可以向单片机送字符,直接通过对话框输入相应字符

    通过串口控制8个LED灯,网上找不到呵,要写才有

    如果需要H!我

    浏览 401赞 144时间 2022-03-29
  • LIZHIPINGZHAOBOWEI

    按你的要求做的,里边有原理图,PCB,实物照片,工作过程

    推荐:114 PC串口通信( share.iask.sina.com.cn/f/11202145.html )

    浏览 316赞 85时间 2021-11-02
  • QINGCHUN曲终人散

    还是我来写吧,这么简单的东西。。狂汗!
    #include
    #define uchar unsigned char
    #define uint unsigned int

    void chuan()
    {
    TMOD=0x20; //T1为器产生波特率//
    SCON=0x50; /*串口定义方式2用器1产生波特率9600*/
    PCON=0x00; /*不倍增波特率*/
    TL1=0xfd;
    TH1=0xfd;
    EA=1;ES=1;
    IP=0x00;
    TR1=1; /*器工作*/
    }
    void kou()
    { uchar i=0x01;
    switch(dat)
    {
    case 'R' :{delay();这里写你想控制的东西break;

    default:break;
    }
    void main()
    {
    chuan();
    while(1)
    if(RI==1){
    RI=0;
    dat=SBUF;
    kou();
    }
    }

    浏览 201赞 82时间 2021-10-22

求毕业设计参考:单片机与上位机(PC)通信电路与软件设计