Bir kaç ufak cihaz tasarladım. Hepsinin bir arada çalışmasını istiyorum. Bunun için son derece basit olan bir yöntem kullanmak istiyorum. USART'ı 485'e çevirerek şimdilik bir kaçı arasında haberleşme sağlayabiliyorum.
Ekteki gibi cihazları birbirine bağladığımı düşünürsek, her bir cihaza farklı adres vererek şu şekilde çalıştırmayı planlıyorum:
1- 0x01'deki 5. output'u kontrol etmek için 0x03'ten : 0x01(Alıcı Adres) + 0x05 (5. Output'u aktif edecek değer) göndermeyi düşünüyorum. Gerisini uart yapıyor ve 485e çevirerek gönderiyorum. 2- Master Slave olaylarına girmeden bu işlemi yapmak istiyorum. 3- Her bir cihaz iletişime başlamadan önce örneğin 5ms boyunca hattı dinleyecek ve eğer hatta bir trigger yoksa (hat müsaitse) ne söyleyecekse alıcı adresini ve göndermek istediği datayı göndererek hatta sesini duyuracak. 4- Bütün cihazlar kendi değerlerini elektrik kesilmesine karşı eprom'da tutacak. (table oluşturmayacağım) 5- Tüm cihazlar read modunda olacak (standby'da iken), bir şey söyleyeceği zaman hatta trafik yoksa write moduna geçip durumunu bildirecek.
İletişim şu an için half duplex. Hatta sürekli data trafiği olmaması için (hata riski ve veri kayıplarını en aza indirmek adına) sadece birisinin karın ağrısı olduğunda ilgili makama bildirmesini sağlamak amacıyla hatta data göndermesini planlıyorum. Bir kablo mesafesinin 20mt. olduğunu düşünürsek, sinyal kayıpları ve bu haberleşme mantığının riskleri üzerine neler önerirsiniz? Sizce bu düz mantık işe yarar mı?