您当前的位置:五五电子网电子知识单片机-工控设备单片机通信基于串口通信的单片机仿真和C语言开发 正文
基于串口通信的单片机仿真和C语言开发

基于串口通信的单片机仿真和C语言开发

点击数:7747 次   录入时间:03-04 11:33:32   整理:http://www.55dianzi.com   单片机通信

    图 5.1 主程序流程图
图 5.1 主程序流程图

    5.2.2 串口中断服务子程序

    判断串口发送标志位TI 是否为1,若TI 为1,则把数据从单片机发给PC 机,并把TI清零,中断子程序返回;若TI为0,表明RI=0,则把串口接收标志位RI清零,把串口接收缓冲器SBUF 中的数据写入串口接收数据单元RECDATA,再把该数据送到串口发送缓冲器SBUF 中,传给PC 机,置串口成功接收数据标志位RECOKBIT 为1,表明串口成功接收发送数据,最后中断子程序返回。串口收发数据中断服务子程序设计流程图如图5.2 所示。

    串口中断服务子程序
图5.2 串口中断服务子程序

   



www.55dianzi.com

    5.2.3 读温子程序

    读出温度子程序的主要功能是读出RAM 中的9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图5.3 示。

    读温子程序
图5.3 读温子程序

    5.2.4 温度转换命令子程序

    温度转换命令子程序主要是发温度转换开始命令,当采用12 位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如上图,图5.4 所示。

    温度转换流程图
图5.4 温度转换流程图

    5.2.5 计算温度子程序

    计算温湿度子程序将RAM 中读取值进行BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如图5.5 所示。

    计算温度流程图
图5.5 计算温度流程图

    5.2.6 显示数据刷新子程序

    显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作,当标志位位为1时将符号显示位移入第一位。程序流程图如图5.6 所示。

    显示数据刷新子程序
图5.6 显示数据刷新子程序

    6 结论

    本系统的硬件采用模块化设计,以AT89C52 单片机为核心,与LCD 显示电路、串行口通信电路及DS18B20 温度检测电路组成控制系统。该系统硬件主要包括以下几个模块:

    AT89C52 主控模块、LCD 显示模块、串行口通信模块、DS18B20 温度检测模块等。其中AT89C52 主要完成外围硬件的控制以及一些运算功能,LCD 显示模块完成字符、数字的显示功能、串行口通信模块主要完成单片机和PC 机之间的通信功能,DS18B20 温度检测模块主要完成环境温度检测功能。



上一页  [1] [2] [3] 


本文关键字:单片机  通信  开发  C语言  单片机通信单片机-工控设备 - 单片机通信

《基于串口通信的单片机仿真和C语言开发》相关文章>>>