Klasik bir DIP anahtarına alternatifler


10

Bir kullanıcının sık sık bir yapılandırmayı değiştirmesini sağlayan bir parça arıyorum. Şu anda I2C G / Ç genişleticiye bağlı bir SMD DIP anahtarı kullanıyorum.

Beni rahatsız eden, bu bileşenlerin (IO genişletici IC ile birleştirilmiş DIP anahtarı) ve oldukça sıkıcı kullanıcı arayüzünde büyük ayak izi. DIP anahtarları ya da durumunu okumak için I2C gibi bir dijital veri yolu üzerinden konuşabileceğim aynı işlevi gören bir şey var mı?

Ayrıca tamamen farklı yaklaşımlara da açığım. Tek ihtiyacım olan, mekanik olarak kalıcı bir şekilde değiştirilebilen ve en az 64 farklı duruma izin veren bir şey . Devreye güç verilmediğinde yapılandırmanın yapılabilmesi ve kullanıcıya tam yapılandırmanın görsel geri bildirimini sağlaması önemlidir. Devreye güç vermenin iyi olacağı tek yol, yapılandırma ve görsel geri bildirimin bir mikrodenetleyici veya SoC'den kontrol edilmesine gerek kalmadan kendiliğinden kalmasıdır.

Soru 6 yıl önce bu soru ile ilgili: DIP anahtar değiştirme

Düzenleme: Cevaplarda bazı harika öneriler var ve bu soruyu cevapsız bıraktığımı düşünüyorum, topluluk oyları neyin yararlı olduğuna ve neyin olmadığına karar vermelidir. Benimle aynı sorunu yaşıyorsanız, tüm cevapları inceleyin.


Fantezi olmasını istiyorsanız, bluetooth modülünü kullanın ve tüm anahtarları akıllı telefonla ayarlayın.
Chupacabras

8
İlk düşüncem, bir dip anahtarını büyük yapan gerçek ayak izi değil; gerçek anahtarlar. Bir seri protokole geçmek, onu daha küçük yapmaz.
boru

3
Eğer kullanıcılar Hex saymak ve bir ya da iki tane kullanmak öğretebilir misiniz bu ?
brhans

Ben I2C çoklayıcı / port genişletici kurtulmak istiyorum. Sadece DIP anahtarı olsaydı iyi olurdu. Yani "dijital DIP anahtarı" gibi bir şey varsa, bu harika olurdu.
PTS

4
Küçük bir 6-switch paketinden ne kadar daha küçük olduğunu, artık mekanik olarak manipüle edilemeden hazırlanabileceğini düşünüyorsunuz?
Phil Frost

Yanıtlar:


19

DIP yerine SIP anahtarı kullanabilirsiniz. Kart alanındaki tasarruf size I2C arayüzünüz için alan (veya giriş mandallı bir kaydırma yazmacı gibi daha basit bir arayüz) sağlar:

resim açıklamasını buraya girin

Resim yatay olarak gösteriyor ancak aslında dikey olarak monte ediliyor.


Onlar gerçekten güzel ve çok katmanlı bir SMD tahtada yönlendirme için geniş bir alanı engellemeden bunlardan birini kullanmak biraz zor olsa da benim tasarım için onları düşünüyorum.
PTS

1
SMD sürümleri olabilir. SMD SIP paketlerinde genellikle kademeli ayaklar bulunur.
Passerby

SMD bir meydan okuma olabilir, Apem (resimdeki kişiyi yapan) onları yapmaz, başka bir yerde gördüğümü hatırlamıyorum. Normalde onları yönlendirmenin her zaman çok önemli olmadığı PCB'nin kenarına yakın olurdu.
Finbarr

9

"DIP" anahtarı

Her şeyden önce, bir "DIP" anahtarı büyük olmak zorunda değildir. İşte J-kanca pimleri ve 1,27 mm adım aralıklı 6 bit SMD anahtarı:

CHS-06TAresim açıklamasını buraya girin

Potansiyometre

Ayak izini azaltmak konusunda çaresizseniz ve kullanıcıyı biraz rahatsız edebiliyorsanız, bir A / D dönüştürücüsüne bağlı bir potansiyometre kullanabilirsiniz. 64 ayara ihtiyacınız olduğundan, 12 bitlik bir dönüştürücünün, bazı elektrik ve yazılım filtreleme ve eşik değerleri göz önüne alındığında, adımlar arasında fark etmek için yeterli çözünürlük tavanı olmalıdır. İşte 2 x 2 mm'lik bir çözüm:

PVF2A

Bununla birlikte, 64 fiziksel detektörü olan bir analog potansiyometre görmedim. Bu, cihazı yapılandırırken kullanıcı için güvenilir bir taktik geri bildiriminiz olmayacağı anlamına gelir. İki ayar arasında bir eşik üzerinde sağda bırakılabildiğinden, önyükleme sırasında doğru ayarı güvenilir bir şekilde bulmak da zordur - önceki ayarı bir EEPROM'da depolarım ve potansiyometre önyüklemedeki depolanan değere yeterince yakınsa, ben onları eşit kabul eder.

Ayrıca, muhtemelen olurdu değil o 2 2 tarafından mm'lik düzeltici kullanabilirsiniz, ancak farklı trimpotları binlercesi var.


Potansiyometre ile ilginç bir fikir. Rağmen kesin ayar görsel geri bildirim önemli olacaktır.
PTS

Bir düzeltici kabına benzer bir profil olan, ancak ikili çıkışları olan, genellikle 4-bit / 16 basamaklı, net dişlilerle 0-F olarak işaretlenmiş mini döner kodlayıcılar mevcuttur.
John U

@JohnU Bunlardan ikisine ihtiyacınız var, bu da daha büyük bir çözüme yol açıyor.
boru

Bunlardan ikisi (belki de düz değil dik) ambalajı kolaylaştırabilir.
John U

@PTS Cihazınızda zaten bir tür ekran varsa, değeri okumak ve görüntülemek için yazılımı kötüye kullanabilirsiniz. Zaten bir tür yapılandırma menüsü yüklendiğini varsayarsak, bu da çok fazla iş gerektirmez. Tabii ki, cihaz kapalıyken ekranı okuyamazsınız.
Direk

9

Yedek bir ADC'niz var mı?

Yakındaki bir mikro denetleyicide yedek 8 bitlik bir ADC'niz varsa, muhtemelen bir R-2R merdiveni veya ikili ağırlıklı bir merdiven olan IO genişleticiyi bir direnç ağı lehine atabilirsiniz. Bu, anahtar konumlarını analog seviye olarak kodlar. Direnç merdivenleri çok küçük paketlerde mevcuttur, ancak I2C genişleticinizden daha küçük bir tane alıp alamayacağınızı bilmiyorum.

Kaç genel amaçlı IO hatları var?

Daha az sayıda IO hattı ile geçebilirseniz, belki IO genişleticiden vazgeçebilir ve sahip olduklarınızı kullanabilirsiniz? Anahtarları altı G / Ç hattından daha azına çoğaltabilirsiniz. Aslında, 3 diyot için yeriniz varsa ve mikrodenetleyicinizde tristat pimleri varsa, sadece 3 pimle yönetebilirsiniz.

Kullanıcılarınız biraz teknik bir şey yönetebilir mi?

Kullanıcılarınız talimatları izleyebilir ve yapılandırma nadiren değişirse, direnç koyabilecekleri açık terminallere sahip olabilirsiniz. Direnci bir ADC ile veya bir kapasitöre karşı yaptığı zaman sabitini ölçerek ölçersiniz. İkinci yaklaşımla ilgili zor olabilecek 64 direnç değerini ayırt edebilmeniz gerekir. Ve elbette kullanıcılarınızın elinizde doğru direnç değerlerine / kasa stillerine sahip olması gerekir.


Dirençler ile 2 direnç de yapabilirsiniz, o zaman sadece 4 bit A / D dönüştürücüye ihtiyacınız vardır ve dağıtmak için daha az direnç gerekir, böylece fiyatı
kaydedersiniz

Sorumu yeniden yazdım. Beni ilgilendiren DIP anahtar boyutu değil, bir G / Ç genişletici şeklinde ekstra bileşen ihtiyacı. Benim I2C otobüs dışında sadece 3 IO kaldı.
PTS

Altı düğmeyi ele almak için üç üç durumlu IO hattı yeterlidir. Genel olarak n ^ 2-n anahtarlarını n IO hattı ve n diyot ile adresleyebilirsiniz. Şematik mi eklemeliyim?
Jack B

7

Bir veya daha fazla Kodlu döner anahtar aradığınız şeydir.

Teorik olarak jumper'lar 100'lü seçeneğe ihtiyaç duyduğunuzda daha fazla yapılandırma sunar, çünkü kullanıcılar bunlardan istediğiniz sayıda farklı konfigürasyonda bir araya getirebilir, dirençler, kapasitörler, diyotlar vb.


Üzgünüm benimkini eklediğimde cevabını kaçırmış olmalıyım. Gerçekten de DIP anahtarlarına harika bir alternatif!
PTS

4

NXP + akıllı telefondan NFC NTAG . Temelde bir I2C EEPROM'dur ve NFC üzerinden sistem gücü olmadan da okunabilir ve yazılabilir.


2

Burada harika seçenekler var! Biri biraz daha belirsiz olanı: Bir IR alıcısı kullanın ve ardından ayarları ışınlamak için bir TV uzaktan kumandası veya bilgisayarı kullanın. RGB ışıkları böyle yapar.


1
O kadar IR, enerji biraz sağlamaz belki nasıl donanım fark ediyorum cihazın kendisi güç değilken sadece işi ama?
MSalters

2

Bunu araştırırken Rotary Kodlu Anahtarlar için bir öneri aldım. Ayak izleri, biraz eşdeğer 1,27 mm adımlı DIP anahtarıyla karşılaştırılabilir. Bence DIP / SIP anahtarlarına kıyasla çok daha üstün bir kullanıcı arabirimi sunuyorlar.

Ondalık veya onaltılık bir sayıyı ikiliye dönüştürmek ve bir ton küçük anahtarı çevirmek yerine, bu döner anahtarların 1 veya 2'sini çevirebilir ve onaltılık sayılarla çalışabilirsiniz. Bir kullanıcıya E6'ya "girmesini" söylemesini, belirli bir düzende birçok anahtarı çevirmelerini istemekten çok daha kolaydır.

resim açıklamasını buraya girin


1

Farklı bir yaklaşım bir döner kodlayıcı, bir EEPROM ve 6 küçük LED olabilir.

Durum EEPROM'a kaydedilir ve LED'ler seçili olan modu gösterir.

Kodlayıcının çevrilmesi modlar arasında geçiş yapacaktır.

Muhtemelen fazla yer tasarrufu sağlamaz - tipik kodlayıcınızın 6 mm şaftı vardır ve LED'ler için de alana ihtiyacınız vardır.

Sadece tek bir döner anahtar kullanmak umut verici görünmüyor. 64 konumla, konum başına 6 ° 'nin biraz altında olacaksınız, ya da etiketlemenin zor olacağını hissedeceksiniz.


Sadece yorumunuzu @Trevors cevap okuyun, bu yüzden bu yaklaşım da işe yaramaz.


Yine de teşekkürler, fikriniz en azından tüm sistemin önyüklenmesini gerektirmez. Bunu soruya kabul edilebilir bir yol olarak ekledim.
PTS

Bisiklete binmek için LED'leri olan küçük bir buton işe yarayabilir. Bahse girerim, Star Trek
TNG'deki tricorderları

1

Üç seçenek.

  1. Analog. Ayarlanabilir voltaj bölücü. Kullanıcı, değeri ayarlamak için kendi standart% 5 aralık dirençlerini sağlar.

  2. PWM. Cihazınızın okuduğu 64 adımlı bir opto izole PWM veya RC tarzı devre. Ayrı olarak veya aynı kaynaktan çalıştırılabilirler, ancak opto izole edildiğinden cihazınız çalışmayacaktır. Önyüklemeden sonra PWM devresini devre dışı bırakabilirsiniz.

  3. Dijital. Düğme kontrollü dijital bir potansiyometre. Yine, devre cihazınızdan bağımsız olarak çalıştırılabilir.


1

Ayar çarkı kodlayıcıları? Bunlar 0 ila 9 arasındadır, istiflenebilir ve ikili çıkışlara sahiptir:

Thumbwheel kodlayıcılar


2
Bu gerçekten bir SMD DIP anahtarından daha mı küçük?
boru

Ah, hayır. Basit bir soru okuyamama kadar büyük ... Lütfen uygun gördüğünüz şekilde oy verin. Zamanını harcadığım için üzgünüm.
peter

0

I2C'yi veya başka bir arabirimi belki de USB'yi ortaya çıkarabilir ve kullanıcının telefonunu bazı dahili EEPROM adreslerini yapılandırmanıza izin veren özel bir uygulama ile bağlamasına izin verebilirsiniz.

Ancak, bir telefon uygulaması kullanmak oldukça sorunlu olabilir. Uygulamayı desteklemeniz ve en son teknolojilerden haberdar olmanız ve birçok telefon satıcısını desteklemeniz gerekir.

Ya da benzer bir izin sağlar özel bir "Dongle" takabilirsiniz.

Ama sana çok yer kazandıracağından şüpheliyim.

İki veya üç düğme ve bir tür gösterge gibi başka kullanıcı girişleriniz varsa, düğmelerdeki uygun kullanıcı girişi ile (basılı tutma süresi vb.) Cihazı bir programlama moduna sokmak ve yapılandırmak da mümkündür. bu şekilde. Termostatlar, su yumuşatıcılar, kutu bilgisayar vb.

İki veya üç düğme ve bir LED ile çok şey yapabilirsiniz.

Elektriksiz olarak yapılandırılması gerekiyorsa, hemen hemen anahtarlara veya jumper'lara takılı kalırsınız.


3
Telefonlar oldukça değişken olduğundan, bir telefon uygulaması kullanmak oldukça sorunlu olabilir. Gömülü bir sistem 5 ila 10 telefon nesli arasında kolayca ayakta kalabilir ve tüm zaman dilimi için destek sağlamak sorunlu olabilir.
AndrejaKo

@AndrejaKo iyi bir nokta .. bir ekleme için iyi enuf :)
Trevor_G

3
Ne yazık ki uygulama, devre açık olmadan kullanıcının yapılandırmayı değiştirmesini gerektirir, bu yüzden neden mekanik olarak yapılandırılabilir olması gerekiyor. Bazı ilginç fikirler olsa.
PTS

2
@PTS sonra hemen hemen anahtarlar veya jumper ile sıkışmış.
Trevor_G
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.