久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 4502|回復: 4
打印 上一主題 下一主題
收起左側

單片機獨立按鍵加lcd1602+adc0809顯示問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:78521 發表于 2015-5-1 21:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
程序單個都對,但是在主程序中組合在一起,按鍵程序就失效了……請問各位大神……程序如何修改?

#include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
#include<intrins.h>
#include"adc0809.h"
#include"lcd1602.h"
#include"delay.h"
/* key0用于選擇顯示的內容,當前溫度或者報警溫度  */
/* 同時也用于選擇對高溫操作還是對低溫操作        */
/* key0==1時,key1對高溫加,key2對高溫減         */
/* key0==2時,key1對低溫加,key2對低溫減         */

sbit key0=P3^3;
sbit key1=P3^4;
sbit key2=P3^5;
sbit led=P2^0;
unsigned char flag=0,i=0;
void keyscan()
{
key0=1;
key1=1;
key2=1;
if(!key0)   
{
      
    DelayMs(10);
    if(!key0)
    {
     while(!key0);
    if (i<2)
    {
     flag++;
        i++;
     flag=flag%3;   //flag= 0~
    }
    else
    {
     adc_display();
     flag=0;
     i=0;
    }
    }
}
if(flag==1)
{
   if(!key1)
   {
     DelayMs(10);
     if(!key1)
     {
      while(!key1);
     { LCD_Write_String(0,0,"we");  }
     }
   }
}
if(flag==1)
{
   if(!key2)
   {
     DelayMs(10);
     if(!key2)
     {
      while(!key2);
     { LCD_Write_String(0,0,"er");  }
     }
   }
}

if(flag==2)
{
   if(!key1)
   {
     DelayMs(10);
     if(!key1)
     {
      while(!key1);
     { LCD_Write_String(1,2,"qw");  }
     }
   }
}
if(flag==2)
{
   if(!key2)
   {
     DelayMs(10);
     if(!key2)
     {
      while(!key2);
     { LCD_Write_String(1,2,"rt");  }
     }
   }
}
}
   

void main()
{
LCD_Init();
LCD_Clear();
while(1)
{
      adc_display();
   keyscan();
   DelayMs(10);
   }  
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:78521 發表于 2015-5-1 22:09 | 只看該作者
以下是adc0809的程序
#include"adc0809.h"
#include"delay.h"
#include"lcd1602.h"

#include <reg52.h>

#define uint unsigned int
#define uchar unsigned char

sbit P27 = P2^7;       
sbit EOC = P2^3;
sbit ST = P3^0;
sbit OE = P3^1;

uchar getdata = 0;       
uchar code table[]="0123456789";//定義顯示的數組
uchar q,b,s,g;

void adc0809(void)
{
        float temp=0.0;
        ST=0;//ADC0809初始化
        ST=1;
        _nop_();
        _nop_();
        ST=0;
        while(EOC==0)//等待轉換完成
        {
                OE=1;
                getdata=P0;//p2選擇為ADC的數據口
                OE=0;
        }

        //temp=(float) getdata*5.0/256;//數據處理
        //temp=temp/100.0;
        temp=getdata;
        q=(int)temp/1000;
        b=(int)temp%1000/100;
        s=(int)temp%1000%100/10;
        g=(int)temp%10;
}

void adc_display(void)
{
        LCD_Init();
        OE=0;
        while (1)
        {  
                  LCD_Write_String(0,0,"current value:");
                  adc0809();
                      LCD_Write_Com(0x80+0x40);//1602顯示處理好的數據
                {       
                        LCD_Write_Data(table[q]);
                    DelayMs(20);
                        LCD_Write_Data(table[b]);
                    DelayMs(20);
                        LCD_Write_Data(table[s]);
                        DelayMs(20);
                        LCD_Write_Data(table[g]);
                        DelayMs(20);
                }
     }
}
回復

使用道具 舉報

板凳
ID:80407 發表于 2015-6-8 06:13 來自觸屏版 | 只看該作者
樓主,你好!我現在也遇到了這個問題你是怎么解決的啊?
回復

使用道具 舉報

地板
ID:58502 發表于 2015-6-8 12:51 | 只看該作者
把lcd1602.h內容也放出來看看
回復

使用道具 舉報

5#
ID:82659 發表于 2015-6-10 21:47 | 只看該作者
樓主好牛啊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久精品视 | 国产一区二区视频在线播放 | 91蜜桃在线观看 | 顶级黄色片 | 国产精品99久久久久久久久 | 久久久一本| 日日夜夜操操 | 热久久免费视频 | 免费的黄色录像 | 丁香六月综合 | 一区二区三区免费在线观看 | 毛片毛片毛片毛片毛片 | 国产香蕉在线观看 | 亚洲一级大片 | 久久久久黄色 | 国产精品777 | 亚洲综合日韩 | 久久久精品一区二区三区 | 欧美日韩在线一区二区 | 日本欧美久久久久免费播放网 | 久久99精品久久久久久水蜜桃 | 成人午夜免费视频 | 4hu在线| 日韩精品一区二区在线 | 欧美精品一区二 | 老女人性生活视频 | 久久riav| 欧美色图在线视频 | 日韩欧美黄色片 | 久久久午夜精品 | 五月婷丁香 | 午夜在线视频观看日韩17c | 色av导航 | 黄在线免费观看 | 激情五月综合网 | 久草新视频 | 91看片在线| 91免费版看片 | 亚洲第一色网 | 日本性网站| 精品国产久 |