延迟程序:
#ifndef __DELAY_H__
#define __DELAY_H__
#include
#define uchar unsigned char
#define uint unsigned int
extern void _nop_ (void);
/************************************************
** 函数名称 :Delay(uint T)
** 函数功能 : 延时函数
** 输 入 :T--延时倍数 大小--0~65535
************************************************/
void delay(uint T)
{ uchar i;for(T;T>0;T--)
for(i=120;i>0;i--);}
#endif
主程序:
#include "lcd1602.h"
#include"adc0832.h"
/************************************************
** 函数名称 :void main(void)
** 函数功能 : 主函数
************************************************/
void main(void)
{ float qs_fs=0;//风度变量
uchar disp1[16]={" FengSu System "};
uchar disp2[16]={" QS-FS:00.0m/s "};
LCD_Init();//LCD初始化
while(1)
{ if((adc0832(1)*50/255)<4)qs_fs=0;
else
qs_fs=(((adc0832(1)*5/255)-0.4)/1.6)*324;//读取风速
disp2[7]=(uint)qs_fs/100+0x30;//百位
disp2[8]=(uint)qs_fs/10%10+0x30; //十位
disp2[10]=(uint)qs_fs%10+0x30; //个位
WriteChar(1,0,16,disp1); //第一行显示内容
WriteChar(2,0,16,disp2); //第二行显示内容 }}
LCD1602的程序:
#ifndef __LCD1602_H__
#define __LCD1602_H__
#include"delay.h" //添加延时函数头文件
#define LCD_PINDATA P0 //数据端口定义P2
sbit RS = P1^3; //RS P0^7
sbit RW = P1^4; //RW P0^6
sbit E = P1^5; //E P0^5
sbit D0 = P2^7;
sbit D1 = P2^6;
sbit D2 = P2^5;
sbit D3 = P2^4;
sbit D4