k tipi thermocouple olcme ile ilgili sorun

Başlatan fuzulidark, 24 Ağustos 2012, 14:56:02

fuzulidark

Merhaba Arkadaslar

Benim soyle bir sorunum var. 8 tane K tipi thermocouple i max6675 entegresi ile pic uzerinden olcumunu spi ile yapiyorum. Ve bu devrem cok guzel calisiyor. Fkat bu yapmaya calstigim devrenin sadece bir kismi.Ana devreye bu devreyi entegre ettigimde normalde calisan 8 tane k tipi thermocouple in 1. ve 8. devreleri okunamiyor. Kod olarak

#include <16f877.h>


#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay (clock=4000000)
#use fast_io(d)
//#use fast_io(b)
#use fast_io(c)

#define LCD_ENABLE_PIN PIN_d0
#define LCD_RS_PIN PIN_d1
#define LCD_RW_PIN PIN_d2
#define LCD_DATA_PORT d
#define LCD_TYPE 2
#define LCD_TRIS_LOCATION 88
#include <lcd.c>

unsigned int8 data1,data2;
//long x,m,n,k,ahmet;
unsigned int16 bilgi;
float sicaklik;

int i, led,degisken=1;

 read_max6675(void)
{


data1=spi_read(10);
//data1=spi_write(10);
//data2=spi_write(10);
data2=spi_read(10);


bilgi=make16(data1,data2);
bilgi=bilgi&(0b0111111111111000);
bilgi=bilgi>>3;
//bilgi=data1;
//bilgi=bilgi<<8;
//bilgi=bilgi|data2;
//bilgi=bilgi>>2;
bilgi=bilgi/4;
sicaklik=bilgi;
//return sicaklik;
}









 void main()
{
   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(SPI_MASTER|SPI_L_TO_H|SPI_CLK_DIV_4);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);

   // TODO: USER CODE!!
set_tris_d(0x00);
//set_tris_b(0x00);
set_tris_c(0b00010000);

 lcd_init();

 
   while(1)
   {for(i=0;i<8;i++)
{output_c(i);

   read_max6675();
   printf(lcd_putc,"\f%d. k tipi",degisken);
   printf(lcd_putc,"\nsicaklik=%3.1f%cC",sicaklik,0XDF);
   delay_ms(300);
 degisken++;
   }degisken=1;
   }}


bu kodu oldugu gibi ana devremin koduna entegre ettim. Nasil bir sorun yaratmis olabilir.

normalde calisan 8 tane k tipi thermocouple in bagli oldugu devre bu devreyi ana devreme entegre ettim. Yardimci olursaniz cok sevinirim.

cemilkendir

#1
74ls138 de hata var sanırsam e1 ve e2 girişleri low e3 girişide high olması lazım datasheet den sende tekrardan bir kontrol et istersen

birde bu entegreyi nereden ve kaca aldın yazarmısın

fuzulidark

Alıntı yapılan: cemilkendir - 24 Ağustos 2012, 16:24:46
74ls138 de hata var sanırsam e1 ve e2 girişleri low e3 girişide high olması lazım datasheet den sende tekrardan bir kontrol et istersen

birde bu entegreyi nereden ve kaca aldın yazarmısın

dorukanstore.com adresinden aldim. entegre max6675. karakoy ve kadikoyde aradim ama bulamadim.  datasheete baktim e1 h e2 e3 low konumunda olmasi gerekiyor. ama sole bir sorunum varki kendi asil devremle bunu birlestirdigim zaman 8. devre calsmiyor.

Analyzer

Selam,

Simulasyonda çalışmıyorsa bazen bilgisayarın konfigürasyonuna göre devre çalışmıyor görünebiliyor. Devre üzerinde çalışabilir. Devre üzerinde çalışmıyorsa beslemeniz yetersiz kalıyor, voltaj çöküyor olabilir. Kontrol etmekte fayda var.

Analyzer
Üşeniyorum, öyleyse yarın!