⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 leddiplay.c

📁 基于AT89S51单片机和HS1101做的相对湿度检测。需要的可以下载参考。
💻 C
字号:
/*
led 显示模块

*/
#include <types.h>
#include <reg51.h>
#include <absacc.h>
#include <intrins.h>
#define Disdata P0
#define discan	P2

sbit DIN=P0^7;
u_char code dis_8[12]={0xff,// 0
				   0xdb,	// 1
				   0xa2,	// 2
				   0x8a,	// 3
				   0x99,	// 4
				   0x8c,	// 5
				   0x84,	// 6
				   0xda,	// 7
				   0x80,	// 8
				   0x88,	// 9
				   0xff,	//"灭"
				   };/*0~9的数码管段码*/
/***********us延时函数*******************/
u_char code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x80,0x08,0x09,0x09};
u_char code scan_con[4]={0xfe,0xfd,0xfb,0xf7};
u_char data wet_data[1]={0x00};
u_char data display[5]={0x00,0x00,0x00,0x00,0x00};//显示单元数据,共4个数据,一个运算暂存用
void delay(u_int t)
{
	for(;t>0;t--);
}

/*显示扫描***********************/
void scan(void)
{
	char k;
	for(k=0;k<4;k++)
		{
			Disdata=dis_8[display[k]];
			if(k==1)
				{
					DIN=0;
				}
				discan=scan_con[k];
				delay(90);
				discan=0xff;
		}
}

/***************湿度数据处理函数*************/
wetdata_process()
{	
	display[4]=wet_data[1]&0x0f;
	display[0]=ditab[display[4]];
	display[4]=((wet_data[0]&0xf0)>>4);
	display[3]=display[4]/100;
	display[1]=display[4]%100;
	display[2]=display[1]/10;
	display[1]=display[1]%10;
	if(!display[3])
	{
		display[3]=0x0a;
		if(!display[2])
			{
				display[2]=0x0a;
			}
	}

	
	
}






⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -