基于单片机的便携式瓦斯检测仪系统设计-基于单片机超声波停车位自动检测系统-基于单片机产品数量自动计量系统设计-基于单片机激光电子琴设计-基于单片机锂电池电量显示设计-基于单片机温湿度农田自动灌溉设计

1638基于单片机的便携式瓦斯检测仪系统设计

基于单片机的便携式瓦斯检测仪系统设计  实现功能:瓦斯气体检测,并可以通过按键设计上下限报警,LCD实时显示瓦斯浓度值。

包含的电路有:瓦斯检测电路,按键电路,lcd显示电路,报警电路,单片机主控电路。

#include<reg52.h>
#include "LCD1602.h"
#include "da1302.h"

unsigned int i;
unsigned int j;
unsigned char V_getdata1;	 //传感器电压采集变量
unsigned long V_temp1,alarm_temp;//传感器电压采集变量和设定报警值
unsigned int alarm,speak;
unsigned char V_temp1Buffer[10],alarm_tempBuffer[10];

SYSTEMTIME CurrentTime ;	//建立时间结构体

unsigned char count;  
sbit ST=P3^0;
sbit OE=P3^1;
sbit EOC=P3^2;
sbit AD_CLK=P3^3;	//ADC0809时钟
sbit ADDA=P3^4;	    //ADC0809选择通道口
sbit ADDB=P3^5;
sbit ADDC=P3^6;
sbit ALARM=P3^7;
sbit key1=P2^3;  //加1按钮
sbit key2=P2^4;	  //减1按钮

void TimeInitial();
void Delay(unsigned int i);

 

1639基于单片机超声波停车位自动检测系统设计

 基于单片机超声波停车位自动检测系统设计,在proteus中通过3个超声波检测距离实现对车位剩余数量的检测。

电路包含:LCD显示电路,三路超声波传感器电路,LED指示电路,单片机,复位电路,晶振电路。

#include <reg52.h>
#include <intrins.h>

#define uchar unsigned char	// 以后unsigned char就可以用uchar代替
#define uint  unsigned int	

uint dis_temp=50;
uint Margin;
uint cwA,cwP,cwS;

sbit LcdRs_P   = P2^7;		// 1602液晶的RS管脚       
sbit LcdRw_P   = P2^6;		// 1602液晶的RW管脚 
sbit LcdEn_P   = P2^5;		// 1602液晶的EN管脚
sbit Trig_P    = P2^2;		// 超声波模块的Trig管脚
sbit Echo_P    = P2^3;		// 超声波模块的Echo管脚
sbit Trig_A    = P2^0;		// 超声波模块的Trig管脚
sbit Echo_A    = P2^1;		// 超声波模块的Echo管脚
sbit Trig_S    = P1^6;		// 超声波模块的Trig管脚
sbit Echo_S    = P1^7;		// 超声波模块的Echo管脚

省略

1640基于单片机产品数量自动计量智能系统设计(仿真,程序,报告)

 设计思路:需使用MCS-51系列单片机,构建控制系统,实现系统的控制。所以采用AT89C52 单片机为核心,以6个弹跳按钮和光电传感器作为输入端,达到控制直流电机的正转、反转、停止、加速、减速、数据清除及瓶子数量采集功能,并且由LCD1602显示模块可以显示瓶子数量、箱子数量以及电机转速。在设计中,采用 PWM 技术对电机进行控制,并通过485通讯协议控制包装机的启停。

该直流电机控制系统的设计,在总体上大致可分为以下8个部分组成:AT89C52单片机最小系统,按键输入模块,瓶数检测模块,1602显示模块,电机驱动模块,包装机控制模块,包装机控制模块以及直流电机。

///*************************************************************************
/// 工业生产中的产品数量自动计量系统创新设计
///功能:流水线电机控制,产品数量检测,LCD1602显示以及包装机控制
///*************************************************************************
#include<reg52.h>  ///包含头文件
#include<MAIN.h> 
#include<lcd1602.h>

//#define uint unsigned int 
//#define uchar unsigned char
//#define ulong unsigned long

sbit zheng = P1^0;
sbit fan = P1^1;
sbit ting = P1^2;
sbit jia = P1^3;
sbit jian = P1^4;
sbit clear = P1^5;
sbit bee = P1^6;
sbit pingzi = P1^7;
sbit PWM1 = P2^0;
sbit PWM2 = P2^1;
sbit ena = P2^2;
sbit max = P2^3;


uint bottle=0;
uint box=0;
uint zhuansu[4]={0,0,0,0};
uint PZ[4]={0,0,0,0};
uchar str1[16]="bottle:00 box:00";
uchar str2[16]="speed:0000      ";
uchar time;
uchar count;
ulong zhuan;
flag=1;

省略

  

1632基于单片机激光电子琴控制设计-原理图-程序

一个非常漂亮的可弹奏激光电子竖琴,用手弹的时候遮挡住激光柱,就会发出相应的声音.包括制作过程,程序,原理,实物图,有需要的话可以参考一下。

1631基于单片机锂电池电量检测数码管显示系统设计

 本次设计主要解决了AD转换及数据处理问题。其次主要包括串行口配置使用,数码管动态定时刷新等的设计。在设计开始,查找了较多的AD转换芯片,并通过仿真软件,对照数据手册,对其进行功能验证。早期验证的主要为ADC0808/0809,AD1674,ADS7824等,考虑分辨率及仿真软件限制等因素,最后选择了16位ADS7825芯片。仿真逻辑关系与数据手册显示基本全部对应。

下位机软件设计中,将各功能模块单独写成函数,使得主函数基本流程较为清晰。对各变量,常量,函数等进行了较多的注释说明,以提高程序可读性和后续修改的便利性。为节省开发设计时间,编程过程中对同一数值进行了多次运算,并未考虑存储后再使用的方式,有可能造成了不必要的程序执行时间开销。考虑了电压值最高位(个位)处的小数点处理,及电池电量百分比最高位为0时的处理,适应了阅读习惯。

ADC芯片输入端在设计时未考虑测量电池电压时的负载效应,可能会引起较大误差。可以通过引入电压跟随器提高输入阻抗的方式,进一步降低误差。

上位机设计中主要完成的工作是对下位机传送来的字符串的解析和显示。每次采样转换完成后,下位机发送一条以回车换行结尾的字符串,上位机通过该结束位检测一帧数据传输完毕,随后对接收到的数据帧进行字符串分离解析等工作。

1627基于单片机温湿度智能农田自动灌溉系统设计

  1. 实时测量农田温湿度,并通过lcd显示
  2. 通过按键设置湿度上下限范围,来实现农田的灌溉和排水。
  3. 包含的电路有:灌溉电路,排水电路,按键电路,显示电路,温湿度传感器电路,报警电路,主控电路,断电记忆电路等。
oid initwsget()
{
	    unsigned int temp,humi;
       value humi_val,temp_val;             //定义两个共同体,一个用于湿度,一个用于温度
                     
       unsigned char error;                 //用于检验是否出现错误
       unsigned char checksum;                    //CRC                    

       s_connectionreset();                       //启动连接复位
       
              error=0;                                 //初始化error=0,即没有错误
              error+=s_measure((unsigned char*)&temp_val.i,&checksum,TEMP); //温度测量
              error+=s_measure((unsigned char*)&humi_val.i,&checksum,HUMI); //湿度测量
           if(error!=0) s_connectionreset();                 如果发生错误,系统复位
           else
           {
                 humi_val.f=(float)humi_val.i;                   //转换为浮点数
                 temp_val.f=(float)temp_val.i;                   //转换为浮点数
                 calc_SHT10(&humi_val.f,&temp_val.f);            //修正相对湿度及温度
			
				  
                 temp=temp_val.f*10;
                 humi=humi_val.f*10;

			  if(humi<((float)humi_set*10)&&temp<((float)temp_set*10))
			  {
			   	 initsounderon();
			

 


​文章转自电设屋,资料百度网盘下载地址 https://www.aiesst.cn/share.html​  

目录

1638基于单片机的便携式瓦斯检测仪系统设计

1639基于单片机超声波停车位自动检测系统设计

1640基于单片机产品数量自动计量智能系统设计(仿真,程序,报告)

1632基于单片机激光电子琴控制设计-原理图-程序

1631基于单片机锂电池电量检测数码管显示系统设计

1627基于单片机温湿度智能农田自动灌溉系统设计


  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值