TSL2561 LCD结合显示.docxVIP

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
TSL2561 LCD结合显示

#includereg52.h#include intrins.h //TSL2561地址#define uchar unsigned char#define uint unsigned int//设备读写地址#define SLAVE_ADDR_WR 0x52#define SLAVE_ADDR_RD 0x53//命令控制寄存器#define CONTROL 0x80#//define TIMING 0x81#define DATA0LOW 0x8C#define DATA0HIGH 0x8D#define DATA1LOW 0x8E#define DATA1HIGH 0x8Fuchar DataLow0,DataHigh0,DataLow1,DataHigh1,commad;long double Channel0,Channel1;unsigned long temp=0,wet=0;float ratio;unsigned char le[6];//LCD控制脚sbit LCD_RS = P2^5; sbit LCD_RW = P2^6; sbit LCD_EN = P2^7; sbit sda = P2^0;sbit scl = P2^1;void delay(){;;;}uchar code cdis3[ ] = {guangzhaoshiyan};uchar code cdis4[ ] = {qdu: Lux} ;#define delayNOP() {_nop_() ;_nop_() ;_nop_() ;_nop_() ;} void delay1(int ms){ unsigned char y ; while(ms--) { for(y=0;y250;y++) { _nop_() ; _nop_() ; _nop_() ; _nop_() ; } }}void delays(unsigned int cnt) { while(--cnt);}void delay1ms(uchar x){uchar a,b;for(a=x;a0;a--)for(b=100;b0;b--);}/******************************************************************//*检查LCD忙状态 *//*lcd_busy为1时,忙,等待。lcd-busy为0时,闲,可写指令与数据。 *//******************************************************************/ bit lcd_busy() { bit result ; LCD_RS = 0 ; LCD_RW = 1 ; LCD_EN = 1 ; delayNOP() ; result = (bit)(P00x80) ; LCD_EN = 0 ; return(result) ; }/*写指令数据到LCD *//*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 *//*******************************************************************/void lcd_wcmd(uchar cmd){ while(lcd_busy()) ; LCD_RS = 0 ; LCD_RW = 0 ; LCD_EN = 0 ; _nop_() ; _nop_() ; P0 = cmd ; delayNOP() ; LCD_EN = 1 ; delayNOP() ; LCD_EN = 0 ; }/*******************************************************************//*写显示数据到LCD *//*RS=H,RW

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档