Kardeş birinin senin için yazmasını beklersen işin zor.
https://www.firatdeveci.com/tarihi-haberlesme-metodu-modbus-rtu/
Bu sayfayı incele.Aslında işin içine girince çokda birşey olmadıgını anlayacaksın.
Neticede bir biligiyi göndermek veya almak için belli bir format kullanıyor.Gönderilen veya alınan verinin dogrulugunu teyit etmek için crc hesaplanıyor.Veri gönderilirken bu crc verisi gönderilen dataya ek olarak gönderiliyor.Alıcı taraf gelen bu datanın crc sini hesaplıyor,eger gönderilen taraftan gelen crc ile alıcı tarafta hesaplanan crc birbirinin aynısı ise gelen veri dogru alınmış demektir,aksi durumda veri yanlış alınmış demektir.
Tek bir bit,tek byte veya çok byte okumak için farklı data gönreim formatları kullanılıyor.Gönderilen datanın içerisinde gönderilen datanın uzunluguda ekleniyor.
Bu işi yapmak için öncelikle işi iyice kavraman lazım.
internette halehazırda bulunan similasyon programlarından birini indirip bu programlara sen hariçden data gönderip alarak işin nasıl çalıştıgını daha iyi anlayabilir ve daha sonra bu yaptıklarını microişlemciye uygun şekilde yazarsın.Microişlemci kısmında zaten birşey yok,gönderecegin datanın nasıl olması gerektigine karar verdikten sonra seri olarak gönderiyorsun.
Master slave olayına dikkat et.Bir cihaz herhangibir datayı gönderir göndermez dinleme moduna geçip gelen veriyi okuması gerekir.Genelde master slaveye bana şu datayı gönder sorgusunu gönderir ve slavede bu sorguya cevap olarak uzunluk bilgisini,datayı,crc yi gönderir.
Aşagıdaki linkden demo programını indirebilirsin.
https://www.ozm.cz/ivobauer/modlink/downloads.htm