STM32F103 ve SPI DOKUNMATİK PANEL KULLANIMI

STM32F103 ile rezistif dokunmatik panelli TFT kullanılışını daha önce anlatmıştım. O yayında koordinat belirlemek için dokunmatik panelin sensör dirençlerinin uçlarından analog gerilim değerlerini ölçüyorduk. Bunun için de STM32F103 ADC lerini kullanıyorduk.

O yayına ulaşmak için burayı tıklayabilirsiniz : STM32F103 İLE DOKUNMATİK PANEL KULLANIMI.

Bazı ekranlarda ise bir dokunmatik panel kontrol işlemcisi -Touch controller- ile bir SPI arayüz üzerinden koordinat bilgileri alınabiliyor. Bu durumda mikro denetleyicinin ADC lerini kullanmadan kalem koordinatlarını okuyabiliyoruz. Bu öncekine göre daha esnek, farklı seçenekler sunan bir yöntem oluyor.

Continue reading “STM32F103 ve SPI DOKUNMATİK PANEL KULLANIMI”

EV ALETLERİ İÇİN SERVİS HİZMETLERİ

Bu yayın biraz yakınma, biraz uyarı niteliğinde olacak.

Evlerimizde mobilyalar dışındaki nereyse her şey irili ufaklı elektrikli aletler. Buzdolapları, TV ler, çamaşır bulaşık makinaları, fırınlar kombiler … Bunlar arızalanınca servis çağırıyoruz. Şurası bozulmuş, abi bunun beyni yanmış komple değişmesi gerekiyor vb. ne derlerse tamam deyip paralarını ödeyip bir de teşekkür edip gönderiyoruz.

Bende son zamanlarda bu arkadaşların nasıl çalıştıklarını daha yakından izlemek gibi bir saplantı oluştu. Emeklilikten dolayı başıma iş almaktan kaçınmadığımdan olsa gerek.

Sanki hayatımızda huzur bozacak şey kalmamış gibi, bir de bunu kurcalayıp asabımı iyice bozdum. Sizler de bir konuda daha “pimpirikli” olmayı göze alıyorsanız yazının devamını okursunuz. Yok, dert edecek yeteri kadar şey var zaten diyorsanız boş verin, başka şeylere bakın.

Continue reading “EV ALETLERİ İÇİN SERVİS HİZMETLERİ”

STM32 İLE OV7670 KAMERA KULLANIMI

OV7670 amatör uygulamalar için kullanılabilecek yaygın ve ucuz bir kamera. STM32F103 ile kullanmak üzere yaptığım çalışmaları paylaşacağım.

Bilindiği gibi STM32F103 ün 20kB lık RAM kapasitesi en mütevazi boyutlarda bir fotoğrafı saklamaya dahi yetmiyor. Ben ise desen tanıyan bir kod geliştirmek istiyorum, bir şekilde boyut problemini aşabilir miyim bakacağım.

Bu ilk yayında kameranın SCCB protokolu ile kontrolunu ele alacağız.

Continue reading “STM32 İLE OV7670 KAMERA KULLANIMI”

STM32F103 ve DS18B20 SICAKLIK SENSÖRÜ

DS18B20 gömülü sistemler ile kullanılan en popüler sıcaklık sensörlerinden birisi. BU sadece sıcaklık ölçüyor, aynı zamanda nem de ölçebilen DHT11 ve DHT22 ile bunların üzerine bir de basınç ölçen BM280 diğer seçenekleri oluşturuyor.

Bu yayında DS18B20 bin STM32F103 ile kullanılışını anlatacağım. İnternette bu konuda istemediğiniz kadar örnek uygulama var, başvurulacak kaynak seçenekleri bol. Benim vereceğim bilgiler ve kodlar da eşi benzeri görülmemiş şeyler değil.

Continue reading “STM32F103 ve DS18B20 SICAKLIK SENSÖRÜ”

SAMSUNG SMART TV ONARIMI

Oğlum’un 55″ Samsung smart TV si, artık 7-8 yaşlarında olmalı. arızalanıp hiç açılmaz hale geldi.

Servise vermeden önce, elektrikli ev aletlerimiz arızalandığında her zaman yaptığım gibi önce kendim bakmaya karar verdim. Çok kolay bulunan bir güç kaynağı arızası olduğunu belirleyip onardım.

Çok basit bir teşhis ve onarım da olsa, kısaca anlatıp kayda geçireyim.

Continue reading “SAMSUNG SMART TV ONARIMI”

STM32-UART HABERLEŞMEDE RING BUFFER KULLANIMI

STM32 ile UART haberleşmesi için yoklama (polling) ya da kesme (interrupt) tekniklerini kullanabiliyoruz. Gelen ve giden verileri “halka tampon” (ring buffer) adını verdiğimiz, sonuna ulaşılınca başa dönüp oradan kayda devam ettiğimiz türden tampon dizilere yerleştirmek verimli bir yöntem. Burada UART işlemleri için HAL kütüphanesini kullanmıyorum.

Bu yayında sürekli olarak kullanmakta olduğum bu tekniği anlatacağım.

Continue reading “STM32-UART HABERLEŞMEDE RING BUFFER KULLANIMI”

STM32 CUBE IDE – KUSURLAR (BUG)

STM32 çalışmalarımda STM32 Cube IDE platformunu kullanıyorum. ST Microelectronics bunu geçtiğimiz yıllarda bünyesine kattığı Atollic True Studio ile CubeMX yapılandırıcısını birleştirerek oluşturdu. Müşterilerinin kullanımına ücretsiz olarak sunuyor.

Fakat yeni bir ürün, zaman zaman, hatta bazıları ile çok sıklıkla, sorunlarla karşılaşıyorum. Bunların kendimden kaynaklanmadığını anlayana kadar epey ter döküyorum. Zira çoğu ilk defa benim başıma gelmiş oluyor. Forumlarda paylaşıyoruz ve ST den yeni sürümlerde çözüm bekliyoruz.

Bu arada hayat devam ettiğinden kendi çözümlerimizi üretmek zorunda kalıyoruz. Bu yayında karşılaştığım ve henüz çözüm getirilmemiş olan kusurları, bunları aşmak için yaptıklarımı anlatacağım.

Bunları değerlendirirken Mac OS kullandığımı (Ekim 2020 itibariyle Catalina Version 10.15.6) dikkate alınız. Cube IDE sürümü de : 1.4.2 Build: 7643_20200813_1322 (UTC). Windows’ta da durum farklı olabilir.

Continue reading “STM32 CUBE IDE – KUSURLAR (BUG)”

STM32 TABANLI MASAÜSTÜ CNC-2 (Yeni model)

İlk yayında anlattığım (STM32 Tabanlı Masaüstü CNC – 1) masa üstü CNC yi güncelliyorum. Mekanik yapıda bir değişiklik yok. Ana değişiklik elektronik donanımdaki motor sürücüler. Buna ilaveten yazılımda, motor sürüm algoritmasında epeyi değişiklik var. Bunlardan bazılarını daha CNC ye uygulamadan önce aşağıdaki yayınlarda anlatmıştım.

Aslında diğer yayınlarımın neredeyse hepsinde CNC de kullandığım yazılım tekniklerinden bir şeyler var. Daha önce de belirttiğim gibi, bu CNC, öğrendiğim şeyleri hayata geçirdiğim bir test platformu haline geldi.

Continue reading “STM32 TABANLI MASAÜSTÜ CNC-2 (Yeni model)”

UART İLETİŞİMDE VERİ DOĞRULAMA – CHECK SUM

Mikro denetleyiciler ile diğer cihazlar arasında veri alışverişi için sıklıkla asenkron haberleşme protokoluna -UART- başvuruyoruz. Genelde parazitsiz ve kısa mesafelerde sorun yaşanmasa da, yakın çevrede çalışan motorlar gibi parazit kaynakları var ise arada bir hatalı alınan karakterler olabiliyor. Benim CNC uygulamam da bunlardan birisi. Mikro denetleyicinin burnunun dibinde çalışan 500W lık bir fırçalı DC spindle motorundan, 3 tane güçlü adım motorunun kablolarından yayılan parazitler ortamı dolduruyor.

Bu durumlarda fiziksel seviyedeki önlemler, UART haberleşmeyi RS232, ya da daha iyisi RS485 üzerinden yürütmek. Buna ilaveten protokol seviyesinde de veri doğrulama yöntemlerine başvurmak gerekiyor.

Sadece kullanıcı ile text mesaj alışverişi gibi, arada bir gelen hatalı bir karakterin felakete yol açmadığı bir durumda bütün bunlara gerek görülmeyebilir. Ama, CNC ye giden bir hatalı koordinat bilgisi ortalığı bir anda savaş meydanına çevirebilir. Bu benim başıma geldiğinden dersimi aldım ve CNC-PC haberleşmesi sırasında veri doğrulama işlemlerine erken aşamalardan itibaren yer verdim.

CNC için kullandığım iki farklı yöntemi anlatacağım.

Continue reading “UART İLETİŞİMDE VERİ DOĞRULAMA – CHECK SUM”

STM32 TABANLI MASAÜSTÜ CNC-1

Masaüstü CNC geliştirme projem yeni bir şey değil. Adım motorlarla oynamaya başladığım günlerden beri -10 yıldan daha fazla bir süredir- sürekli olarak gündemimde olan bir konu. İlk masaüstü CNC mi çalıştırdığımdan bu yana kaç defa değişiklik yaptığımı bilemiyorum. Ama yazılımının güncel sürüm numarasının 20 olduğunu, her bir sürümde de a,b,c,d,e … şeklinde ilerleyen ara sürümler olduğunu belirtirsem bir fikir verir sanırım.

Sonuçta son 2-3 yıldır çok işime yarayan bir alet olarak atölyemin baş köşesinde duruyor. Sürekli olarak gelişmeye de devam ediyor.

Bugünlerde kontrol biriminde önemli bir değişiklik yaparak L298 motor sürücülerinden A4988 sürücülere geçiyorum. Bununla birikte yazılımda da hatırı sayılır geliştirmeleri uygulamaya koyuyorum.

Bu aşamada, buraya CNC nin mevcut durumuna ve yukarıda sözünü ettiğim değişikliklerden sonraki haline yönelik bilgiler koymaya karar verdim. Aslında CNC konusundaki ilk yayınım değil, üç yıl önce de kapsamlı bir yayın yapmıştım. Ama Blog Press bir platform değişikliği yaptı, o geçiş esnasında yayının bütün görsel öğeleri silindi. O zaman yazıyı onarmaya üşendiğimden yayından kaldırdım. Şimdi yeni baştan …

Continue reading “STM32 TABANLI MASAÜSTÜ CNC-1”