注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
鑫海宝贝的个人空间 https://home.eeworld.com.cn/space-uid-283463.html [收藏] [复制] [分享] [RSS]
日志

基于mega16的温湿测量仪

已有 1102 次阅读2011-3-7 16:12

        这原来是一个小项目,目的是用sht10温湿传感器对室外的温湿度值采集,依靠从机将数据经过无线24l01模块发送到室内主机上,进行显示;

        在单独一部单片机上已经实现显示了,这部分是我同学调试通过的,就是这个无线我就一直没有调试通过,老尴尬了,现在与大家一起分享这份资料吧,看看有没有好点子的。

        稍后我将图片传上来,我先将资料接口方法资料给大家。

     主程序:

/***************************************
SHT10测试程序(根据手册中的时序写的)
MCU:ATmega16
晶振:8M
编译器:ICCAVR

*****************************************/
#include <iom16v.h>
#include <avrdef.h>    
#include "12864.c"
#include "shit10.h"
//#include "test.c"
#include "delay.c"

/*=====宏定义=======================================*/
#define RESET 0x1e     //0001 1110


/*=====函数声明===============================================*/
void delay_ms(int t);
void s_transstart(void);
char s_write_byte(unsigned char value);  //写入一个字节的命令,并且检查传感器是否正确接收了这个数据,返回值为0表示正确接收
char s_read_byte(unsigned char ack);  //读一个字节的数据,并且向传感器发出一个字节的“已接收”信号
int s_measure(unsigned char mode);   //进行一次测量
void calc_sth11(float *p_humidity ,float *p_temperature);//测量结果修正


//-----温湿度显示------------------------------------------------
char a[]="00.00 C";
char b[]="00.00 %"; 
char c[]="Temp:";
char d[]="Humi:";

/*-----主函数-----------------------------------------------------------*/
void main(void)
{
 float temp,humi;
 delay_ms(20);  //越过休眠状态
 init_lcd();
 while(1)
 {   
         //init_NRF24L01();
         temp= s_measure(TEMP);
      humi= s_measure(HUMI);
      calc_sth11(&humi,&temp);
         a[0]=(int)(temp*100)/1000+0x30;
      a[1]=(int)(temp*100)/100%10+0x30;
      a[3]=(int)(temp*100)/10%10+0x30;
      a[4]=(int)(temp*100)%10+0x30;
         lcd_write(1,3,a);             //lcd_wright(行,列,数组) '字符显示位置'
      lcd_write(1,0,c);
   
         b[0]=(int)(humi*100)/1000+0x30;
      b[1]=(int)(humi*100)/100%10+0x30;
      b[3]=(int)(humi*100)/10%10+0x30;
      b[4]=(int)(humi*100)%10+0x30;
         lcd_write(2,3,b);
   lcd_write(2,0,d);           
      delay_ms(1000);
 }
}

本文含有来自论坛的附件或图片:[基于mega16的温湿测量仪.rar],点击查看原帖附件。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章