程序参考C语言源代码如下:
#include //定义一个数组,使数码管显示的数字和数组元素的下标相等 unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; sbit shuiman=P1^0;//水满 sbit sw5=P1^1;//水位5 sbit sw4=P1^2;//水位4 sbit sw3=P1^3;//水位3 sbit sw2=P1^4;//水位2 sbit sw1=P1^5;//水位1 sbit shougong=P1^6;//手工上水 sbit dianji=P1^7;//电机控制位 sbit state=P3^7;//电机工作指示 /延时程序/ void delay02s(void) { unsigned char i,j,k; for(i=100;i>0;i–) for(j=100;j>0;j–) for(k=248;k>0;k–); } main() { P0=0; while(1) { /传感器是设计的一次只能触发一个传感器单?*** //水满 if(shuiman0&&sw51&&sw41&&sw31&&sw21&&sw11)//当唯一的闭合一个传感器单元:水位6时发生 { dianji=1;//关电机 state=1;//电机工作指示灯熄灭 P0=table[6];//显示水位深度:6**** 已满 delay02s();//延时一段时间让数码管显示给人以提示:水已满 } //水位5 if(shuiman1&&sw50&&sw41&&sw31&&sw21&&sw11)//当唯一的闭合一个传感器单元:水位5时发生 { P0=table[5];//显示水位深度:5 } //水位4 if(shuiman1&&sw51&&sw40&&sw31&&sw21&&sw11)//当唯一的闭合一个传感器单元:水位4时发生 { P0=table[4];//显示水位深度:4 } //水位3 if(shuiman1&&sw51&&sw41&&sw30&&sw21&&sw11)//当唯一的闭合一个传感器单元:水位3时发生 { P0=table[3];//显示水位深度:5 } //水位2 if(shuiman1&&sw51&&sw41&&sw31&&sw20&&sw11)//当唯一的闭合一个传感器单元:水位2时发生 { P0=table[2];//显示水位深度:2 } //水位低 if(shuiman1&&sw51&&sw41&&sw31&&sw21&&sw10)//当唯一的闭合一个传感器单元:水位1时发生 { dianji=0;//开电机 state=0;//电机工作指示灯打开 P0=table[1];//显示水位深度:1 } //手工上水 if(shougong==0)//当按手工上水按钮时发生 { dianji=0;//开电机 state=0;//电机工作指示灯打开 P0=table[0];//显示0表示手工上水已有反应 delay02s();//延时一段时间让数码管显示给人以提示:已开始手工上水 } } 1 }
上一篇:8通道自动温度检测系统仿真
下一篇:项目实战:51单片机控制交通信号灯
推荐阅读最新更新时间:2024-11-10 10:52
推荐帖子
- 如何降低噪声与电磁干扰
- fighting 移动便携
- 万众瞩目“中国芯”今天上市,芯片股还香吗?
- 今天,中芯国际在上海证券交易所鸣锣上市。中芯国际A股发行价格27.46元,今日以95元开盘,涨幅超过245%,市值突破6000亿元。中芯国际的上市,不仅刷新了A股IPO最快纪录,而且成为近十年来最大规模IPO,募资超500亿元。作为国产芯片龙头,此前市场对中芯国际的未来充满想象,不过随着预期落地,以及市场抽血效应显现,芯片半导体板块短期面临的风险依然值得关注。从6月1日公司科创板上市申请获受理,到今日正式鸣锣上市,中芯国际仅仅用了45天,跑出科创板IPO新
- eric_wang 国产芯片交流
- 关于大功率高频传输电线的问题
- 本人菜鸟希望大神们帮忙分析一下比如我现在有一个类似于天线的闭合线圈上面走的电流比较大,电流幅值比较大,将近50A但是频率有比较高,比如无许可的6.78MHz如果用普通铜线趋肤效应比较大,内阻就大的不得了为了能有闭合电流不能用同轴电缆用利兹线(多股线)的话我查了很多相关的资料,都没有说利兹线工作于这个频率段的资料不知道各位大哥在工作中有没有遇到类似的问题呢?有没有什么好的解决方法呢?小弟感恩不尽!关于大功率高频传输电线的问题可用空心铜管请问能说一下原因么?空心铜管不是一样有
- 朴仁永 RF/无线
- CCeCommandBar的工具条的问题
- CCeCommandBar的工具条怎么设置才能够使得按钮可以有下压的状态,以表示当前正在进行某项操作。谢谢CCeCommandBar的工具条的问题
- lololo 嵌入式系统
- 一个MSP430F149 定时器程序
- 本程序利用定时器A的模式2实现定时功能,采用C语言编写。(1)利用定时器A的模式2(连续)实现的定时资料利用定时器A的模式2(连续)实现的定时资料在程序中对TACTL的控制,当TACTL为如下的赋值时TACTL=TASSEL_2+MC_2+TAIE;//SMCLK,contmode,interrupt可以改变TASSEL_X来实现不同的定时,当为TASSEL_1时选ACLK为定时时钟,可以实现最短2S的定时,其次为2S的倍数的定时。当为TASSE
- Jacktang 微控制器 MCU
- 51单片机检测市电是否掉电,上电自动唤醒的相关问题
- 刚刚接触单片机,现在需要完成以下功能。1.IO口检测市电是否掉电。2.市电掉电后,单片机进入待机状态。3.市电再上电的时候,单片机被中断激活。问题:1.不知道按图连接,单片机的IO口能否经得起高压电的冲击2.图中的C1-R1-Q1-D4电路,能否正确的唤醒单片机.3.图中R2的泄放电阻有没有必要加上 51单片机检测市电是否掉电,上电自动唤醒的相关问题楼主电路不合适。综合楼主的需求,采用交流过零检测的办法最简单,用个光耦,其LED侧反向并联一个整流二极
- qslm523 51单片机