Geçenlerde eski şaseleri karıştırırken eski bir müzik seti şasesinde tda7439 buldum ve bu entegre ile bir uygulama yapmaya karar verdim ve sonuçta böyle güzel bir uygulama ortaya çıktı uygulamadan bahsedecek olursak devre tda7439 ile dijital ses kontrolü yapmaktadır denetleyici olarak atmega8 lcd olarakta elimde 3310 lcd olduğu için 3310 lcdsini kullandım tda7439 entegresi –47-0 db arası ses 0-30 db arası kazanç ve -14-+14 db arası bas mid tiz kontrolu ayrıca balans kontrolü yapmaktadır. ayrıca 4 stereo girişi bulunur uygulamada tek giriş olduğu için diğerlerini boş bıraktım entegreyi lm3886 ile test ettim gayet güzel çalışıyor ve ayar yapıyor.
Atmega8 Tda7439 Proteus Devre Şeması
Devrede yapılan ayarlar lcd ekranda barlar sekinde görülebilir 2.satırda ise hangi değerin kontrol edildiği görülür ayrıca hangi bar aktif ise ok ile belirtilir devrede kontrol menu+- +- ve mute tuşları ile ve ayrıca philips rc5 uyumlu kumanda ile sağlanır elimdeki vestel tv kumandası rc5 uyumlu olduğu için rc5 protkolunu kullandım değerler eeproma kaydedildiği için sabit kalır.
Devre üzerindeki jumper ile lcd görüntüsünü tersleyebilir ve normal kullanabilirsiniz jumper ayarı devreyi çalıştırmadan önce yapılmalıdır aksi halde devreyi etkilemez atmega8‘i programlamak için ise devrede isp soketi bulunmaktadır devre güçkaynağına bağlı iken basit paralel port programlayıcılar ile porgramlayabilirsiniz program atmega8’in %75 civarı hafızasını kaplıyor tda7439‘un piyasada bulunabilirliği ise cıvardaki malzemeciye gittim 2 dolara getirtebileceğini söyledi oda malzemelerini karaköyden aldığı için karaköy piyasasında rahatlıkla bulunabilir.
Atmega8‘ide karaköyden 4 liraya 3310 lcd’yi ise yedek parçacıdan 3 dolara almıştım devrenin simulasyon ve baskı devresini proteus7.5 veya üst versiyonu ile açabilirsiniz.Uygulamanın test videosunu ayrıca indirebilirsiniz devrenin kodlarını ücretsiz winavr c derleyicisi ile yazdım projenin açık kodları mevcuttur. Proje ile ilgili öneri eksik ve şikayetlerinizi bildirirseniz sevinirim
Atmega8 + Tda7439 + 3310lcd ile dijital ses kontrol projesine ait video görüntüleri
Main.c yazılım içeriği
/**************************************************************** * Name : Atmega8 + Tda7439 +3310 lcd ile dijital ses kontrol* * Author : Erhan YILMAZ * * Notice : All Rights Reserved * * E-mail : [email protected] * * Date : 23.10.2009 * * Version : 1.0 * * Notes : proje ile ilgili öneri görüş veya eksikleri * * : bildiriseniz sevinirim * ****************************************************************/ #define F_CPU 4000000UL #include <avr/eeprom.h> #include <avr/io.h> #include <avr/pgmspace.h> #include <avr/interrupt.h> #include <util/delay.h> #include "i2cmaster.h" #include "twimaster.c" #include "rc5dec.h" #include "rc5dec.c" #include "N3310.h" #include "N3310.c" #include "image.h" #include "font.h" #define tda7439_Adr 0X88 #define bal 1 #define ses 2 #define gain 3 #define bas 4 #define mid 5 #define tiz 6 const prog_uint8_t *Bitmap; const prog_uint8_t *Font; uint8_t menu=1,sekil,mute=0,data,gain_,ses_,bas_,mid_,tiz_,bal_,yuzler,onlar,birler; //Tda7439a data yazmak için kullanılan fonksiyon void tda7439_yaz(char sub_adr,char data){ i2c_start(tda7439_Adr); i2c_write(sub_adr); i2c_write(data); i2c_stop(); } //15lik barı gösteren fonksiyon void bar_goster1(char bar){ char data1,data2,bosluk,i,onlar,birler; bosluk=(15-bar)*5; if (sekil==1){data1=0XBF;data2=0X80;} else {data1=0X7F;data2=0X00;} for(i=0;i<bar;i++){glcdn_WriteData(data1); glcdn_WriteData(data1);glcdn_WriteData(data1); glcdn_WriteData(data1);glcdn_WriteData(data2);} for(i=0;i<bosluk;i++)glcdn_WriteData(data2);} //Balans barını göstern fonksiyon void bar_goster2(char deger){ if(deger<80)sol_bar(deger); else sag_bar(deger);} void sol_bar(char deger){ char bosluk,i,bar;bar=(80-deger)/5;bosluk=(16-bar)*2; for(i=0;i<bosluk;i++)glcdn_WriteData(0X00); for(i=0;i<bar;i++){glcdn_WriteData(0X7F);glcdn_WriteData(0X00);} ok_yaz();for(i=0;i<32;i++)glcdn_WriteData(0X00);} void sag_bar(char deger){ char bosluk,i,bar;bar=(deger-80)/5;bosluk=(16-bar)*2; for(i=0;i<32;i++)glcdn_WriteData(0X00);ok_yaz(); for(i=0;i<bar;i++){glcdn_WriteData(0X7F);glcdn_WriteData(0X00);} for(i=0;i<bosluk;i++)glcdn_WriteData(0X00);} //25lik barı göstern fonksiyon void bar_goster3(char bar){ char bosluk,i;bar=(bar/2);bosluk=(25-bar)*3; for(i=0;i<bar;i++){glcdn_WriteData(0X7F);glcdn_WriteData(0X7F);glcdn_WriteData(0X00);} for(i=0;i<bosluk;i++)glcdn_WriteData(0X00);} //Hangi satırda olduğu gösteren oku çizen fonksiyon void isaret_et(char satir){ char data; if (satir==3){glcdn_gotoxy(0x4D,(satir)); glcdn_WriteData(0X08);glcdn_WriteData(0X1C); glcdn_WriteData(0X3E);glcdn_WriteData(0X49); glcdn_WriteData(0X08);glcdn_gotoxy(0x4D,(satir+1)); for(uint8_t i=0;i<5;i++)glcdn_WriteData(0X00);} else if (satir==6){glcdn_gotoxy(0x4D,(satir)); glcdn_WriteData(0X88);glcdn_WriteData(0X9C); glcdn_WriteData(0XBE);glcdn_WriteData(0XC9); glcdn_WriteData(0X88);glcdn_gotoxy(0x4D,(satir-1)); for(uint8_t i=0;i<5;i++)glcdn_WriteData(0X00);} else{glcdn_gotoxy(0x4D,(satir+1)); if(satir==5)data=0X80;else data=0X00;for(uint8_t i=0;i<5;i++) glcdn_WriteData(data);glcdn_gotoxy(0x4D,satir);glcdn_WriteData(0X08); glcdn_WriteData(0X1C);glcdn_WriteData(0X3E);glcdn_WriteData(0X49); glcdn_WriteData(0X08);glcdn_gotoxy(0x4D,(satir-1)); for(uint8_t i=0;i<5;i++)glcdn_WriteData(0X00);}} //Denge kısmındaki oku görüntüleyen fonksiyon void ok_yaz(){ glcdn_WriteData(0X08);glcdn_WriteData(0X1C); glcdn_WriteData(0X2A);glcdn_WriteData(0X49);glcdn_WriteData(0X08); glcdn_WriteData(0X08);glcdn_WriteData(0X49);glcdn_WriteData(0X2A); glcdn_WriteData(0X1C);glcdn_WriteData(0X08);glcdn_WriteData(0X00);} //Db değelerini seçen fonsiyon db_sec(char bar){ switch (bar){ case 0:glcdn_Putstr("-14db");data=0;break; case 1:glcdn_Putstr("-12db");data=1;break; case 2:glcdn_Putstr("-10db");data=2;break; case 3:glcdn_Putstr("-8db ");data=3;break; case 4:glcdn_Putstr("-6db ");data=4;break; case 5:glcdn_Putstr("-4db ");data=5;break; case 6:glcdn_Putstr("-2db ");data=6;break; case 7:glcdn_Putstr("0db ");data=7;break; case 8:glcdn_Putstr("0db ");data=15;break; case 9:glcdn_Putstr("2db ");data=14;break; case 10:glcdn_Putstr("4db ");data=13;break; case 11:glcdn_Putstr("6db ");data=12;break; case 12:glcdn_Putstr("8db ");data=11;break; case 13:glcdn_Putstr("10db ");data=10;break; case 14:glcdn_Putstr("12db ");data=9;break; case 15:glcdn_Putstr("14db ");data=8;break;}} //binary sayıyı 2 basamak desimale çeviren fonksiyon void byte_to_bcd(char sayi){ if(sayi>99)return 0x00; onlar=(sayi/10)+0x30;birler=(sayi%10)+0x30; if (onlar==0X30){onlar=birler;birler=0X20;}} //Ekranda 4 satır barı gösteren fonksiyon void goster(char sat1,char sat2,char sat3,char sat4){ glcdn_gotoxy(2,3);sekil=0;bar_sec(sat1); glcdn_gotoxy(2,4);sekil=0;bar_sec(sat2); glcdn_gotoxy(2,5);sekil=0;bar_sec(sat3); glcdn_gotoxy(2,6);sekil=1;bar_sec(sat4);} //Gösterilecek barı seçen fonksiyon void bar_sec (char bar){ switch (bar){ case bal:bar_goster2(bal_);break; case ses:bar_goster3(ses_);break; case gain:bar_goster1(gain_);break; case bas:bar_goster1(bas_);break; case mid:bar_goster1(mid_);break; case tiz:bar_goster1(tiz_);break;}} //kumanda kodalrını değerlendiren fonksiyon void tus_bak(char tus){ cli();rc5_valid =0; switch (tus){ case 13:mute=!mute;_delay_ms(200);break; case 32:if (menu>1){menu--;_delay_ms(200);}break; case 33:if (menu<6){menu++;_delay_ms(200);}break; case 16:if (menu==1 && bal_<159)bal_+=2; else if(menu==2 && ses_<50)ses_++; else if(menu==3 && gain_<15)gain_++; else if(menu==4 && bas_<15)bas_++; else if(menu==5 && mid_<15)mid_++; else if(menu==6 && tiz_<15)tiz_++;_delay_ms(50);break; case 17:if (menu==1 && bal_>1)bal_-=2; else if(menu==2 && ses_>0)ses_--; else if(menu==3 && gain_>0)gain_--; else if(menu==4 && bas_>0)bas_--; else if(menu==5 && mid_>0)mid_--; else if(menu==6 && tiz_>0)tiz_--;_delay_ms(50);break; }sei();} //Balans ayrının yapıldığı kısım void denge_ayar(){ if(~PIND & _BV(7)&&bal_<159){bal_+=2;_delay_ms(100);} if(~PIND & _BV(6)&&bal_>1){bal_-=2;_delay_ms(100);} glcdn_gotoxy(10,2);glcdn_Putstr(" Denge "); goster(bal,ses,gain,bas);isaret_et(3); if(bal_<80){tda7439_yaz(0X06,80-(bal_+1));tda7439_yaz(0X07,0X00);} else{tda7439_yaz(0X06,0X00);if(bal_==80){tda7439_yaz(0X07,0x00);} else{tda7439_yaz(0X07,(bal_-1)-80);}}} //Ses ayarının yapıldığı kısım void ses_ayar(){ if(~PIND & _BV(7)&&ses_<50){ses_++;_delay_ms(150);} if(~PIND & _BV(6)&&ses_>0){ses_--;_delay_ms(150);} glcdn_gotoxy(10,2);glcdn_Putstr("Ses=");if(ses_!=50)glcdn_Putstr("-"); byte_to_bcd(50-ses_);glcdn_Putc(onlar);glcdn_Putc(birler);glcdn_Putstr("db "); goster(bal,ses,gain,bas);isaret_et(4);tda7439_yaz(0X02,(50-ses_));} //Kazanç ayarının yapıldığı kısım void gain_ayar(){ if(~PIND & _BV(7)&&gain_<15){gain_++;_delay_ms(200);} if(~PIND & _BV(6)&&gain_>0){gain_--;_delay_ms(200);} glcdn_gotoxy(10,2);glcdn_Putstr("Kazanc=");byte_to_bcd(gain_*2); glcdn_Putc(onlar);glcdn_Putc(birler);glcdn_Putstr("db"); goster(bal,ses,gain,bas);isaret_et(5);tda7439_yaz(0X01,gain_);} //Bas ayarının yapıldığı kısım void bas_ayar(){ if(~PIND & _BV(7)&&bas_<15){bas_++;_delay_ms(200);} if(~PIND & _BV(6)&&bas_>0){bas_--;_delay_ms(200);} glcdn_gotoxy(10,2);glcdn_Putstr("Bas=");db_sec(bas_);glcdn_Putstr(" "); goster(bal,ses,gain,bas);isaret_et(6);tda7439_yaz(0X03,data);} //Mid ayarının yapıldığı kısım void mid_ayar(){ if(~PIND & _BV(7)&&mid_<15){mid_++;_delay_ms(200);} if(~PIND & _BV(6)&&mid_>0){mid_--;_delay_ms(200);} glcdn_gotoxy(10,2);glcdn_Putstr("Mid=");db_sec(mid_);glcdn_Putstr(" "); goster(ses,gain,bas,mid);isaret_et(6);tda7439_yaz(0X04,data);} //Tiz ayarının yapıldığı kısım void tiz_ayar(){ if(~PIND & _BV(7)&&tiz_<15){tiz_++;_delay_ms(200);} if(~PIND & _BV(6)&&tiz_>0){tiz_--;_delay_ms(200);} glcdn_gotoxy(10,2);glcdn_Putstr("Tiz=");db_sec(tiz_);glcdn_Putstr(" "); goster(gain,bas,mid,tiz);isaret_et(6);tda7439_yaz(0X05,data);} void mute_(){ glcdn_gotoxy(10,2);glcdn_Putstr(" Mute "); tda7439_yaz(0X02,0X38); tda7439_yaz(0X01,0X00); while(mute==1) {if(rc5_valid == -1 && rc5_code==13){rc5_valid =0;mute=!mute;} if(~PINB & _BV(0)){mute=!mute;}} tda7439_yaz(0X02,(50-ses_));tda7439_yaz(0X01,(gain_));_delay_ms(200);} //Dahili eeproma data yazan fonksiyon void eeprom_write( char adres, char data){ while(EECR & (1<<EEWE)); EEAR=adres; EEDR=data; EECR |= (1<<EEMWE); EECR |= (1<<EEWE); } //Dahili eepromdan data okuyan fonksiyon char eeprom_read(char adres){ while(EECR & (1<<EEWE)); EEAR=adres; EECR |= (1<<EERE); return EEDR;} //Başlıkyazısını ve kenarlerı çizen fonksiyon void cerceve_ciz(){ glcdn_gotoxy(0,1);for(uint8_t i=0; i<84; i++)glcdn_WriteData(pgm_read_byte(&baslik[i])); for(uint8_t i=1; i<5; i++){glcdn_WriteCommand(GLCD_SETYADDR | i); glcdn_WriteCommand(GLCD_SETXADDR | 0);glcdn_WriteData(0XFF); glcdn_WriteCommand(GLCD_SETXADDR | 83);glcdn_WriteData(0XFF);} glcdn_WriteCommand(0X45);glcdn_WriteCommand(0X80);glcdn_WriteData(0XFF); for(uint8_t i=1;i<83;i++)glcdn_WriteData(0X80);glcdn_WriteData(0XFF);} void main(void){ Font=Font5x7;Bitmap=logo; DDRD=0X00;PORTD=0XF7; DDRB=0XFE;PORTB=0X01;glcdn_InitDisplay(); i2c_init();tda7439_yaz(0X00,0X03); bal_=eeprom_read(1);if(bal_>160)bal_=80;denge_ayar(); ses_=eeprom_read(2);if(ses_>50)ses_=30;ses_ayar(); gain_=eeprom_read(3);if(gain_>15)gain_=8;gain_ayar(); bas_=eeprom_read(4);if(bas_>15)bas_=8;bas_ayar(); mid_=eeprom_read(5);if(mid_>15)mid_=8;mid_ayar(); tiz_=eeprom_read(6);if(tiz_>15)tiz_=8;tiz_ayar(); if(~PIND & _BV(2))glcdn_WriteCommand(GLCD_DISPLAYNORMAL); else glcdn_WriteCommand(GLCD_DISPLAYINVERT);logo_goster(); _delay_ms(4000);glcdn_ClearLcd();cerceve_ciz();rc5_init();sei(); while(1){ if(rc5_valid == -1){tus_bak(rc5_code);} if(~PINB & _BV(0)){mute=!mute;_delay_ms(200);} if(~PIND & _BV(1) && menu<6){menu++;_delay_ms(200);} if(~PIND & _BV(0) && menu>1){menu--;_delay_ms(200);} if(mute==1)mute_(); if(menu==1){denge_ayar();eeprom_write(1,bal_);} if(menu==2){ses_ayar();eeprom_write(2,ses_);} if(menu==3){gain_ayar();eeprom_write(3,gain_);} if(menu==4){bas_ayar();eeprom_write(4,bas_);} if(menu==5){mid_ayar();eeprom_write(5,mid_);} if(menu==6){tiz_ayar();eeprom_write(6,tiz_);}}}
N3310.c yazılım içeriği
////////////////////////////////////////////////////////// // Title: drm3310.c // // Version: v1.0 // // Author: // // Compiler: AVR-GCC: WinAVR-20040720 // // History: 20040815: Release v1.0 // // // ////////////////////////////////////////////////////////// #include <avr/io.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "N3310.h" extern const prog_uint8_t *Font; extern const prog_uint8_t *Bitmap; void SpiMasterInit(void) { unsigned char tmp; // Switch SCK and MOSI pins to output mode. DDR_SPI |= _BV(SCK) | _BV(MOSI) | _BV(SS); // Activate the SPI hardware. SPCR = _BV(SPE) | _BV(MSTR); // Clear status flags. tmp = SPSR; tmp = SPDR; } void glcdn_spiSendByte(uint8_t data){ // Send Byte SPDR = data; // Wait until transfer complete while ( (SPSR & 0x80) != 0x80 ); // Chip disable } void glcdn_InitDisplay(void){ GLCD_CTRL_PORT|=_BV(GLCD_RES_); //pull up // Init Control Ports GLCD_CTRL_DDR|=_BV(GLCD_DC) | _BV(GLCD_RES_) | _BV(GLCD_SCLK) | _BV(GLCD_SDIN);// | _BV(GLCD_CE_); SpiMasterInit(); // Reset Lcd _delay_ms(15); GLCD_CTRL_PORT&=~_BV(GLCD_RES_); _delay_ms(1); GLCD_CTRL_PORT|=_BV(GLCD_RES_); // Enable extended Functionset glcdn_WriteCommand(GLCD_FUNCTIONSETEXT); // Set Tempcoefficient glcdn_WriteCommand(GLCD_TEMPCOEF); // Set Bias glcdn_WriteCommand(GLCD_BIAS); // Set Contrast glcdn_Contrast(0x40); // Enable normal Functionset glcdn_WriteCommand(GLCD_FUNCTIONSET); // Set Display to normal Mode glcdn_WriteCommand(GLCD_DISPLAYNORMAL); // Clear Lcd glcdn_ClearLcd(); } void glcdn_WriteData(uint8_t myData){ // Enable Data Transfer GLCD_CTRL_PORT|=_BV(GLCD_DC); // Send Byte glcdn_spiSendByte(myData); } void glcdn_WriteCommand(uint8_t myData){ // Enable Control Transfer GLCD_CTRL_PORT&=~_BV(GLCD_DC); // Send Byte glcdn_spiSendByte(myData); } void glcdn_ClearLcd(void){ for(uint8_t i=1;i<7;i++){glcdn_gotoxy(0,i); for(uint8_t i=0;i<84;i++)glcdn_WriteData(0X00);} } void glcdn_gotoxy(uint8_t x,uint8_t y){ glcdn_WriteCommand(x | GLCD_SETXADDR); glcdn_WriteCommand((y-1) | GLCD_SETYADDR);} void glcdn_Putstr(char *data){ while (*data) { for(uint8_t i=0; i<5; i++) {glcdn_WriteData(pgm_read_byte(&Font[((*data - 0x20) * 5) + i]));} glcdn_WriteData(0X00); data++; } } void glcdn_Putc(char data){ for(uint8_t i=0; i<5; i++) {glcdn_WriteData(pgm_read_byte(&Font[((data - 0x20) * 5) + i]));} glcdn_WriteData(0X00);} void logo_goster(){ for(uint8_t i=0;i<6;i++) {glcdn_WriteCommand(GLCD_SETYADDR | i); glcdn_WriteCommand(0X80); for(uint8_t j=0;j<84;j++) glcdn_WriteData(pgm_read_byte(&Bitmap[(i*84)+j])); } } void glcdn_Contrast ( uint8_t contrast ){ glcdn_WriteCommand(GLCD_FUNCTIONSETEXT); glcdn_WriteCommand(GLCD_SETVOP | contrast); glcdn_WriteCommand(GLCD_FUNCTIONSET); }
Tüm kaynak dosyalar (proteus ares pcb, şema, kütüphane model, kaynak kodlar);
Şifre-Pass: 320volt.com
Yayım tarihi: 2009/10/23 Etiketler: ATmega8 devreleri, atmega8 uygulamaları, atmel avr projeleri, dijital ses kontrol, nokia 3310 lcd, rc5 protokolü, tda7439
hocam link ölmüş yenilersen seviniriz
Dosya üzerinde güncelleme oldu yeni link eklendi indirebilirsiniz
hocam rar dosyası bozuk açılmıyor tekrar yenilerseniz sevinirim.
doğrusu çok merak ettim projenizi
dosya açıldı teşekkürler… yanlız atmega8 nasıl bir entegre olduğunu bilmiyorum programlamakmı gerekiyor. pic gibi programlama kartımı var
Atmegalarda picler gibi bir denetleyici avr isp programmer diye nette aratırsan nette bir sürü programlayıcı bulabilirsin hatta çok basit paralel porttan çalışan programlayıcıları var
teşekkürler hocam yanlız ben erzincandayım bluemavi diye bir site var genelde oradan sipariş veriyorum ama orda yok.sizin bildiğiniz getirtebileceğim bir yer varmı
Dostum bluemavide tam olarak ne yok anlamadım atmega8de tda7439da var görünüyor 3310 lcdden bahsediyorsan civardaki telefonculardan temin etmen gerek belirttiğim gibi ben yedek parçacıdan aldım 3dolara
Erhan ustam selamlar…umarım oralardasınızdır. Ben ege ünide elektronik teknikerliği 2.sınıftayım.proje dersim için sizin bu ton kontrol devresi hoşuma gitti.yalnız bir kaç sorum olacak.
Bu atmega yı programlmak için parelel porttan basit dediğiniz şey nasıl bişey biraz açıklarmısınız. Tek bir kablo halinde mi oluyor ve nerelerde bulabilirim.
Dosyadaki baskı devre de hata var mı? Şu yüzden sordum devrenin baskı yüz fotolarında çok çizik atmışsınız yalıtım için. Baskı devreyi karta kendiniz mi çıkarttınız…bi yöntem önerebilirmisiniz? devrenin girişlerine giren 4 kablo nedir. 2 si hoparlör 2 si ses girişi mi? kod dosyalarından tam olarak hangisi atmega ya yüklenecek? şimdiden teşekkürler. Süper bir şey ortaya koymuşsunuz ustam..
Aleyküm selam sırayla cevap vermeye çalışım programlayıcı olarak http://elektrobilim.org/forum/showthread.php?t=3264 linkteki konunun devamında bahsettiğim basit bir programlayıcı var onu yapabilirsin baskı devrede 1-2 yolda yanlışlık vardı onları düzelttim şuan baskı devrede hiç bir sorun yok yöntem olarak ta ütüleme ile çıkardım plaketi baskı devreyi el işi kağıdına yazdırıp ütüleyip öyle çıkartıyorum 4 kablodan 2si ses girişi 2side anfiye giden ses çıkışları çıkışlarına hoparlör bağlanmıyor direk devrenin atmega8ide hex dosyanı yüklemen yeterli
erhan ustam uzun aradan sonra tekrar selamlar..tekrar dan orda olmanızı umut ederek..bi sorum var..kısacık..baskı devre de audıo soketinin yanındaki 2 tane kutuplu kon.un değeri nedir ustam??teşekkürler..bir de devre dki bütün kon.lar 25 volt mu..?sordukça arttı sorular kusura kalmayasın.. :–<)- bir de devre enerjiyi nerden sağlıor..??
Selam arkadaşım o kapasitörleri opsiyonel olarak koydum 1-10u arasında bi değerde koyabilirsin devre çıkışı anfiye girdiği için anfininde girişinde benzer kapasitörler bulunur bulunmama ihtimalini düşünerek ekledim elinde yoksa hiç takmaya da bilirsin devrede en yüksek gerilim 9 volt olduğu için 16v tan yüksek bütün kapasitörleri kullanabilirsin devre beslemesini ir gözün yanındaki ac girişi kablosundan alıyor 9-12v ac gerilim yeterli devreninin çalışması için
hocam bu winrar dan dosyayı çıkartırken hata veriyor ?
şifreyi yanlış girmiş olabilirsiniz dosyada sorun yok
İyi günler hocam benim size bi sorum olacaktı bu devreyi tda7313 ile yapmayı düşünüyorum ama devrede ne gibi deişiklikler yapmam gerekir bu konuda bana bilgi verebilir misiniz? tda 7439 ile tda 7313 data pinlerinde sinyaller aynı ama bir kaç ilave var.
Hocam ayrıca bir şey daha isteycektim sizden kullandığınız kumandanın resmini de ekleyebilir misiniz?
İyi günler dostum bahsettiğin entegreyi inceledim ikiside çok farklı amaca hizmet ediyor bahsettiğin entegrede 3 stereo girişten biri seçilerek çıkışta 4e bölünerek surround gibi bir sisteme dönüşüyor td7439 da ise 4 girişten birisi seçilerek bas ,tiz ,balans ,kazanç ,denge ayarı yapılarak çıkışa yine stereo veriliyor.Ayrıca 7313te kazanç ayarı yok 7313 te 4 çıkışın ayrı ayrı ayarı var bunlarla hiç oynamayarak bas ,tiz ,ses giriş seçme gibi bi devre yapılabilir buda senin yazılım bilginle alakalı kodlarda gösterilen bar kısımlarına iyi dikkat etmek lazım önemli olan ekranda ayarları görüntülemek gerisi entegreye i2cden seri data göndermek ama yinede uğraşma derim. tdanin bu türdeki entegrelerinden en iyisi tda7439 diyebillirim 30db’ye kadar kazanç ayarı olması gerçekten çok iyi düşük güçlü giriş sinyallerini çok iyi yükseltiyor kulladığım kumandanın resmi ise aşağıdadır.
Çok teşekkür ederim hocam resim için çok sağol bu arada peki siz tda 7439 yerine tda 7313ü ekleyebilir misiniz?
Şu aralar zamanım olmadığı için bu işlerle uğraşamıyorum kaldıki vaktim olsada td7313le uğraşacağımı sanmıyorum tda7439u tavsiye ederim
iyi günler arkadaşlar geçenlerde yazmıştım ama tekrar herkese sormak istedim acaba bu devrenin tda 7313 ile yapılması için hex dosyasını nasıl hazırlayabilirim yardımcı olabilecek var mı acaba?
Örnek olabilir;
AVR based TDA7313 Audio processor control
http://www.scienceprog.com/avr-based-tda7313-audio-processor-control/
alternatif link: http://www.multiupload.com/1YS3MKWCP0
https://www.scienceprog.com/wp-content/uploads/2007i/audioproc/Board3.jpg
Arkadaşım devrenin kodları zaten mevcut geriye kalan bu kodları tda7313e uyarlamak. Sen elinden geleni yap. Anlayamadığın kısmını illaki izah ederiz.Ama programlama bilgin yoksa zaten kodlardan hiç bir anlam çıkaramazsın. Yardımdan kastın oturup programı tda7313e göre baştan yazdırmak sa bunu kimseden bekleyemezsin. En azından benden bekleme
Bu devrenin linikini yeniler misiniz?
Bir kaç kişi söylemiş ama dikkate alınmamış. Devreyi paylaşan ERHAN kardeşim devreyi tekrar upload edip linkini koymanı bekliyoruz.
link sağlam kontrol edildi
yinede alternatif link:
http://hotfile.com/dl/76133128/011d08 /atemga8_tda7439_3310lcd_digital_ton_kontrol_tekniker_erhan_.rar.html
Ya yine rahatsız ediyorum amma sıkıştırılan dosyalarda hata var.Hiçbir şey görünmüyor dosyalarda.
Zipli dosyayı ayıkla dediğimde bir sürü hata veriyor sonra ayıklama bittikten sonra dosyaların içinde hiçbir şey görünmüyor.
Ayrıca sonradan verdiğin hotfile linkide çalışmıyor…
rar dosyasının ismini kısaltın ve dışarı çıkartırken şifresini elle yazın kopyala yapıştır yapıldığında sorun olabiliyor
Selamün Aleyküm kardeş ben devreyi kurdum yanlız atmeganın içine yazılımı atmayı beceremedim bana ayrıntılı bilgi verirmisin ?
Dostum verdiğim hexi atmega8e yükleyeceksin.Konfigürasyon ayarlarını da 4 mhz harici kristal olarak ayarlayacaksın.Hatta atmega8i sıfır aldıysan hiç bir konfigürasyon ayarı yapmazsan dahili osilatörden çalışır o şekilde dahi görüntünü gelmesi lazım.
Selamün aleyküm atmega 8 i bulamadım yerine farklı bir entegre kullanabilirmiyim ?
Aleyküm selam 28 pinli atmel olarak atmega88 veya atmega168 kullanılabilir ama atmega8i piyasada bulamadıysan onları hiç bulmazsın var onun yerine atmega16 veya 32 kullanabilirsin ama o zamanda baskı devrede değişiklik yapmak gerek.En yisi atmega8i bulmaya çalış. En rahat bulunanı o piyasada
teşekkürler ares te göremedim audio soket in arkasındaki kondansatörlerin değeri nedir ??
470nf giriş kondastörleri elimde yok diye takmadım seste bir problem olursa diye ekledim baskı devreye ama bir sorun olmuyor.
Selamün Aleyküm başkan baskı devrenin ebatlarını yazabilirmisin bir türlü tutturamadım xs
Aleyküm selam baskı devrenin boyutları 112.3mmx74.3mm
#Hi Erhan intend to realize this scheme: Digital audio control with ATMEGA8 Tda7439 + 3310 + lcd but is an impediment, not finding scheme, in principle, only that the wiring, I opened it with ARES program 7 Professional (Proteus) my request is if you can help with the scheme in principle
Thank you very much
Kullandığın lm3886 devresini paylaşırmısın ?
bu devreyi rs232 den programlayıpta çalıştıran varmı ?
Çok başarılı bir çalışma tebrik ederim.
Merhaba
yandexten indirdiğim dosyanın içinden
tea5767-pic16f628-dijital-pll-kontrollu-fm-radyo-alici-sistemi
bu çıktı bir karışıklık oldu sanırım.
Merhaba, bildirim için teşekkürler. Dosyalar düzenlendi tekrar indirin
SLM Erhan bey güzel bir proje uyguladığınız için ben 62 yaşındayım beni bile haycanlandırdınız onun için bir elektronik laboratuvar kuracağım. Sizler gençsiniz vatanın geleceği güzel anlar sizlerin elinde. Öz gecmiş mektebinizi okudum. Umarım savunma sisteminde’de görev alırsınız, güclu bir Türkiye için Sizlerle gur duyuyorum. Yalanız ses kontrolu için Nokia 3310 yerine Nokio 5110,u kullanabilirmiyim 3310,un iletken flim verisi kafamı karıştırır yazıp gönderirseniz sevinirim birde Eeprom yüklü olarak gönderme imkanınız var ise ücretini havale ederim. Saygılarımla Mustafa Kemal Selman.