标签:毕设 582 RS 温湿度 1602 char P1 0x30 sbit
【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
使用proteus打开原理图文件,双击AT89C52,将hex文件添加,运行即可。如需要更改代码,在main.c中更改即可。
sbit CS=P1^1; //ADC片选 sbit DI=P1^4; //ADC输入 sbit DO=P1^5; //ADC输出 sbit CLK=P1^0; //ADC时钟信号 sbit FAN=P2^5; sbit SP2=P2^6; sbit LEDR=P1^6; sbit LEDG=P1^7; sbit SCK=P1^2; sbit DATA=P1^3; sbit ADCS=P0^0; sbit ADCLK=P0^1; sbit ADDO=P0^2; sbit HEAT=P0^3; sbit s485_s = P3^3; //485控制信号 #define DISPLAY_LEFT_TO_RIGHT 1//从左边数计算列位置,每写完一个字节,列数自动向右移动一个 #define DISPLAY_RIGHT_TO_LEFT 0//从右边数计算列位置,每写完一个字节,列数自动向左移动一个 #define uchar unsigned char /* 1光强 6温度 10湿度 14CH4 18CO 22气压 26加热炉温度 */ char data_res[32]={' ',0x30,0x30,0x30,' ','+',0x30,0x30,0x30,' ',0x30,0x30,0x30,' ',0x30,0x30,0x30,' ',0x30,0x30,0x30,' ',0x30,0x30,0x30,' ',0x30,0x30,0x30,' '}; //数据返回形式1 char data_n[10]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39}; int Num; /* void busy_1602() //判忙LCD忙闲? { do { P2=0xff; RS=0; //RS=0,RW=1时才可读忙信号 RW=1; E=0; _nop_(); E=1; }while(bflag); //当其值为0时,表示不忙,才可以接收命令或者数据信号 } void wreg_1602(unsigned char com) //函数功能:写指令函数 { busy_1602(); RS=0; //当RS=0,RW=0时,表明写入的是命令 RW=0; E=1; P2=com; //当使能由高到低时,LCD执行相应命令 E=0; } void wdata_1602(unsigned char dat) //函数功能:写数据函数 { busy_1602();
标签:毕设,582,RS,温湿度,1602,char,P1,0x30,sbit 来源: https://www.cnblogs.com/ythero/p/14082376.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。