标题: pcf8591单片机程序 [打印本页]

作者: fya555    时间: 2019-5-8 22:29
标题: pcf8591单片机程序
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
#include "IIC.h"  //i2c库函数
code uchar seg[]={0x28,0x7e,0xa2,0x62,0x74,0x61,0x21,0x7a,0x20,0x60};    //数码管码表
code uchar tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};      //数码管位选
sbit bz=P3^3;   //喇叭位
uchar outdata; //模拟量输出值
sbit k1=P1^2 ;   //模拟量输出者增加
sbit k2=P1^1;   //模拟量输出者减少
void delay(uint k)    //延时子函数
{
while(k--);
}
  
void key1()    //模拟输出值增加
{
if(k1==0)
{
delay(1000);
if(k1==0)
outdata++;
}
}
void key2()     //模拟输出值减少
{
if(k2==0)
{
delay(1000);
if(k2==0)
outdata--;
}
}
void ADCinshow(uchar dd)   //模拟量输入值显示
{
   P0=seg[dd/100];
   P2=tab[7];
   delay(8);
   P0=0xff;                             //显示消影
   P2=0xff;
   P0=seg[dd%100/10];
   P2=tab[6];
   delay(8);
   P0=0xff;
   P2=0xff;
   P0=seg[dd%10];
   P2=tab[5];
   delay(8);
   P0=0xff;
   P2=0xff;
}

void ADCoutshow(uchar k)    //模拟量输出值显示
{
P0=seg[k/100];
P2=tab[2];
delay(8);
P0=0xff;
P2=0xff;
P0=seg[k%100/10];
P2=tab[1];
delay(8);
P0=0xff;
P2=0xff;
P0=seg[k%10];
P2=tab[0];
delay(8);
P0=0xff;
P2=0xff;
}


8591c (1).rar

1.59 KB, 下载次数: 9, 下载积分: 黑币 -5






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1