标题:
单片机数字电压表程序求解
[打印本页]
作者:
yanchen
时间:
2015-12-23 15:30
标题:
单片机数字电压表程序求解
求单片机数字电压表程序
IMG_20151223_121730.jpg
(444.25 KB, 下载次数: 251)
下载附件
2015-12-23 15:29 上传
作者:
51黑ren
时间:
2015-12-23 15:36
给你个程序参考一下:
http://www.51hei.com/bbs/dpj-33255-1.html
作者:
ら_伱许的情
时间:
2015-12-24 14:22
把1602调好了、再采集到ADC的值/最大采样值*5
作者:
腾飞的龙
时间:
2015-12-24 22:06
论坛里这样的程序很多,多找找,遇到不明白在请教多好,还能学到东西。
作者:
黑子斑
时间:
2016-6-22 17:15
连线就是那个黑线什么意思?
作者:
shirushan123
时间:
2017-2-20 15:50
第一个图片是哪本书?
作者:
angmall
时间:
2017-2-21 15:01
#include<reg52.h>
#include"intrins.h"
#define uchar unsigned char
#define uint unsigned int
sbit OE =P2^7;
sbit EOC=P2^6;
sbit START=P2^5;
sbit CLK=P2^4;
sbit CS0=P2^0;
sbit CS1=P2^1;
sbit CS2=P2^2;
sbit CS3=P2^3;
uint adval,volt;
uchar tab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};
void delayms(uint ms)
{
uchar j;
while(ms--)
{
for(j=0;j<120;j++);
}
}
void ADC_read()
{
START=0;
START=1;
START=0;
while(EOC==0);
OE=1;
adval=P1;
OE=0;
}
void volt_result()
{
volt=adval*1.96;
}
void disp_volt(uint date)
{
CS0=1;CS1=0;CS2=0;CS3=0;
P0=~((~tab[date/100])|0x80);
delayms(1);
P0=0xFF;
CS0=0;CS1=1;CS2=0;CS3=0;
P0=tab[date%100/10];
delayms(1);
P0=0xFF;
CS0=0;CS1=0;CS2=1;CS3=0;
P0=tab[date%10];
delayms(1);
P0=0xFF;
CS0=0;CS1=0;CS2=0;CS3=1;
P0=tab[date%100];
delayms(1);
P0=0xFF;
}
void t0()interrupt 1
{
CLK=~CLK;
}
void t0_init()
{
TMOD=0x02;
TH0=0x14;
TL0=0x00;
TR0=1;
ET0=1;
EA=1;
}
void main(void)
{
t0_init();
while(1)
{
ADC_read();
volt_result();
disp_volt(volt);
}
}
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1