دماسنج و رطوبت سنج با سنسور DHT11 (ورژن3-دمابرروی کامپیوتر!)

در اين بخش مي‌توانيد طرح آماده و کامل شده مرتبط با میکروکنترلرهای AVR را مشاهده بفرمایید

مدیران انجمن: SAMAN, sinaset, شوراي نظارت

نظرتان در رابطه با طرح های موجود در تاپیک چیست؟!

طرح های خوب و کاربردی و مفیدی هستن ادامه دهید
4
80%
طرح های خوبیست،اما سنسور DHT11 چندان ارزش توسعه ندارد!
1
20%
بطوری کلی طرح جایی کار بیشتر میداشت.
0
بدون راي
 
مجموع رای گیری: 5

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

دماسنج و رطوبت سنج با سنسور DHT11 (ورژن3-دمابرروی کامپیوتر!)

پست توسط sinaset » پنج شنبه 17 دی 1394, 11:00 am

بنام خدواند بخشنده و مهربان
با سلام


دماسنج و رطوبت سنج با سنسور DHT11
 تصویر 
 تصویر 
در این تاپیک می خواهیم دماسنج و رطوبت سنج را با سنسور DHT 11 راه اندازی کنیم .(*لازم به ذکر است ،در اینتاپیک سنسور DHT22 را راه اندازه ی کردیم )

نکات قابل ذکر


*این سنسور هم به مانند سنسور DHT22 درونش یک ایسی به کار رفته که اطلاعات را به صورت کدهای 0 و 1 برای ما ارسال می کند و بدین وسیله ما را از محاسبات دما و رطوبت بی نیاز می کند!(اما این همه داستان نیست، چون خود ترجمه کدهای ارسالی از ایسی ،پروسسور تقریبا سختی می باشد،که البته با کتابخانه نوشته شده این مشکل برطرف شده است.)
*این سنسور دمایی ما بین 0 تا 50 درجه سانتی گراد! و رطوبت ما بین 20 تا 90 درصد را می تواند اندازه بگیرید.

* سایز این سنسور نسبت به مدل ارتقاع یافته(dht22) کوچیک تر می باشد.
 تصویر 

*برای کتابخانه شبیه ساز DHT برای پرتئوس به اینادرس مراجعه فرمایید.

*پایه های سنسور DHT 11
 تصویر 
*نحویه وصل شدن سنسور به مدار
 تصویر 
تست و ازمایش


به شخصه یک ازمایش با سنسور مد نظر انجام دادم می توانید در تصویر زیرببینید
 تصویر  سمت چپ تصویر دمایی سنسور DHT22 و در سمت راست DHT11   که در تصویر می ببینید،دماها یکی هستن ، ولی بین روطوبت سنج حدود 15 درجه اختلاف وجود دارد! که این اختلاف علاوه بر کوچک تر بودن سایز dht11 مربوط به دقت پایین تر این سنسور می باشد. (DHT11 قیمت 5000 تومان، و DHT22 قیمتش 17000تومان می باشد)   ازمایشات که این جانب انجام دادم،سرعت عمل DHT22 بسیار بالاتر از DHT11 بود و سنسور DHT11 دیرتر نسبت به تغییرات واکنش نشان میداد.    کلی DHT11 سنسور خوب و ارزان قیمتی می باشد، و میشود با کمی تغییرات،(مثل دور کردن سنسور از مدار، و گذاشتن ان در مکانی که جریان هوا را بهتر لمس کند) اندازه گیری ان را بهبود داد.  کتابخانه نوشته شده برای این سنسور.   نوشته شده برای این سنسور ساده و خوب و کاربردی می باشد،(که به اندازه توانم برایتان ترجمه کرده ام)  

کد: انتخاب همه

/*
DHT-11 Library
(c) Created by Charalampos Andrianakis on 18/12/11.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/   
/*
کتابخانه ساخته شده براي سنسور دي اچ تي 11
اين سنسور قابليت اندازه گيري دما از 0 تا 50 درجه سانتي گراد و رطوبتون از 20 تا 90 درصد را دارد
*/
#include <stdlib.h>
#include <io.h>
#include <delay.h>
#include <stdint.h>

//معرفي پين و پورت وصل شده به سنسور
#define DHT11_DDR DDRD    //در اين قسمت بايد پورت مورد نظرتان به حالت زير تعرف کنيد
#define DHT11_PORT PORTD   //يک بار با دستور پورت
#define DHT11_PIN PIND    //و يک بار ديگر با دستور پين
#define DHT11_INPUTPIN 0    //شماره پايه پورتي که سنسور به ان وصل مي باشد را به جايي عدد نوشته شده ذکر کنيد

//معرفي اخطارها
#define DHT_ERROR0 250 // وصل نشده استDHT سنسور
#define DHT_ERROR1 251 // ارتباطات مشکل دارد
#define DHT_ERROR2 252 //خطا در اناليزم ديتال ارسالي

//مشخص کردن ترتيب خواندن رطوبت سنج و دما سنج سنسور
#define DHT11_DATA_TEMPERATURE    0   // ابتدا دماسنج خوانده شود
#define DHT11_DATA_HUMIDITY    1    //سپس رطوبت خوانده شود

//توابع زير دستورا خواندن سنسور را بارگذاري مي کنند.
extern uint8_t DHT11_GetData(uint8_t select);
extern int temperature();
extern int humidity();


کد و توابع کتابخانه dht11 به پسوند C


کد: انتخاب همه

//DHTدستورات کتابخانه11 

//معرفي کتابخانه
#include <stdlib.h>
#include <io.h>
#include <delay.h>
#include "DHT.h"

uint8_t DHT11_GetData(uint8_t select) {
   uint8_t bits[5];
   uint8_t i, j = 0;

   //reset port
   DHT11_DDR |= (1 << DHT11_INPUTPIN); //output
   DHT11_PORT |= (1 << DHT11_INPUTPIN); //high
   delay_ms(100);

   //send request
   DHT11_PORT &= ~(1 << DHT11_INPUTPIN);  //low
   delay_ms(18);
   DHT11_PORT |= (1 << DHT11_INPUTPIN); //high
   delay_us(1);
   DHT11_DDR &= ~(1 << DHT11_INPUTPIN); //input
   delay_us(39);

   //check start condition 1
   if ((DHT11_PIN & (1 << DHT11_INPUTPIN))) {
      return DHT_ERROR0;
   }
   delay_us(80);
   //check start condition 2
   if (!(DHT11_PIN & (1 << DHT11_INPUTPIN))) {
      return DHT_ERROR1;
   }
   delay_us(80);

   //read the data
   for (j = 0; j < 5; j++) { //read 5 byte
      uint8_t result = 0;
      for (i = 0; i < 8; i++) { //read every bit
         while (!(DHT11_PIN & (1 << DHT11_INPUTPIN)))
            ;//wait for an high input
         delay_us(30);
         if (DHT11_PIN & (1 << DHT11_INPUTPIN)) //if input is high after 30 us, get result
            result |= (1 << (7 - i));
         while (DHT11_PIN & (1 << DHT11_INPUTPIN))
            ; //wait until input get low
      }
      bits[j] = result;
   }

   //reset port
   DHT11_DDR |= (1 << DHT11_INPUTPIN); //output
   DHT11_PORT |= (1 << DHT11_INPUTPIN); //low
   delay_ms(100);
   //check checksum
   if (bits[0] + bits[1] + bits[2] + bits[3] == bits[4]) {
      if (select == DHT11_DATA_TEMPERATURE) { //return temperature
         return (bits[2]);
      } else if (select == DHT11_DATA_HUMIDITY) { //return humidity
         return (bits[0]);
      }
   }

   return DHT_ERROR2;
}
int temperature()
{
   char ret = DHT11_GetData(0);
   if(ret == DHT_ERROR2) {
      return -1;
   } else {
      return ret;
   }
}
int humidity()
{
   char ret = DHT11_GetData(1);
   if(ret == DHT_ERROR2) {
      return -1;
   } else {
      return ret;
   }
}

-----------
کد برنامه برای میکرو مگا8 و ال سیدی 16*2 کارکتری

کد: انتخاب همه

/*******************************************************
Project :DHT 11 Temp And HUMIDITY
Author  : Ivan Zharinov

Edit by:sinaset
Version :v1.0
Date    : 01/06/2016

Chip type         : ATmega8A
AVR Core Clock frequency: 8.000000 MHz
*******************************************************/
#include <mega8.h>
#include <alcd.h>
#include <delay.h>
#include <stdio.h>
#include "dht.h"    //معرفي کتابخانه سنسور

unsigned char strtmp[16],strhum[16];    //معرفي ارايه ها ،براي نمايش بر روي ال سيدي

void main(void)
{
lcd_init(16);  //معرفي ال سيدي2*16 کاراکتري
lcd_clear();   //پاک کردن ال سي دي
while (1)
    {
    sprintf(strtmp, "TEMP = %-03d\n", temperature());  //strtempريختن  عدد صحيح بدست امده درون ارايه
   
    sprintf(strhum, "HUMIDITY = %-03d\n", humidity()); //strhumريختن عدد صحيح بدست امده درون ارايه
      
    lcd_gotoxy(0,0);    //ال سي دي در سطر 1 و ستون 1
    lcd_puts(strtmp);   //نمايش دما بر روي ال سيدي
      
    lcd_gotoxy(0,1); // ال سي دي در سطر 2 و ستون 1
    lcd_puts(strhum); //نمايش رطوبت سنج بر روي ال سيدي
    delay_ms(2000);  // حدود 2 ثانيه تاخير براي بارگذاري مجدد سنسور
    }
}


در نهایت می توانید سورس و شبیه ساز رو از [لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید] دانلود کنید
فایل هگز رو هم می توانید جداگانه از [لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید] دانلود کنید

باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن1)

پست توسط sinaset » چهار شنبه 17 شهریور 1395, 4:23 pm

بنام خدا
باسلام


ورژن شماره 2 ،ارسال وایرلس دما! (با ماژول RF433Mhz)
 تصویر 
ورژن شماره 2 ، سنسور دما و رطوبت سنج DHT11 رو به کمک یک عدد ماژول فرستنده Rf433mhz و یک عدد گیرنده Rf433Mhz و دو عدد میکروکنترولر Atmega8 و یک LCD را با قابلیت ارسال وایرلس دما در محدود حدود 30 تا 50 متر کرده ایم .

سخت افزار مدار ،تقریبا ارزان قیمت می باشد،وتقریبا هزینه بالا نمی شود  تصویر 
نکات:
باید فیوزبیت میکروکنترولر را بر روی خارجی تنظیم کنید.(و بخاطر داشته باشید فیوزبیتCKOPT را 0 یا فعال کنید)
مقاومت پول آپ را نیز حتما به پایه DATA ماژول فرستنده و ماژول گیرنده RF433 وصل کنید (به مانند تصویر)
کتابخانه ماژول RF433 برای پرتئوس از اینادرس دانلود کنید.
کدهایی فرستنده سه بار پشت سر هم ارسال میشود (چون ماژول ها RF433 خطا دارند،برای بهتر ارسال شدن،دستور ارسال سه بار پشت سر هم ارسال میشود)
ویدئوی از آزمایش مدار در [لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید]ادرس
اگر پیشنهاد در زمینه بهتر شدن مدار بود،لطفا بفرمایید تا برنامه اصلاح شود

کدهایی فرستنده:

کد: انتخاب همه


/*******************************************************
PROJECT:Send send & receive DHT11 V2.1
by:sinaset
Site:centralclubs.com
Chip type         : ATmega8
AVR Core Clock frequency: 11.059200 MHz
*******************************************************/
#include <mega8.h>
#include <alcd.h>
#include <string.h>
#include <stdlib.h>
#include <delay.h>
#include <stdio.h>
#include "dht.h"    //معرفي کتابخانه سنسور

void main(void)
{
unsigned char str2[16];
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 4800
UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
UCSRB=(0<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (0<<RXEN) | (1<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
UBRRH=0x00;
UBRRL=0x8F;

lcd_init(16);
lcd_putsf("TEST");
delay_ms(400);
lcd_clear();
while (1)
     {
          lcd_clear();
          lcd_gotoxy(0,0);
          sprintf(str2,"&sms:%-03d\n%-03d\n*$",temperature(), humidity());       //دريافت دما و رطوبت و اضافه کردن رمز در يک رشته
          puts(str2);  //ارسال 3 بار ديتا
          puts(str2);
          puts(str2);
          delay_ms(2500);    //مدت زمان تاخير براي ارسال دما و رطوبت
    }      
}


کدهایی گیرنده:

کد: انتخاب همه

/*******************************************************
PROJECT:Send send & receive DHT11 V2.1
by:sinaset
Site:centralclubs.com
Chip type         : ATmega8
AVR Core Clock frequency: 11.059200 MHz
*******************************************************/
#include <mega8.h>
#include <alcd.h>
#include <stdio.h>
#include <string.h>
#include <delay.h>

#define DATA_REGISTER_EMPTY (1<<UDRE)
#define RX_COMPLETE (1<<RXC)
#define FRAMING_ERROR (1<<FE)
#define PARITY_ERROR (1<<UPE)
#define DATA_OVERRUN (1<<DOR)
#define RX_BUFFER_SIZE 32
char rx_buffer[RX_BUFFER_SIZE];
#if RX_BUFFER_SIZE <= 256
unsigned char rx_wr_index=0,rx_rd_index=0;
#else
unsigned int rx_wr_index=0,rx_rd_index=0;
#endif
#if RX_BUFFER_SIZE < 256
unsigned char rx_counter=0;
#else
unsigned int rx_counter=0;
#endif
bit rx_buffer_overflow;      

bit on=0;   //بيت براي روشن  پيام دريافتي
bit ok=1;
char str[32],str2[32],str3[32];
char i=0;
char f=2;
char null='';  //متغيير خالي

void clean(void)    //پاک سازي  داده ها
{
   char rest;
    for(rest=0;rest<32;rest++)
    {
   str[rest]=0;
   str2[rest]=0;
    }
}
interrupt [USART_RXC] void usart_rx_isr(void)
{
char status,data;
char x;
status=UCSRA;   
data=UDR;

  if(data=='$' || data=='&')clean();    //کد خاتمه و پاک سازي
  str[I]=data;
  i++;
  if(i==32)i=0; 
  if(data=='&')i=0,clean();        //کد اماده سازي 

         if(ok==1 && str[0]=='s' && str[1]=='m' && str[2]=='s')
         {   
          sprintf(str2,"%s",str);          
          if( str2[f]=='*')
          {
          str2[f]=null;
          ok=0;

          for(x=0;x<32;x++)str3[x]=0;
            
          sprintf(str3,"%s",str2);   
          on=1;    //بيت دريافت پيام روشن شود
          f=1;   
          }
          f++;
         }
                           
if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0)
   {
   rx_buffer[rx_wr_index++]=data;
#if RX_BUFFER_SIZE == 256  // special case for receiver buffer size=256 
   if (++rx_counter == 0) rx_buffer_overflow=1;
#else
   if (rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0;
   if (++rx_counter == RX_BUFFER_SIZE)
    {
    rx_counter=0;
    rx_buffer_overflow=1;
    }   
#endif
   }      
}   
#ifndef _DEBUG_TERMINAL_IO_
// Get a character from the USART Receiver buffer
#define _ALTERNATE_GETCHAR_
#pragma used+
char getchar(void)
{
char data;
while (rx_counter==0);
data=rx_buffer[rx_rd_index++];
#if RX_BUFFER_SIZE != 256
if (rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0;
#endif
#asm("cli")
--rx_counter;
#asm("sei")
return data;
}
#pragma used-
#endif

void main(void)
{
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Mode: Asynchronous
// USART Baud Rate: 4800
UCSRA=(0<<RXC) | (0<<TXC) | (0<<UDRE) | (0<<FE) | (0<<DOR) | (0<<UPE) | (0<<U2X) | (0<<MPCM);
UCSRB=(1<<RXCIE) | (0<<TXCIE) | (0<<UDRIE) | (1<<RXEN) | (0<<TXEN) | (0<<UCSZ2) | (0<<RXB8) | (0<<TXB8);
UCSRC=(1<<URSEL) | (0<<UMSEL) | (0<<UPM1) | (0<<UPM0) | (0<<USBS) | (1<<UCSZ1) | (1<<UCSZ0) | (0<<UCPOL);
UBRRH=0x00;
UBRRL=0x8F;

DDRD.7=1;
PORTD.7=0;
lcd_init(16);

lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("TEST");
delay_ms(400);
lcd_clear();

#asm("sei") //اجرا وقفه براي واحد يوآرت

//فعال سازي واچ داگ،براي زماني که ديتا بدرستي  دريافت نشود و ميکرو هنگ کند
// Watchdog Timer Prescaler: OSC/2048k
#pragma optsize-
WDTCR=(1<<WDCE) | (1<<WDE) | (1<<WDP2) | (1<<WDP1) | (1<<WDP0);
WDTCR=(0<<WDCE) | (1<<WDE) | (1<<WDP2) | (1<<WDP1) | (1<<WDP0);
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif


while (1)
     {
     #asm("WDR")    //ريست شدن واچ داگ
    
     if(on==1)      //درصورتي که ديتا دريافت شده،اين شرط اجرا ميشود
     {
     PORTD.7=1;
     delay_ms(10);
     PORTD.7=0;
     lcd_clear();
     sprintf(str,"Temp:%c%c HUM:%c%c",str3[4],str3[5],str3[8],str3[9]);
     lcd_puts(str);
     ok=1;     //اين شرط وقتي صفر باشد،ديتا جديد،در زمان اجراء کدها خوانده نمي شود
     on=0;
     }
    }      
}         


[لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید]شبیه ساز و برنامه.
باتشکر.[/I]
آخرین ويرايش توسط 1 on sinaset, ويرايش شده در 0.
دلیل: ویرایش کدها،بدلیل اشتباهات برنامه نویسی.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » یک شنبه 27 فروردین 1396, 11:15 pm

سلام
ببخشید من این برنامه رو میخواستم روی پورت d به lcd متصل کنم چون برنامه رو نداشتم نتونستم از پورت b به d انتقال بدم
و اینکه این برنامه رو زبان بسکام هم دارید؟
نکته آخر اینکه برای پول آپ پایه دیتا سنسور از مقاومت 4.7 استفاده بشه یا 5؟ و این مقاومت تو چه رنجی باید باشه؟

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط sinaset » دو شنبه 28 فروردین 1396, 8:01 am

سلام بر شما
لطفا ورژن برنامه مد نظرتان را بفرمایید،انتقال پورت ها،LCD هم کار چندان مشکلی نیست،فقط در کدویژن در قسمت تنظیمات باید،پایه ها LCD را برای پورت D تنظیم کنید.
خیر.اما می توانید فایل هگز برنامه را برداشته و مستقیما پروگرام کنید.
در رابطه با مقاومت،تفاوتی چندان ندارد! 4.7 باشد یا 5 کیلو اهم .. (بطور کلی مقاومت پول اپ نسبت به شرایط از 4.7 کیلو اهم تا 10 کیلو اهم می باشد،که در رابطه با این سنسور،خودشون گفتن 5 کیلواهم بزارید...)
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » دو شنبه 28 فروردین 1396, 3:29 pm

sinaset نوشته شده:سلام بر شما
لطفا ورژن برنامه مد نظرتان را بفرمایید،انتقال پورت ها،LCD هم کار چندان مشکلی نیست،فقط در کدویژن در قسمت تنظیمات باید،پایه ها LCD را برای پورت D تنظیم کنید.
خیر.اما می توانید فایل هگز برنامه را برداشته و مستقیما پروگرام کنید.
در رابطه با مقاومت،تفاوتی چندان ندارد! 4.7 باشد یا 5 کیلو اهم .. (بطور کلی مقاومت پول اپ نسبت به شرایط از 4.7 کیلو اهم تا 10 کیلو اهم می باشد،که در رابطه با این سنسور،خودشون گفتن 5 کیلواهم بزارید...)
باتشکر.


سلام
ورژن یک رو میخواستم که پورتهاش انتقال پیدا کنه به پورت d و ارتباط دیتا هم به پایه 14 منتقل بشه
اگرم امکانش باشه برای دما c' و برای رطوبت % گذاشته بشه
خیلی ممنون مهندس

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » سه شنبه 29 فروردین 1396, 11:19 am

من کد ویژن رو نصب کردم البته کد نویسی کدویژن رو بلد نیستم
با کد ویزارد تغییر دادم پورت رو ولی کامپایل نمیکنه و ارور میده
خواهشا اگه میشه تغییرات رو برام انجام بدید
ممنون

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط sinaset » سه شنبه 29 فروردین 1396, 2:27 pm

باسلام
تغییرات مد نظر شما اعمال شد.می توانید از [لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید]دانلود کنید.
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » سه شنبه 29 فروردین 1396, 3:40 pm

sinaset نوشته شده:باسلام
تغییرات مد نظر شما اعمال شد.می توانید از [لینک خارجی برای کاربران مهمان مخفی است، لطفا برای مشاهده لینک ثبت نام نموده و یا وارد سایت شوید]دانلود کنید.
باتشکر.


سلام
ممنون مهندس جان لطف کردید ببخشید اذیتت میکنم
من طبق عکسی که گذاشتم خواستم ترتیب اتصال به lcd رو عوض کنم ولی ارور میده دو فایل رو نداره برای اینکه بتونه فایل هگز برای من تولید کنه
میشه ایراد کار بنده رو بفرمایید که مزاحمتون نشم برای تغییرات؟
تصویر

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط sinaset » سه شنبه 29 فروردین 1396, 5:20 pm

سلام بر شما
خواهش میکنم.مهندس نیستم...
--
در حال حاضر مشکلتون برطرف شده؟! یا که این سوال رو برای رفع مشکلات می پرسید؟!

طبق تصویری که گذاشتید. با توجه به سیم کشی پرتئوس شما باید پورت D رو از 0 تا 7 نام گذاری می کردید. طبق عکسی که گذاشتید،برعکس کار کردید. 7 تا 0 نام گذاری کردید. در واقع باید از بالا 0 و 1 و 2 و4 و 6 و 7 باشد.
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » سه شنبه 29 فروردین 1396, 5:28 pm

sinaset نوشته شده:سلام بر شما
خواهش میکنم.مهندس نیستم...
--
در حال حاضر مشکلتون برطرف شده؟! یا که این سوال رو برای رفع مشکلات می پرسید؟!

طبق تصویری که گذاشتید. با توجه به سیم کشی پرتئوس شما باید پورت D رو از 0 تا 7 نام گذاری می کردید. طبق عکسی که گذاشتید،برعکس کار کردید. 7 تا 0 نام گذاری کردید. در واقع باید از بالا 0 و 1 و 2 و4 و 6 و 7 باشد.
باتشکر.


زنده باشید
نمیشه مثل همین عکس من ترتیب پایه هارو برای اتصال به lcd انجام بدم؟ پرو تئوس رو درست میکنم ولی من این ترتیب رو میخوام و پایه دیتارو روی پایه 28 میخوام که portc.5 میشه
اگه براتون مقدروه بی زحمت این ترتیب رو برام ایجاد کنید
و اینکه چرا خودم کامپایل میکنم ارور میده
با تشکر

Colonel II
Colonel II
نمایه کاربر
پست: 6971
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9178 بار
سپاس‌های دریافتی: 20969 بار
تماس:

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط sinaset » سه شنبه 29 فروردین 1396, 5:34 pm

سلام دوباره.
درست اطلاع ندارم،چه تغییرات ایجاد می کنید،که زمان کامپایل کردن ارور میدهد.

مشکلی نیست،فقط سیم ها رو قطع کنید و طبق پایه های که در کدویژن تقسیم بندی کردید پورت ها رو به LCD اتصال بدهید.
پورت c.6 پایه ریست میکروکنترولر می باشد،میشود،به کمک فیوزبیت ان را غیر فعال کرد،اما دیگر نمی توانید به پروگرام معمولی اقدام به پروگرام کردن میکروکنترولر کنید و باید از پروگرام ها موازی ولتاژ بالا اقدام به پروگرام کنید(بهتر است این کار را نکنید،تا برایتان مشکلات بزرگ پیش نیاید.)
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member
پست: 9
تاریخ عضویت: جمعه 18 اردیبهشت 1388, 2:26 pm
سپاس‌های ارسالی: 10 بار

Re: دماسنج و رطوبت سنج با سنسور DHT11 (ورژن2-ارسال وایرلس)

پست توسط resss » سه شنبه 29 فروردین 1396, 7:14 pm

sinaset نوشته شده:سلام دوباره.
درست اطلاع ندارم،چه تغییرات ایجاد می کنید،که زمان کامپایل کردن ارور میدهد.

مشکلی نیست،فقط سیم ها رو قطع کنید و طبق پایه های که در کدویژن تقسیم بندی کردید پورت ها رو به LCD اتصال بدهید.
پورت c.6 پایه ریست میکروکنترولر می باشد،میشود،به کمک فیوزبیت ان را غیر فعال کرد،اما دیگر نمی توانید به پروگرام معمولی اقدام به پروگرام کردن میکروکنترولر کنید و باید از پروگرام ها موازی ولتاژ بالا اقدام به پروگرام کنید(بهتر است این کار را نکنید،تا برایتان مشکلات بزرگ پیش نیاید.)
باتشکر.


پورت c.5 نوشتم که پایه 28 میکرو میشه نه c.6
اتصال پورت d به lcd باید همون باشه که تو عکس تعیین کردم که راحت روبه روی هم دربیان خروجی و ورودی ها
اگه ممکنه این تغییرات رو برای من اصلاح کنید بی زحمت
والا نمیدونم مشکل کجاست موقع کامپایل کردن همون فایل main ارور میده که دو فایل اول که تو برنامه فرآخوانی شده رو نداره ...توی عکس ارور هارو ببینید
با تشکر

ارسال پست

بازگشت به “طرح آماده و کامل شده AVR”