Tunahan
Tunahan
Konya
02/08/2018 tarihinden beri üye
170 GY Puanı
37K GY Sırası

Kişisel Sayfaları

İlgi Alanları

2 Rozet
2 Sertifika
3 Soru Sordu
6 Cevap Verdi
0 Blog Yazısı
0 Etiket Takibi

Hakkında

İş Tecrubesi

Şirket Sahibi
DetLab | Haziran 2022

-Elektronik Devre Tasırımı -Pcb kart basımı ve Dizgisi -İsteğe Yönelik Elektronik Projeler

Eğitim Geçmişi

Selçuk Üniversitesi
| Aralık 2020 - Aralık 2020

Sertifikalar & Başarılar

GY Sertifikaları (2)
Arduino 201 Sertifikası
Veriliş Tarihi: Ağustos 2018
Arduino 101 Sertifikası
Veriliş Tarihi: Ağustos 2018
Diğer Sertifikaları (0)
Kullanıcıya ait sertifika bulunmamaktadır.
Test Sonuçları (0)

Kullanıcıya ait test sonucu bulunmamaktadır.

Dil Becerileri

Son Forum Aktiviteleri

9
Tümünü Gör

atmega328p ile ssd1327 128x128 oled kullanımı


merhabalar atmega328p ile ssd1327 128x128 oled ekranı kullanıyorum ekranı direnç.net ten sipariş ettim ve orada olan dökümanlardaki kütüphaneyi kullanıyorum başarılı bir şekilde ekranı kullanabiliyorum
fakat bir kaç büyük sorunum var 1. sorunum ekranda 64x64 lük bitmap formatına çevrilmiş resimi gösteremiyorum. yaptığım araştırmalara göre kütüphanede olan bu fonksiyonu buldum

void OLED_DisPage(unsigned int Column_Num, unsigned int Page_Num)
{
  unsigned int column_max = (OLED_WIDTH / XByte);//OLED_WIDTH=128 , XByte=64
  unsigned int page_max = (OLED_HEIGHT / YByte);// OLED_HEIGHT=128 , YByte=16
  if (Page_Num > page_max || Column_Num > column_max) {
    DEBUG("Display error\r\n");
    return;
  }
  unsigned int Dx = Column_Num % column_max;
  unsigned int Dy = Page_Num % page_max;
  OLED_Display(Dx * XByte, Dy * YByte, (Dx + 1) * XByte,(Dy + 1) * YByte);
//OLED_Display(POINT Xstart, POINT Ystart, POINT Xend, POINT Yend)
}


bu fonksiyonu kullandığımda oled_display de çıkan sonuçlarda mesela OLED_DisPage(0,1) yazdığımda fonksiyon içinde OLED_Display(0,16,64,32); oluyor buda benim y eksenin 16 ile sınırlıyor fonsiyon içindeki kodda bunu daha yüksek rakam yapmaya çalıştım fakat olmadı y eksenin 16 karakterlik sınırlama koyduğu için 32x32 vb resimleri gösteremiyorum. bu ekranı daha önce kullanan var mı bu problemi nasıl çözebilirim. 2.sorunum ekran kütüphanesindeki global değişkenler atmega328p nin %82 lik kısmını kapılıyor bu da benim diğer işlemleri yapmama engel oluyor bir kaç birşey tanımladığımda %90 lara çıkıyor buda işlemcinin karasız çalışmasına sebeb oluyor atmega328p nin hafızasını mı genişletmeliyim yada kütüphanedeki gereksiz fonsiyonlar mı kaplıyor kütüphaneye baktım fakat anlayamadım. kütüphaneyi link halinde atıyorum bir kaç gündür uğraşıyorum ve çözüm bulmadım şimdiden teşekkür ederim herkese iyi çalışmalar.

https://www.waveshare.com/wiki/File:1.5inch_OLED_Moudle.7z

arduino ile ads1261 kullanımı

#include <SPI.h>
#define DATAOUT 11//MOSI
#define DATAIN  12//MISO
#define SPICLOCK  13//sck
#define SLAVESELECT 10//ss

void setup()
{
  Serial.begin(9600);
  SPI.begin();
  pinMode(DATAOUT, OUTPUT);
  pinMode(DATAIN, INPUT);
  pinMode(SPICLOCK,OUTPUT);
  pinMode(SLAVESELECT,OUTPUT);
  digitalWrite(SLAVESELECT,HIGH); //release chip
}
void okuma()
{
  digitalWrite(SLAVESELECT,LOW); //release chip
  SPI.transfer();
}
void loop()
{
  okuma();
  delay(1000);
}

merhabalar
arduino ile ads1261 entegresini kullanmaya çalışıyorum. entegre spı ile haberleşiyor.
Spı haberlşemesini kodda ki gibi yaptım benim resimdeki status register ının 3. bitine ulaşmam lazım spı.transfer komutunu register lara ulaşmak için kullanmak istiyorum bu komutu nasıl kullanabilirim
Şimdiden çok teşekkür ederim

ADS1261 http://www.ti.com/product/ADS1261
 

4 yıl 9 ay önce yanıtladın

atmega328p ile nrf24l01 haberleşmesi

merhaba arkadaşlar atmega328p ile nrf24l01 i haberleştirdim ama joistikten gönderdiğim bilgi ile ledleri kontrol ediyorum fakat alıcı koduna joistik ortada olduğu zaman ledlerin tamamını söndür komutu veriyorum ama bu sefer ledler sönüyor fakat ledleri yak komutunu gönderdiğimde ledler yanıp yanıp sönüyor bunun için ne yapmam gerekir şimdiden teşekkür ederim. 
yazdığım kod;
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9,10);
const byte address[6] = "RFV01";
int msg[4];
int atm[1];
int a;
int pot;
int LED0 = 5;
int LED1 = 6;
int LED2 = 3;
int LED3 = 4;
int LED4 = 7;
int LED5 = 8;
void setup(void){
 Serial.begin(9600);
  radio.begin();
  radio.setChannel(88);
  radio.setRetries(0,0);
  radio.setDataRate(RF24_250KBPS);
  radio.setPALevel(RF24_PA_MAX); 
 
  radio.openReadingPipe(0, address);
  radio.startListening();
   pinMode(LED0, OUTPUT);
 pinMode(LED1, OUTPUT);
 pinMode(LED2, OUTPUT);
 pinMode(LED3, OUTPUT);
 pinMode(LED4, OUTPUT); 
 pinMode(LED5, OUTPUT); 
 }

void loop(void){
 if (radio.available()){
   
  
      delay(20);

     radio.read(msg, sizeof(msg));  
   radio.read(atm, sizeof(atm)); 
   if(msg[0]>1000){
 
    delay(10);

     analogWrite(LED1,msg[2]);
    analogWrite(LED0,msg[2]);
    
    digitalWrite(LED2,HIGH);//ın1
    digitalWrite(LED3,LOW);//ın2
    
    digitalWrite(LED4,HIGH);//ın3
    digitalWrite(LED5,LOW); //ın4
   }

   
  
   if(msg[0]<80){
    delay(10);

    analogWrite(LED1,msg[2]);
    analogWrite(LED0,msg[2]);
    
    digitalWrite(LED2,HIGH);//ın1
    digitalWrite(LED3,LOW);//ın2
    
    digitalWrite(LED4,LOW);//ın3
    digitalWrite(LED5,HIGH);//ın4
 
   }
 
    
   if(msg[1]>1000){
    delay(10);       

     analogWrite(LED1,msg[2]);
    analogWrite(LED0,msg[2]);
     digitalWrite(LED2,LOW);//ın1
     digitalWrite(LED3,HIGH);//ın2

     digitalWrite(LED4,LOW);//ın3
     digitalWrite(LED5,HIGH);//ın4
    
   }
 
  if(msg[1]<80){
   
    delay(10);
     
    analogWrite(LED1,msg[2]);
    analogWrite(LED0,msg[2]);
     
    digitalWrite(LED2,LOW);//ın1
    digitalWrite(LED3,HIGH);//ın2
    
    digitalWrite(LED4,HIGH);//ın3
    digitalWrite(LED5,LOW);//ın4
   
   }
 if(atm[0]==2222)
     {
      
   delay(10);
    
   digitalWrite(LED1,LOW);
     digitalWrite(LED0,LOW);
     digitalWrite(LED5,LOW);
     digitalWrite(LED2,LOW);
     digitalWrite(LED3,LOW);
     digitalWrite(LED4,LOW);
     }
     
      }
  
  }

5 yıl 8 ay önce yanıtladın

Arduino pot değerini 16×2 lcd ekrandan nasıl görüntülerim?

öncelikle analog değeri okumanız lazım potansiyometre için okuduğun değeri bir değişkene atıp onu yazdırabilirsin daha sonra komutlar için geleceği yazanlar sayfasında komutlar mevcut 

Arduino alarm yapımında buzzer sorunu

22 Eylül 2019 tarihinde cevaplandı

öncelikle hocama katılıyorum serial.print komutunu yazarak programın nerde tıkandığını bulmalısın

nrf24l01 ile l298n motor sürücü

22 Eylül 2019 tarihinde cevaplandı

yani analog değerinizi verici kısmında 0'dan 1024'e kadar sınırlıyoruz 10 bit olduğu için sen o sınırladığın rakamı gönder vericiden

örneğin değerlendirmeyi vericide yaptın potansiyometren tam ortada yani bizim analog değerimiz 512 bunu gönder ve alıcıda direk bunu kullanırsın.

ARDUİNO

22 Eylül 2019 tarihinde cevaplandı

Merhaba iyi günler kodunuzdaki lopp() döngüsündeki kodları aynı yere kopyalayınız ve setup() içindekileride aynı şekilde yaparsınız kodunuzda sıkıntı gözükmüyor.Sadece ifadeleri biraz da düzenli kullanırsanız aklınız karışmaz ve daha net anlaşılır.