完整的仿真文件和单片机程序在本文尾部附件里
部分源码:
- void UART_INIT()
- {
- SM0 = 0;
- SM1 = 1;//串口工作方式1
- REN = 1;//允许串口接收
- EA = 1;//开总中断
- ES = 1;//开串口中断
- TMOD|= 0x20;//8位自动重装模式
- TH1 = 0xfd;
- TL1 = 0xfd;//9600波特率
- TR1 = 1;//启动定时器1
- }
- void delay(uint a)
- {
- uint x,y;
- for(x=0;x++;x<a)
- for(y=0;y++;y<110);
- }
- void display()
- {
- LcdShowStr(0,0,"T:"); //温度
- DisplayOneStr(2,0,tmp()%1000/100);
- DisplayOneStr(3,0,tmp()%1000%100/10);
- LcdShowStr(4,0,".");
- DisplayOneStr(5,0,tmp()%10);
- LcdShowStr(6,0,"C");
-
- LcdShowStr(8,0,"H:"); //湿度
- DisplayOneStr(10,0,num1/100);
- DisplayOneStr(11,0,num1%100/10);
- DisplayOneStr(12,0,num1%100%10);
- LcdShowStr(13,0,"%");
- tmpchange();
- if(key1==0 && buzz==1)
- {
- TI=1;
- printf("Humidity:");//湿度
- printf("%x",num1/100);
- printf("%x",num1%100/10);
- printf("%x",num1%100%10);
- printf("%%\n");
- printf("\n");
- printf("\n");
- printf("Temperature:");//温度
- printf("%x",tmp()%1000/100);
- printf("%x.",tmp()%1000%100/10);
- printf("%x",tmp()%10);
- printf(".C\n");
- printf("\n");
- printf("\n");
- printf("\n");
- while(key1==0);
- }
- }
- /******外部中断1初始化******/
- void intlInit()
- {
- EA=1;//开总中断
- EX1=1;//开外部中断1中断
- EX0=1;//开外部中断0中断
- IT1=1;//中断方式1,下降沿方式
- IT0=1;//中断方式1,下降沿方式
- }
- void main()
- {
- InitLcd1602();
- inter();
- UART_INIT();
- intlInit();
- TR0=1;
- buzz=0;
- while(1)
- {
- EA=0;
- num1=du24c02(0);//湿度
- num1=num1/2.55;
- EA=1;
- delay(5);
- display();
复制代码
完整单片机源码和proteus仿真文件.rar
(324.62 KB, 售价: 3 E币)
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|
|