灰尘传感测试仪器设计 (电气设计)


     摘

    年享受着济高速发展带红利时环境污染问题深深烙印民众心里年关雾霾讨绝耳国家开始思考解决空气环境污染诸源头治理关停整改高污染高消耗工厂沙漠绿化绿色出行等等日生活中留心加强身环保意识格外关注前环境空气状况否需戴口罩否适宜户外运动等等手机种天气预报法做前范围空气监测拥方便简洁够快速检测前空气质量仪器显必
    课题研究检测前范围空间中空气含灰尘含量实时显示前空气中灰尘浓度设置报警值形成集监测报警系统该系统出行室外活动提供空气状况直观数便者做出判断


    关键词:PM25单片机液晶显示传感器技术PCB


    ABSTRACT

    In recent years when people enjoy the rapid economic development brought about by the dividend while the environmental pollution problem is also deeply imprinted in the hearts of the people Every year on the haze of discussion from the country to the individual are beginning to think about how to solve the air pollution Such as the source of governance shut down the rectification of high pollution and high consumption of factories desert greening promote the practice of lowcarbon environmental travel etc In our daily life in addition to strengthen their awareness of environmental protection we also pay special attention to the current situation of air environment such as whether to wear a mask is suitable for outdoor sports and so on and all kinds of mobile phone weather forecasting cannot do air monitoring on our current small range Therefore it is necessary to have a simple and convenient instrument which can quickly detect the current air quality
    This paper studies how to detect the dust content of the air in the small space and displays the concentration of dust in the air and sets the alarm value The system can provide people with travel indoor and outdoor activities to provide intuitive data on the air condition easy for users to make judgments

    Keywords:PM25MCULCDsensor technologyPCB








    目 录

    1 绪………………………………………………………………………………1
    1.1 灰尘检测发展状况……………………………………………………1
    1.2 课题研究意义……………………………………………………………1
    1.3 课题研究容……………………………………………………………2
    2 设计思路部件…………………………………………………2
    2.1 总体设计思路…………………………………………………………2
    2.2 元器件选择………………………………………………………2
    2.2.1 单片机………………………………………………………………2
    2.2.2 ADC0832……………………………………………………………3
    2.2.1 灰尘传感器……………………………………………………………4
    2.2.1 LCD1602……………………………………………………………5
    3 硬件电路设计……………………………………………………………6
    3.1 报警电路………………………………………………………………6
    3.2 键电路………………………………………………………………7
    3.3 传感器连接电路………………………………………………………7
    3.4 液晶显示电路…………………………………………………………8
    3.5 电路板制作………………………………………………………8

    4 仪器盒体设计……………………………………………………………9
    4.1 材料选择………………………………………………………………9
    4.2 结构设计………………………………………………………………10
    5 软件设计……………………………………………………………………12
    5.1 STC51开发环境调试工具……………………………………………12
    5.2 程序设计…………………………………………………………………13
    5.2 1 程序设计结构……………………………………………………13
    5.2 2 AD转换程序………………………………………………………14
    5.2 3 LCD1602初始化程序……………………………………………16
    5.2 4 液晶显示程序……………………………………………………17
    5.2 5 中断程序……………………………………………………………20
    5.2 6 程序………………………………………………………………21
    6 结…………………………………………………………………………23 参考文献…………………………………………………………………………25
    附录………………………………………………………………………………26 致谢………………………………………………………………………………37




    1 绪
    发展济少考虑环境污染问题味追求GDP增长带严重果开始显现尤空气污染问题深深烙印民众心里种空气污染相关疾病呼吸道感染肺癌等等停困扰着生活成热点问题带病痛雾霾造成恶劣影响带巨困扰便雾霾天成家常便饭戴口罩出门成必装束俨然已沦陷雾霾中仅身体健康造成影响严重影响社会生产活动时常新闻里听某出现雾霾天见度低机场航班延误高速封锁等样背景良空气环境渴愈加强烈关改善空气质量呼声越越强烈国家开始思考解决空气环境污染诸源头治理关停整改高污染高消耗工厂沙漠绿化私家车限号出行提倡绿色生活等等日常生活中格外关注应该前环境空气状况天否需戴口罩否适宜户外运动等等手机种天气预报法做前范围空气监测拥方便简洁够快速检测前空气质量仪器显尤必时解前情况安心安排种事宜
    1.1灰尘检测发展状况
    前国空气状况检测开始加投入国新颁布环境空气质量标准中加入PM25指标时中城市建立监测点监测点属室外空间抽样检测未形成系统性全局性检测课题旨室室外前空间检测具高性实时性前社会行业种实时检测空气状况仪器处快速发展中未形成产业化标准化进步推广创新国外早前进入工业化时代未注意环境污染问题欧美国家早前历空气污染更严重时英国伦敦称雾空气状况检测较早侧重灰尘空间分布组成成分分析污染源然采取效措施遏制污染现欧美关国家空气状况发展中国家相国外国起步较晚较发展提升空间加现科技更加发达检测手段更加高效准确采取措施更加科学国空气检测方面进飞速发展
    1.2 课题研究意义
    生活质量求进步提高时适宜生活环境便显尤重年轻晨跑夜跑时老年晨练时需关注前空气状况否适合运动关切吸入空气否干净否影响身体健康拥便携灰尘检测仪器说必特 粉尘敏说款仪器区天气预报中某区域灰尘浓度测前空间灰尘浓度更贴生活更满足民需求
    1.3 课题研究容
    课题研究检测前范围空间中空气含灰尘含量实时显示前空气中灰尘浓度设置报警值形成集监测报警系统该系统出行室外活动提供空气状况直观数便者做出判断

    2 设计思路部件
    2.1 总体设计思路
    根51单片机搭建系统(添加外部复位时钟电路)然次设计出LCD1602液晶显示单片机接线电路蜂鸣器报警电路键电路AD083251单片机灰尘传感器外部连接电路电源输入电路等LCD1602充仪表显示出颗粒物浓度值通键设置灰尘浓度警戒值灰尘浓度超警戒值时蜂鸣器报警 键部分三开关组成中两开关增减键键进入设置警戒值模式
    系统整体框图:


    51单片机

    灰尘传感器

    液晶显示

    报警
    AD转换



    图21系统框图
    2.2.1 单片机
    STC89C52单片机具8K系统编程闪速存储器具高存取速度容易擦重写52单片机旧51核基础拓展功52单片机51单片机功更加强科期间开始涉单片机51系列单片机应该说款单片机功强操作性极方便着手学单片机系统爱者选择51系列单片机嵌入式系统入门二选择搭配简单C程序学生群体中度高部结构框图示


    图22单片机部结构图
    2.2.2 ADC0832
    ADC0832款双列直插式CMOS器件8位双缓DA转换器采逐次逼型方法工作电压51单片机样5伏加8位分辨率完全满足选灰尘传感器需求价格便宜尺寸类型AD数模转换芯片ADC0832选择8位分辨率意味着数字量输出范围0255完全满足模拟量转换求ADC832完成次数模转换时间32μS具双数输出第二位数作数校验控制数准确性转换速度提升加双数输出性更加突出单片机通片选信号控制芯片单片机够控制更外部设备引脚图23[1]:

    图23 ADC0832引脚图
    2.2.3 灰尘传感器
    实物图:

    图24 灰尘传感器实物图
    课题选灰尘传感器GP2Y1010AU0FSHARP日公司产品尺寸40*30*176毫米工作电压037 V工作温度范围负1065度够检测距离15毫米检测角度达正负60度分辨微颗粒物部原理图:

    图25灰尘传感器部原理图
    灰尘传感器GP2Y1010AU0F属光学传感器种通红外发光二极光电晶体放电路构成部件安装侧面利光学反射原理检测空气中灰尘颗粒浓度灰尘浓度较时反射光较特效检测非常微细颗粒通灰尘颗粒物分辨灰尘类型 灰尘传感器GP2Y1010AU0F输入信号解周期10毫秒误差正负1毫秒输入高脉高度Pw032毫秒采样信号中取样时间028毫秒部分体现中断程序中
    2.2.4 LCD1602
    LCD1602液晶显示屏字符尺寸295*435毫米工作电压5V工作电流20毫安字符显示容量16*2字符分开两行显示字符数字工作原理简单低耗51单片机够融合引脚介绍:
    VSS 电源
    VDD:电源正极
    VL: 液晶显示编码信号
    RS: 数命令选择端(HL)
    RW: 读写选择端(HL
    E 信号
    D0~D7: Data IO
    BLA 背光源正极
    BLK 背光源负极
    外形尺寸图:

    图26 LCD1602尺寸图

    3 硬件电路设计
    3.1 报警电路

    图31报警电路
    单片机P14引脚接三极基集图31P14引脚高电会三极基集发射集正偏07V三极导通时电源VCC相接蜂鸣器正极蜂鸣器发光二极时工作反三极基集低电5伏电源没蜂鸣器二极接通蜂鸣器发光二极均工作


    3.2 键电路

    图32键电路
    图32示三键段分接单片机P35引脚P36引脚P37引脚端键时低电信号送单片机相应引脚单片机引脚未接入外部设备时原高电点电出现时程序实时监测引脚电状态然程序中应该考虑抖动问题消抖键程序必少部分样准确检测
    3.3 传感器连接电路


    图33传感器连接电路
    图33P13端通Q2驱动灰尘传感器P13引脚输出电流通R7限流基集电流较弱三极放作进驱动灰尘传感器传感器模拟输出引脚OUT送ADC0832模拟输入通道0加输出端输入端时工作两引脚接起接单片机P34引脚
    3.4 液晶显示电路
    单片机固定接法图34:

    图34液晶显示电路
    3.5 电路板制作
    画原理图时设置封装AD中没带封装需画时网找画封装包尺寸符号画封装时定量元器件引脚间隔等画原理图原理图导入PCB工程中线宽度统设置25mil(般线电源线求宽里意宽度)焊盘XY尺寸60mil左右免孔时焊盘脱落便期焊元器件方便布线焊盘焊盘XY定相等布线程中量避免垂直交线免洗板子时折角处断开线路较简单选择动布线PCB图:

    图35 PCB图
    设置印格式然预览没问题11例PCB印A4菲林胶片纸然利曝光机曝光200秒(时间定曝光机需时间致)原理利印出黑色线路挡住曝光机光束感光板感光材料黑色线路遮挡住未发生化学反应接显影中通显影剂光发生化学反应部分洗掉保留出需电路接腐蚀剂线路外铜膜置换掉程中需留心配置溶液腐蚀性手直接接触
    洗完板子需钻孔机孔孔时注意手稳免焊盘钻掉钻头选择直径适中视焊盘定原理图PCB图焊相应元器件焊元器件时注意元器件引脚原理图应电容样较元器件考虑留倒着放置方便设计外盒避免键高度撞具体做法镊子两引脚弯成90度然焊需弯折引脚元器件电阻均镊子手直接掰免元器件部造成物理伤害整程中显影腐蚀板子尤重度显影度腐蚀否法完成完整电路板显影时间短没法做出板子显影剂腐蚀剂量需说明书例配置腐蚀剂水例高显影剂水例腐蚀耗时旧较长时果条件允许选择热水水浴加热条件进行加快铜置换洗板子产生废弃液意倒入水道免腐蚀道

    4 仪器盒体设计
    4.1 材料选择
    盒体选择两种方式种 着电路板市场找合适外盒差然进步加工种方法设计画出盒体厂家做外盒导师商量第选择市场找相行外盒然根电路板键开关蜂鸣器显示屏等部件相位置准确进行第二次盒体开发第种方式第二种更便捷价格便宜
    市场寻找外盒时候刚体胶体两种材料选择考虑期外盒进行二次设计开发选胶体材料价格便宜加工方便选购盒体材料必须电路板尺寸相差太
    4.2 结构设计
    设计求:
    仪器三键开关电源开关LCD1602液晶显示屏蜂鸣器传感器检测部位电源接口必须显露盒体外表面样方便仪器测量工作正常进行选择壳体尺寸230毫米*14950毫米*60毫米首先电路板稳固安装盒体需盒体底部四螺丝定位孔相应电路板四螺丝孔通四定位孔够支撑起仪器板面四定位孔內圆直径毫米外圆直径65毫米
    具体部位定位尺寸:测量液晶显示屏尺寸:71毫米*245毫米传感器尺寸:465毫米*30毫米三键开关孔径450毫米电源开关孔径7毫米三键开关间距离15毫米外界电源USB接口尺寸13毫米*8毫米


    图41 盒体底部三维图




    图42 盒体正面三维图

    图41图42盒体三维制图
    绘图程:根相应尺寸拉伸然壳体工具规定尺寸挖出部分实体表面仪器显露出部分三键孔工具液晶显示屏材料工具点注意传感器孔应该通透样保证空气流通测量时候确保数准确性
    CAD壳体二维设计图43示:

    图43 盒体二维设计图
    5 软件设计
    5.1 STC51开发环境调试工具
    科四年涉STC51系列单片机课设基选择Keil台编写程序Keil汇编语言编程C语言编程更简单易行读性高便期程序调试Keil台C语言编程51单片机开发者选择
    编写C程序代码编译C文件生成目标HEX文件编译通未出现错误成功生成HEX 文件通PZISP烧录软件载51单片机中烧录时注意选择低速载单片机型号选相应型号HEX文件生成方式图52 HEX文件生成图示:

    图51 HEX文件生成图

    5.2 程序设计
    4.2 1 程序设计结构
    首先启动传感器然处理灰尘传感器数通AD数模转换灰尘浓度计算方式出灰尘浓度数值数值字符化送液晶显示屏程中重复检查键否时准备警戒值重设警戒值前灰尘浓度数值判断否调报警子程序触发蜂鸣器程序框图:
    启动

    初始化程序

    开启中断间断启动传感器


    判断键否



    重设警戒值


    AD数模转换

    浓度数值计算


    液晶显示


    判断否调报警程序

    报警


    图53程序框图

    5.2 2 AD转换程序
    ADC0832开始工作前片选CS引脚高电表示没工作状态选择ADC0832工作时应该CS低电直次数模转换结束恢复高电
    unsigned char AD(bit abit b) ADC0832数模转换数资料中
    时序图
    {
    unsigned char i0data10data20
    CLK0
    DO1
    CS0 低电选通芯片
    CLK1
    CLK0 第降
    DOa a1 CH0进行单通道转换(10)
    CLK1
    CLK0 第二降
    DOb b0
    CLK1
    CLK0 第三降
    DO1
    ADC0832官方资料知第23脉选择通道选择方式图54示:

    图54 AD通道选择图
    知SGL1ODD0时数通Channel 0 进行转换
    for(i0i<8i++)
    {
    CLK1
    CLK0 开始第四降接收数
    data1<<1
    if(DO) DO高电应位1否0
    data1++
    }
    for(i0i<8i++) 第二位数校验第位
    {
    data2>>1
    if(DO)
    data2+0x80
    CLK1
    CLK0
    }
    CS1 关闭AD芯片转换结束
    CLK1
    if(data1data2)
    return data1
    return 0
    }
    ADC0832双数输出双数方式第二数作校验数减少误差性
    5.2 3 LCD1602初始化程序
    LCD1602液晶显示初始化图:


    图55 LCD1602初始化图
    图55应指令码设置出想显示效果程序:
    void init_1602() lcd1602初始化
    {
    w_com(0x38) 设置16*2显示8位数接口
    w_c(0x0c) 开显示光标显示闪烁
    w_c(0x06) 整屏显示移动
    delay(1000) 延时
    zifu(10 PM25000ugm3 ) 第行字符显示
    zifu(20warning000ugm3 ) 第二行字符显示
    xianshi_value(28huichen2) 显示设置PM25
    }
    5.2 4 液晶显示程序
    LCD1602液晶显示屏写操作时序图:

    图56 LCD液晶显示时序图
    图55知片选信号E开始阶段低电16027根数线接单片机P0口P0mtsp1时间段应片选信号E高电tpw时间段延时数传输完毕时E高电程序:
    void w_c(unsigned char m) 1602写命令
    {
    E0
    RS0
    RW0
    P0m
    delay(25)
    E1
    delay(125)
    E0
    }
    LCD1602液晶显示屏写数时序图图55 样唯区RS寄存器选择信号应高电数寄存器程序:
    void w_d(unsigned char n) 1602写数
    { E0
    RS1
    RW0
    P0n
    delay(25) 写操作时序图延时tsp1时间段少30ns
    E1
    delay(125) 写操作时序延时tpw时间段少150ns
    E0
    }
    图56示LCD1602液晶显示屏第行指令码80H+址码第二行40H开始第二行指令码80H+40H+址码

    图57 RAM址映射图
    显示字符串出现:
    void zifu(unsigned char hangunsigned char addunsigned char *q)
    lcd1602显示字符函数
    {
    if(hang1) hang(行)第行第二行
    w_c(0x80+add) 显示屏第行显示
    else
    w_c(0x80+0x40+add) 显示屏第二行显示
    while(1)
    {
    if(*q '\0') break 判断字符串否结束遇结束标志符跳出循环
    w_d(*q)指针变量p指址值送显示屏显示
    q++ 指针变量次加1该循环整字符串送显示屏
    }
    }
    '\0'判断字符串否结束遇结束标志符跳出循环*q指针变量q指址值送显示屏显示指针变量次加1直遇字符串结束符合终止该循环整字符串送显示屏
    计算出灰尘浓度十进制数值位位通写数函数送显示屏位通求余方法程序:
    void xianshi_value(unsigned char hangunsigned char addunsigned int value) 1602第行第二行三位十进制数显示
    {
    if(hang1)
    w_c(0x80+add)
    else
    w_c(0x80+0x40+add)
    if(value10010 0) value符号整形例:15010011101
    w_d(' ')
    else
    w_d(0x30+value10010) 例1501001010x30应1602标志字符库数00+11
    w_d(0x30+value1010) 0+15010105
    w_d(0x30+value10) 0+ 150100
    }
    value符号整形例150100余数1110余数1例15010010余数10x30应1602标志字符库数00+11
    5.2 5 中断程序
    次中断程序定时驱动灰尘传感器定时器1中断设定工作方式1次进入中断需重新赋值程序:
    void time0_int() interrupt 1 隔40us中断
    {
    count++
    if(count8)
    {
    chuanganqi1 输出高电传感器开始工作
    }
    else if(count>250)
    {
    count0
    TR00
    }
    }
    5.2 6程序
    void main()
    {
    unsigned int AD10
    unsigned int AD20
    float jisuan00
    unsigned char flag10

    init() 定时器初始化
    init_1602() lcd1602初始化
    chuanganqi 0 开始时传感器工作显示0
    程序初始化定义变量时变量赋初值AD1ADC0832进行数模转换值AD2jisuan计算灰尘浓度值时需变量终算出浓度值全局变量huichen_valueflag1变量作判断标示次ADC0832模数转换值保存
    while(1)
    {
    aaa ++
    if(aaa > 290)
    {
    aaa 0
    if(count_w3 0) 开始界面显示容
    {
    chuanganqi0 传感器间歇性工作时关掉第行显示0
    TR01 开启中断
    while(1)
    {
    if(count>7) 约67
    break
    }
    中断程序中 count作计数变量count8时启动传感器检测count08程中需程序全程跑次调种子程序程序时间段停while(1)
    AD1 AD(10) 模数转换
    if(flag10) 记录转换值
    {
    AD2AD1
    flag11 flag1需0AD2值
    AD1改变改变
    }
    AD2AD2*8+AD1 AD2值AD1改变改变终稳定
    时两者相等
    flag1需0该if程序执行次AD2值AD1改变改变种方式AD2值变化变缓终稳定时两者相等避免显示数值短时间较波动起缓作
    AD29 模数转换计算均值
    jisuan((float)(AD2512+001))*17291 计算灰尘浓度
    真实值
    if(jisuan < 0)
    jisuan 12
    huichen_value(unsigned int)(jisuan) 强制转成符号整形
    bhuichen_value
    if(b>999) b999 避免数失真
    huichen1 b
    xianshi_value(18huichen1)
    }
    warning() 调蜂鸣器
    }
    anjian()
    if(jianzhi < 10)
    {
    anjian_set() 键设置
    }
    delay1(2)
    }
    }

    5 结
    月努力终完成次毕业设计说毕设学起相简单做起遇问题度气馁开始茫然现开始编写毕设文心充满喜悦次毕设中学远止毕设涉专业范围心里成长收获第点遇困难迎难畏惧困难怕怕遇困难束手毙程序调星期期间时常想放弃寻求帮忙毕竟电脑USB接口稳定烧录程序常成功心气极差没冷静寻找解决办法咬牙步步重复完成调试调试完时候发现调试程序时盲目没冷静思考造成量功浪费时间断困难中更快成长第二点虚心讨教身边学专长毕设涉方面知识思考局限性定学交流探讨请教画电路图时候段时间没接触方面画完电路图时候电气错误严重封装问题封装出错元器件焊焊第三点做事规划开始着手准备毕设乱思绪乱导致效率低简单事耗掉天时间焊电路板元器件买时候没考虑期安装外盒键太矮没法露出外盒焊元器件时候电容较焊时候位置较低焊完时发现需电容弯等等浪费量时间
    次毕设暴露身问题花量时间调程序原擅长反成软肋究原编程熟练C编程基础牢固电路板制作时候布线线宽够腐蚀时间长等原导致局部线路断断续续需期焊锡补













    参考文献:
    [1]王幸钟爱琴AT89系列单片机原理接口技术[M]北京:北京航空航天学出版社200426~30
    [2]郑锋王巧芝51单片机应系统典型模块开发全[M]北京中国铁道出版社201130~50
    [3]王志宏基 DHT11实验室点温湿度报警系统设计[M]太原太原理工学出版社201140~50
    [4]公茂法马宝甫单片机机接口实例集[M]北京:北京航空航天出版社 1998年 26~35
    [5]马冬梅 单片机 C语言应程序设计[M]北京北京航空航天学出版社 2000 22~45
    [6]范寿康单片微型计算机应开发技术[M]北京 民邮电出版社 1998 40~60
    [7]李珍 付植桐单片机原理应技术[M]北京 清华学出版社 2003 30~36
    [8]张洪润 单片机应技术教程[M] 北京:清华学出版社199740~56
    [9]HamldStoneMieroeomPuterInterfaeingUniversityofMassachusetts
    Amhorst Addison wesle 1982 2~3
    [10] Meehan JoanneMuir LindseySCM in Merseyside SMEsBenefits and barriers[J] TQM Journal 2008 2~5
    [11] 李全利单片机原理应技术[M]北京:高等教育出版社2009 30~46
    [12] 李维提郭强液晶显示应技术[M]北京:电子工业出版社2006 20~35













    附 录
    源程序
    #include
    #include

    sbit feng P1^4 蜂鸣器
    sbit chuanganqiP1^3 传感器
    sbit CSP3^2 ADC0832片选信号
    sbit CLKP3^3 ADC0832时钟信号
    sbit DOP3^4 ADC0832输入
    sbit RSP1^0 1602数命令选择端
    sbit RWP1^1 1602读写选择端
    sbit E P1^2 1602信号
    unsigned int huichen10huichen2 150 huichen1第行显示值huichen2设置警戒值键调整
    unsigned int b0count0huichen_value0
    unsigned int aaa0

    unsigned char jianzhi 键值变量w1时jianzhi1
    unsigned char count_w3 统计k3次数count_w31时切
    换更改报警值count_w32时清零恢复显示模式更改
    void delay1(unsigned int q) 延时1ms
    {
    unsigned int ij
    for(i0i for(j0j<120j++)
    }

    void delay(unsigned int i) 短延时
    {
    while(i)
    }

    void w_c(unsigned char m) 1602写命令
    {
    E0
    RS0
    RW0
    P0m
    delay(25)
    E1
    delay(125)
    E0
    }

    void w_d(unsigned char n) 1602写数
    {
    E0
    RS1
    RW0
    P0n
    delay(25) 写操作时序图延时tsp1时间段少30ns
    E1
    delay(125) 写操作时序延时tpw时间段少150ns
    E0
    }

    void xianshi_value(unsigned char hangunsigned char addunsigned int value) 1602第行第二行三位十进制数显示
    {
    if(hang1)
    w_c(0x80+add)
    else
    w_c(0x80+0x40+add)
    if(value10010 0) value符号整形例:15010011101
    w_d(' ')
    else
    w_d(0x30+value10010) 例1501001010x30应1602标志字符库数00+11
    w_d(0x30+value1010) 0+15010105
    w_d(0x30+value10) 0+ 150100
    }

    void zifu(unsigned char hangunsigned char addunsigned char *q) lcd1602显示字符函数
    {
    if(hang1) hang(行)第行第二行
    w_c(0x80+add) 显示屏第行显示
    else
    w_c(0x80+0x40+add) 显示屏第二行显示
    while(1)
    {
    if(*q '\0') break 判断字符串否结束遇结束标志符跳出循环
    w_d(*q) 指针变量p指址值送显示屏显示
    q++ 指针变量次加1该循环整字符串送显示屏
    }
    }

    void init_1602() lcd1602初始化
    {
    w_c(0x38) 设置16*2显示8位数接口
    w_c(0x0c) 开显示光标显示闪烁
    w_c(0x06) 整屏显示移动
    delay(1000) 延时
    zifu(10 PM25000ugm3 ) 第行字符显示
    zifu(20warning000ugm3 ) 第二行字符显示
    xianshi_value(28huichen2) 显示设置PM25
    }

    unsigned char AD(bit abit b) ADC0832数模转换数资料中
    时序图
    {
    unsigned char i0data10data20
    CLK0
    DO1
    CS0 低电选通芯片
    CLK1
    CLK0 第降
    DOa a1 CH0进行单通道转换(10)
    CLK1
    CLK0 第二降
    DOb b0
    CLK1
    CLK0 第三降
    DO1
    for(i0i<8i++)
    {
    CLK1
    CLK0 开始第四降接收数
    data1<<1
    if(DO) DO高电应位1否0
    data1++
    }
    for(i0i<8i++) 第二位数校验第位
    {
    data2>>1
    if(DO)
    data2+0x80
    CLK1
    CLK0
    }
    CS1 关闭AD芯片转换结束
    CLK1
    if(data1data2)
    return data1
    return 0
    }

    void init() 定时器0初始化程序
    {
    EA 1 开总中断
    TMOD 0X02 定时器0定时器1工作方式1
    TH0216 40us进次中断
    TL0216
    ET0 1 开定时器0中断
    TR0 0 允许定时器0定时
    }

    void anjian() 键判断
    {
    jianzhi 30 意设置影响值
    P3 | 0xf0 P3P3|0xf0
    if((P3 & 0xf0) 0xf0) 键
    {
    delay1(1) 键消抖动
    if(((P3 & 0xf0) 0xf0))
    { 确认键
    switch(P3 & 0xf0) 判断键
    {
    case 0xd0 jianzhi 1 break w1键值
    case 0xb0 jianzhi 2 break w2键值
    case 0x70 jianzhi 3 break w3键值
    }
    }
    }
    }

    void anjian_set() 键设置程序
    {
    if(jianzhi 3) 设置键w3
    {
    count_w3 ++
    if(count_w3 > 1)
    {
    count_w3 0
    init_1602() lcd1602初始化
    }
    }
    if(count_w3 1) 预警灰尘浓度设置状态
    {
    if(jianzhi 2) 键w2
    {
    huichen2 ++ 预设灰尘浓度值加1
    if(huichen2 > 999)
    huichen2 999
    }
    if(jianzhi 1) 预设灰尘浓度减1 (键w1)
    {
    huichen2
    if(huichen2 < 1)
    huichen2 1
    }
    xianshi_value(28huichen2) 显示预设灰尘浓度值
    w_c(0x80+0x40+7) 光标移动数值位
    w_c(0x0f) 显示闪烁光标
    }
    }

    void warning() 报警函数
    {
    static unsigned char value 静态局部变量

    if(huichen1 > huichen2)
    {
    value ++
    if(value > 2)
    feng ~feng 蜂鸣器报警
    }
    else
    {
    feng 1
    value 0
    }
    }

    void main()
    {
    unsigned int AD10
    unsigned int AD20
    float jisuan00
    unsigned char flag10
    init() 定时器初始化
    init_1602() lcd1602初始化
    chuanganqi 0 开始时传感器工作显示0
    while(1)
    {
    aaa ++
    if(aaa > 290)
    {
    aaa 0
    if(count_w3 0) 开始界面显示容
    {
    chuanganqi0 传感器间歇性工作时关掉第行显示0
    TR01 开启中断
    while(1)
    {
    if(count>7) 约67
    break
    }
    AD1 AD(10) 模数转换
    if(flag10) 记录转换值
    {
    AD2AD1
    flag11 flag1需0AD2值AD_dat1改变改变
    }
    AD2AD2*8+AD1 AD2值AD1改变改变终稳定时两者相等
    AD29 模数转换计算均值
    jisuan((float)(AD2512+001))*17291 计算灰尘浓度值
    if(jisuan < 0)
    jisuan 12
    huichen_value(unsigned int)(jisuan) 强制转成符号整形
    bhuichen_value
    if(b>999) b999 避免数失真
    huichen1 b
    xianshi_value(18huichen1)
    }
    warning() 调蜂鸣器函数
    }
    anjian()
    if(jianzhi < 10)
    {
    anjian_set() 键设置
    }
    delay1(2)
    }
    }
    void time0_int() interrupt 1 隔40us中断
    {
    count++
    if(count8)
    {
    chuanganqi1 输出高电传感器开始工作
    }
    else if(count>250)
    {
    count0
    TR00
    }
    }

    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 20 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    电气设计软件立项报告

    最初的电气设计对下游的元件采购、装配和生产都将产生巨大的影响。我所技术部门一直使用非专业的绘图软件Microsoft Visio和AutoCAD做电气设计,工程师们不得不把大量的工作时间耗费在如...

    6年前   
    1554    0

    电气设计师工作职责

    电气设计师工作职责1、协助项目经理与客户沟通,完成相关技术需求的澄清与确认;2、参与项目经理的项目计划制定,按照项目计划完成电气工作,保证项目如期交付;3、根据客户技术要求,完成电气选型和图纸...

    3年前   
    584    0

    烟雾传感器的设计

    烟雾传感器的设计摘 要:本系统是基于STC89C52单片机的烟雾报警器,其主要模块由单片机模块、电源模块、烟雾传感器、液晶显示、光敏传感器、电磁阀控制、声音报警、发光报警、外部中断、时钟、复...

    3年前   
    681    0

    烟雾传感器的设计课程设计

     课程设计题 目 烟雾传感器的设计 指导教师 学生姓名 学...

    2年前   
    481    0

    电气设计师工作职责集锦

    电气设计师工作职责集锦1. 磨床及关联装置(刀具、夹具、液压、自动化等)的电气自动化设计业务;2. 完成上司临时交办的其他工作。电气设计师工作职责21、负责自动化设备电气的设计、更改、归档;2...

    2年前   
    483    0

    电气设计师工作职责2021

    电气设计师工作职责20211.负责新能源汽车充换电设备电气布线、电气控制柜设计、电气部件选型等方案设计;2.编写产品安装作业指导书,培训产品电气部件的组装,现场指导设备的安装和验收等;3.参与...

    3年前   
    441    0

    建筑电气设计易错问题评析

    建筑电气设计易错问题评析 【问题1:在施工图设计说明中对建筑物的结构形式、基础形式、防火分类与耐火等级未予交待】   评析:按建筑材料划分,建筑物的结构形式分为混凝土结构、钢结构、木结构、...

    5年前   
    1469    0

    2021电气设计师工作职责

    2021电气设计师工作职责1.根据客户要求,定制非标自动化设备,负责设备的电气硬件图纸设计和PLC和触摸屏软件的设计2.负责对上述硬件和软件回路的调试,故障处理3.配合机械设计完善设备的整体设...

    2年前   
    486    0

    电气设计心得体会

    电气设计心得体会  电气设计因此而具备它的独特性。本人从多项药厂工程的电气设计、施工交底及施工配合,总结出一些经验与体会,希望能够对各位电气专业同行有所帮助。不完善之处,还请大家指教。  我认...

    10年前   
    649    0

    某学校实训楼建筑电气设计

    四川信息职业技术学院毕业设计说明书(论文)设计(论文)题目:某学校实训楼建筑电气设计 专 业: 班 级: ...

    2年前   
    453    0

    电气设计师工作职责汇总

    电气设计师工作职责汇总1、负责自动化设备电气的设计、更改、归档;2、负责元件的选型确认和成本控制工作;3、协助进行技术文件的编制、技术资料的发放、入档和更改工作编制;4、与供应商及用户的技术沟...

    3年前   
    555    0

    2017年电气设计个人工作总结

    电气设计个人工作总结  时光飞逝,转眼间到了20xx年末,现将一年的工作状况总结如下:  上半年处于实习状态,在检修工区实验班,主要接触了对35、110及220千伏变电站里的各种电气装备的高压...

    7年前   
    507    0

    电气设计师工作职责2021职责

    电气设计师工作职责2021职责1、为客户及营业活动提供技术支持,包括机器人选型、测试、技术计算及使用规格商定;2、根据客户需求进行机器人自动化设备的电气、程序及夹具的设计、调试及相关报价;3、...

    3年前   
    424    0

    很实用的电气设计估算公式

    1、照明电路电流计算及熔丝刀闸的选择口诀:白炽灯算电流,可用功率除压求;日光灯算电流,功率除压及功率因数求(节能日光灯除外);刀闸保险也好求,一点五倍额定流;说明:照明电路中的白炽灯为电阻性负...

    2年前   
    509    0

    水电站电气设计毕业论文

    目 录前 言 1第一章 电气主接线设计 21.1 设计原则 21.2 各方案比较 2第二章 厂用电设计 82.1 厂用电设计原则 8第三章 短路电流计算 93.1 对称短路电流计算 93.2 ...

    3年前   
    690    0

    电阻应变式称重传感器的设计

    学 号 电子系统综合设计设计说明书设计数显应变量测量仪学生姓名班级电信科班成绩指导教师(签字)计算机与信息工程学院2013年X月X日题目:电阻应变式称重传感器的设计摘 要称...

    2年前   
    570    0

    基于光纤光栅的电压传感器的设计

    学生姓名 专 业班 级 题目名称 基于光纤光栅的电压传感器的设计题目性质 1.理工类:工程设计 ( );工程技术实验研究型( );理论研究型( );计算机软件型( )...

    3年前   
    690    0

    光电传感器测量系统的设计

    光电传感器测量系统的设计检测技术与应用课程设计报告系别   自动化工程系  班级  姓名                  学号                 指导教师      2011年...

    9年前   
    624    0

    2020年最新传感器与虚拟仪器指导书

    《传感器与虚拟仪器》实验指导书 王丽编写 通信与电子工程学院 2017年8月 ...

    4年前   
    640    0

    智能仪器设计基础课程设计

    《智能仪器设计基础》课程设计报学 院: 专业班级: 自动化 姓 名: ...

    4年前   
    691    0

    文档贡献者

    平***苏

    贡献于2021-06-01

    下载需要 20 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档