标题:
用ADC0832设计的两路电压表 LCD1602显示空白 求帮助
[打印本页]
作者:
270199616a
时间:
2018-6-26 12:23
标题:
用ADC0832设计的两路电压表 LCD1602显示空白 求帮助
ad0832 LCD1602显示
0.png
(27.1 KB, 下载次数: 58)
下载附件
2018-6-27 01:32 上传
0.png
(20.66 KB, 下载次数: 56)
下载附件
2018-6-27 01:32 上传
单片机源程序如下:
#include<reg52.h>
#include<intrins.h>
#include<stdio.h>
#include"define.h"
#include"delay.h"
#include"LCD1602.h"
#include"ADC0832.h"
void main(){
LCD_init();
P1=0;
CP_RL2=0;EXEN2=0; //T2初始化,控制灰尘led
led=1;
TH2=RCAP2H=(65536-500)/256;
TL2=RCAP2L=(65536-500)%256;
ET2=1;
EA=1;
TR2=1;
TMOD=0x21; //T0初始化,控制电机 t1初始话timer 1, mode 2, 8-bit 重装
ET0=1;
dir=0;
cp=1;
SCON = 0x50; // 串口初始化,SCON: 模式 1, 8-bit UART, 使能接收
TH1 = 0xFD; // TH1: 重装值 9600 波特率 晶振 11.0592MHz
TR1 = 1; // TR1: timer 1 打开
ES = 1;
while(1){
ADC_change(0);
LCD_buffer[0][8]=dat/100+'0';
LCD_buffer[0][10]=dat/10%10+'0';
LCD_buffer[0][11]=dat%10+'0';
LCD_display(0x00,LCD_buffer[0]);
delay(10);
if(lanya=='0'){
TR0=0;
spk=0;
}
else if(lanya=='3'){
if(dat>200){
speed=1000;
TH0=(65536-speed)/256;
TL0=(65536-speed)%256;
TR0=1;
LCD_display(0x40,LCD_buffer[2]);
spk=1;
}
else if(dat<=200){
TR0=0;
LCD_display(0x40,LCD_buffer[1]);
spk=0;
}
}
else if(lanya=='1'){
speed=500;
TR0=1;
spk=0;
}
else if(lanya=='2'){
speed=50;
TR0=1;
spk=0;
}
}
}
void timer2() interrupt 5
{ TF2=0;
led=~led;
}
void timer0() interrupt 1
{
TH0=(65536-speed)/256;
TL0=(65536-speed)%256;
cp=~cp;
}
void UART_SER (void) interrupt 4 //串行中断服务程序
{
unsigned char Temp; //定义临时变量
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
用ADC0832设计的两路电压表.rar
(94.73 KB, 下载次数: 123)
2018-6-26 12:23 上传
点击文件名下载附件
作者:
12345678..
时间:
2018-12-6 23:05
量程多少
作者:
cmyldd
时间:
2018-12-7 01:55
比较老的的资料,新手可以看下,觉得还是实物实操好点
作者:
wyyxz
时间:
2023-4-22 16:09
不能能使,LCD1602不显示
作者:
user2402167
时间:
2023-10-6 02:04
P0接上拉电阻或者换P1口试试。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1