最近因一台消防控制系统设备需加泡沫罐检漏功能,所以专门做了单片机检测压力传感器电流值,做AD转换,进行实时处理,实现对压力传感器的实时监测和报警功能,原理图如图片所示
单片机源程序如下:
#include #include #include #define LEAK_chg 320 //泄漏判断灵敏度 #define ADD_chg 100 //加液判断灵敏度 #define dat_yu 10 //抖动变量 /********************* * 基本命令宏定义 * *********************/ #define HZ_16X16 0XF0 //固定处: 显示16X16点阵国标汉字命令 #define ASCII_8X8 0XF1 //固定处: 显示8X8ASCII字符命令 #define SINGLE_DOT 0XF2 //任意点: 显示命令 #define BYTE_DOT 0XF3 //字节处: 显示点阵命令 #define SCREEN_CLEAR 0XF4 //整屏清屏命令 #define ASCII_8X16 0XF9 //固定处: 显示8X16ASCII字符命令 #define ALL_TOGGLE 0XFA //反白显示命令 #define CURSOR_LENGTH 0XFB //光标: 开关及类型设置命令 #define MOVE_SPEED 0XFC //调整移动速度命令 #define PICTURE_DISP 0XFD //画图片命令 #define SCREEN_ONOFF 0XFE //屏幕开命令 #define POWER_SAVE 0XFF //系统省电命令 #define ASCII_5X8 0XE0 //固定处: 显示5X8ASCII字符命令 #define NUMBER_3X5 0XE1 //固定处: 显示3X5数字及大写字母命令 #define ASCII_6X12 0XE2 //固定处: 显示6X12ASCII命令 #define NUMBER_9X16 0XE3 //固定处: 显示9X16数字命令 #define CURSOR_LOC 0XE4 //光标: 位置设置命令 #define BACK_TOGGLE 0XE5 //背光取反命令 #define CONTRAST_GRADIENT 0XE6 //对比度调整命令 #define UART_BAUDRATE 0XE8 //UART波特率设置命令 #define STR_8X16 0XE9 //固定处: 显示16X16中文和8X16ASCII混合字符串命令 #define HZ_16X16_LOC 0XEA //任意点: 显示16X16中文字符命令 #define STR_8X16_LOC 0XEB //任意点: 显示16X16中文和8X16ASCII混合字符串命令 #define HZ_16X16_CUR 0XEC //光标处: 显示16X16点阵的中文字符命令 #define STR_8X16_CUR 0XED //光标处: 显示中文和8X16ASCII混合字符串命令 #define TEMPERATURE_SET 0XEE //设置温度补偿开关和系数命令 #define SOFT_RESET 0XEF //复位命令 #define ASCII_5X8_CUR 0XD0 //光标处: 显示一个5X8ASCII字符命令 #define ASCII_8X8_CUR 0XD1 //光标处: 显示一个8X8ASCII字符命令 #define ASCII_6X12_CUR 0XD2 //光标处: 显示一个6X12ASCII命令 #define NUMBER_9X16_CUR 0XD3 //光标处: 显示一个9X16数字命令 #define NUMBER_3X5_CUR 0XD4 //光标处: 显示一个3X5数字和大写字母命令 #define STR_ASCII_5X8_CUR 0XD5 //光标处: 显示一5X8ASCII字符串命令 #define STR_NUMBER_3X5_CUR 0XD6 //光标处: 显示3X5数字和大写字母字符串命令 #define STR_6X12_CUR 0XD7 //光标处: 显示12X12中文和6X12ASCII混合字符串命令 #define STR_NUMBER_9X16_CUR 0XD8 //光标处: 显示9X16数字字符串命令 #define ASCII_8X16_CUR 0XD9 //光标处: 显示一个8X16ASCII字符命令 #define STR_ASCII_8X8_CUR 0XDA //光标处: 显示8X8ASCII字符串命令 #define STR_ASCII_5X8_LOC 0XDB //任意点: 显示5X8ASCII字符串命令 #define STR_6X12_LOC 0XDC //任意点: 显示12X12中文和6X12ASCII混合字符串命令 #define STR_NUMBER_9X16_LOC 0XDD //任意点: 显示9X16数字字符串命令 #define STR_NUMBER_3X5_LOC 0XDE //任意点: 显示3X5数字和大写字母字符串命令 #define STR_ASCII_8X8_LOC 0XDF //任意点: 显示8X8ASCII字符串命令 #define ASCII_5X8_LOC 0XC0 //任意点: 显示5X8ASCII字符命令 #define ASCII_8X8_LOC 0XC1 //任意点: 显示8X8ASCII字符命令 #define ASCII_6X12_LOC 0XC2 //任意点: 显示6X12ASCII字符命令 #define NUMBER_9X16_LOC 0XC3 //任意点: 显示9X16数字字符命令 #define NUMBER_3X5_LOC 0XC4 //任意点: 显示3X5数字和大写字母字符命令 #define DRAWLINE 0XC5 //任意点: 画线 #define AREA_MOVE 0XC6 //任意指定: 区域块移位 #define AREA_DATA 0XC7 //任意指定: 区域块显示数据 清零/全亮/反显 #define AREA_FLASH 0XC8 //任意指定: 区域块显示数据自动闪烁 #define ASCII_8X16_LOC 0XC9 //任意点: 显示8X16ASCII字符命令 #define RESERVE_01 0XCA //模块内部预留命令,请勿使用 #define KEYBOARD 0XCB //内置键盘开关命令 #define RESERVE_02 0XCC //模块内部预留命令,请勿使用 #define HZ_FORM 0XCD //设置中文和半角ASCII放大字体命令 #define GET_TEMP 0XCE //获取环境温度命令 #define RESERVE_03 0XCF //模块内部预留命令,请勿使用 #define HZ_12X12 0XB0 //固定处: 显示12X12点阵国标汉字命令 #define RESERVE_04 0XB1 //模块内部预留命令,请勿使用 #define RESERVE_05 0XB2 //模块内部预留命令,请勿使用 #define RESERVE_06 0XB3 //模块内部预留命令,请勿使用 #define RESERVE_07 0XB4 //模块内部预留命令,请勿使用 #define BACK_ONOFF 0XB5 //背光开关命令 #define RESERVE_08 0XB6 //模块内部预留命令,请勿使用 #define RESERVE_09 0XB7 //模块内部预留命令,请勿使用 #define RESERVE_10 0XB8 //模块内部预留命令,请勿使用 #define STR_6X12 0XB9 //固定处: 显示12X12中文和6X12ASCII混合字符串命令 #define HZ_12X12_LOC 0XBA //任意点: 显示12X12中文字符命令 #define NOP 0XBB //空转命令 #define HZ_12X12_CUR 0XBC //光标处: 显示12X12点阵的中文字符命令
上一篇:学习单片机的正确方法
下一篇:51单片机信号发生器例子程序包括Proteus仿真
推荐阅读最新更新时间:2024-11-06 11:31
设计资源 培训 开发板 精华推荐
- eMotion:基于STM32F103的ST MEMS适配器主板,与所有ST MEMS适配器板兼容
- STEVAL-ILD005V1,基于 STF17N62K3 功率 MOSFET 的后沿相位控制旋转壁式调光器评估板
- 【物联网】鸿蒙物联网智能WIFI开关+4227919A
- NCP382HD15AAGEVB:单输入双输出高侧配电开关评估板
- 三半桥栅极驱动器STDRIVE601演示板——EVALSTRIVE601
- Layerscape LS1043A参考设计板
- ch552g核心板
- LED航灯WS2812
- 用于无线的 2.8 至 5.25V 差分放大器
- EVAL-CN0369SDPZ,基于 ADF4002 PLL 频率合成器的评估套件