# AntiFogSystem **Repository Path**: Nine-Pascal/anti-fog-system ## Basic Information - **Project Name**: AntiFogSystem - **Description**: 2021-2022学年第2学期《传感器与检测技术》试卷 题目二 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-04-18 - **Last Updated**: 2022-05-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: STC ## README # AntiFogSystem **2021-2022学年第2学期《传感器与检测技术》试卷** 2022/4/20 王ZY 修改温度驱动函数 2022/4/19 王ZY 优化温度显示,增加负数显示 2022/4/19 王ZY 说明性文件增加 2022/4/19 王ZY 主函数重构与BUG优化 2022/4/18 王ZY 仓库初始化 ## 硬件要求 1. 使用 DS18B20 代替 DHT11 实现温度检测功能 2. 使用 DS1302 完成时间测量的功能 3. 使用 PCF8591 AD/DA 芯片进行电压输出,输出小于 1.0V 防雾传感器不工作,输出大于 5.0V 防雾传感器满负荷输出。因无法购置真实的防雾传感器,故采用模拟输出手段演示程序效果。 4. 使用 AT24C02 完成对数据的掉电保存 5. 通过数码管完成对部分参数的显示 6. 通过 LED 灯对单片机当前状态完成显示 7. 通过按键进行界面的操作与切换 8. 使用蓝桥杯大赛组委会提供的国信长天单片机竞赛实训平台,对本案例进行模拟 ## 硬件框图 ```mermaid graph LR A[DS18B20]-->B[IAP15F2K60S2] G[DS1302]-->B[IAP15F2K60S2] C[按键输入]-->B H[AT24C02] B-->D[数码管显示单元] B-->E[DA输出] B-->F[LED指示灯] ``` ## 功能描述 ### 性能描述 1. 温度数据刷新时间 2. DAC 输出电压刷新时间 3. 按键动作响应时间 ### 显示功能 #### 温度显示界面 温度数据界面如图,显示内容包括标识符 C 和温度数据,温度数据保留小数点后两位有效数字,单位为摄氏度。 | C | | | | 2 | 4. | 2 | 5 | | :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: | | 标识 | 熄 | 灭 | \| | 温 | 度 | 24. | 25 | #### 时间显示界面 时间数据界面如图: | 1 | 2 | - | 0 | 0 | - | 0 | 2 | | :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: | | 小 | 时 | - | 分 | 钟 | - | 秒 | 数 | #### 计数界面 计数界面如图,显示内容包含标识符 N 和计数值;DAC 输出电压每从低到高越过 3.0V 一次,计数值加一。 | N | | | | | | 1 | 2 | | :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: | | 标识 | | 计 | 数 | 值 | : | 1 | 2 | ### 按键功能 #### 按键功能说明 - S4:定义为“显示界面切换”按键,按下 S4 按键,切换温度显示、时间显示、计数界面,按键 S4 切换模式如图: ```mermaid graph LR A[温度显示界面]-->|S4|B[时间显示界面] B-->|S4|C[计数界面] C-->|S4|A ``` - S5:定义为“显示功能控制”按键,按下 S5 按键,关闭或打开数码管及 LED 显示功能。按键 S5 工作模式如下图所示: ```mermaid graph LR A[显示功能启用]-->|S5|B B[显示功能关闭]-->|S5|A ``` - S6:定义为“防雾功能控制”按键,按下 S6 按键,关闭或打开防雾功能。按键 S6 工作模式如下图所示: ```mermaid graph LR A[防雾功能启用]-->|S6|B B[防雾功能关闭]-->|S6|A ``` - S7:定义为“清零”按键,按下 S7 按键可将当前计数值清零。 #### 按键功能设计要求 - 按键 S5 功能在任意界面有效。 - 按键 S6 功能仅在温度显示界面有效,防雾功能关闭时温度显示为“--.--” - 按键 S7 功能仅在计数界面有效。 - 从计数界面退出后,将计数值保存到 EEPROM 存储器(内部地址 0),占用一个字节 - 合理设置参数边界范围,防止出现参数越界。 ### 电压输出曲线 仅为模拟输出,不代表真实情况 $$ 电压 = (温度-20) \div 3 \times 100\% $$ ### LED 指示灯功能 - L1:当 DAC 输出电压大于 1.0V 时,L1点亮,否则熄灭。 - L2:当 DAC 输出电压大于 4.0V 时,L2点亮,否则熄灭。 ### 初始状态说明 - 初始状态上电默认处于温度显示界面,防雾功能关闭,显示功能开启。 - 设备上电后,应自动从 EEPROM 内部地址 0 读出数据,并将数据处理成计数值。