İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Geçenlerde bir CH341A mini programlayıcı satın aldım. Mini programlayıcı tamamdır ve 24 ve 24 serisi çipleri programlamak için kullanılabilir. Çok düşük maliyetlidir, ancak bilgisayar BIOS'umu ve yönlendirici bellenimini flaş etmek için kullanabileceğim için oldukça kullanışlıdır.
WCH, geliştiricilerin çipi kullanması için API ve C kitaplığını nazikçe yayınladı. Bu yüzden mini programcı için kendi programlama yazılımımı oluşturmaya karar verdim.
Kullanmış olduğum programlama yazılımı WCH tarafından sağlanan CH341DLL.dll kütüphanesini kullanmaktadır. USB üzerinden I2C ve SPI protokolünü kullanabilir.
Tüm kodlar C# ile yazılmıştır ve tüm C++ fonksiyon çağrıları C# tarafından kullanılmak üzere paketlenmiştir.
Sürücü ve C kitaplığı WCH'nin web sitesinden indirilebilir.
Adım 1: Ana Pencere
Ana pencereler, bu Flash NOR / EEPROM çiplerini okumak ve programlamak için ihtiyacımız olan tüm fonksiyonları sağlar. Aynı işlevi gerçekleştirmek için menüyü de kullanabilirsiniz.
Çipten okunan dosya veya içeriği düzenlemek için yerleşik HEX düzenleyicisine sahiptir. Örneğin, çipe programlamadan önce yönlendirici bellenimindeki MAC kodunu ekleyebiliriz.
İkili dosyayı düzenlemek için tüm ilgili işlevler (Kopyala / Yapıştır / Ara vb.) sağlanmıştır.
Adım 2: Çip Seçimi
Öncelikle üzerinde çalışmak istediğiniz çipi seçmelisiniz.
Çip veritabanında çipi aramak için "Ara" düğmesine tıklamanız yeterlidir. Çipinizin anahtar kelimelerini yazmanız yeterlidir, eşleşen tüm çipler ızgarada görüntülenecektir.
24 serisi çipler (I2C) için, onları tanımlayabilmemiz için herhangi bir kimliği / imzası olmadığından manuel olarak seçmeniz gerekecektir.
25 serisi çipler (SPI) için çipin id/imzasını okumak için "Auto Detect" butonunu kullanabilirsiniz. Bir kimlik bulunursa, seçmeniz için bir çip seçim penceresi açılır.
3. Adım: Chip'i Okuyun
Seçtiğiniz çipi okumak için "Oku" düğmesini kullanın. Çipin içeriği HEX editöründe görüntülenecektir.
Çip içeriğini kaydetmek için "Kaydet" düğmesini kullanabilirsiniz.
Adım 4: Program Çipi
"Aç" düğmesine tıklayarak mevcut bir dosyayı açabilirsiniz.
Bir dosya seçildikten sonra içeriği HEX düzenleyicisine yüklenecektir.
Çipe programlamadan önce içeriğe değişiklikleri uygulayabilirsiniz.
Yüklenen içerikten memnun kaldığınızda, onu çipe programlamak için "Program" düğmesine tıklayın.
Ayrıca, programlandıktan sonra verileri doğrulayacak olan çipi programlamak için "Otomatik" düğmesini de kullanabilirsiniz.
Programlama başlamadan önce SPI çipi otomatik olarak silinecektir. Ancak, çipi manuel olarak da silebilirsiniz.
Adım 5: Çipi Doğrulayın
Çipi okuduktan veya yazdıktan sonra, okuma/yazma içeriğini HEX düzenleyicisine yüklenen içerikle karşılaştırmanız şiddetle tavsiye edilir.
"Doğrula" düğmesine tıklayarak içeriği doğrulayabilirsiniz.
Adım 6: Dosya Dilimleyici
Program, dosyanın / yüklenen içeriğin belirli bir bölümünü dilimlemek ve bir dosyaya kaydetmek için yerleşik dosya dilimleyici işlevine sahiptir.
Bu işlev, yönlendirici yazılımları üzerinde çalışırken çok kullanışlıdır. Örneğin, yönlendiricinizin ART bilgilerini kaydetmek için dosyanın son 64KB'sini çıkarın.
7. Adım: Dosya Birleştirme
İki dosyayı tek bir dosyada birleştirmek için dosya birleştirmeyi de kullanabilirsiniz.
Bazı dizüstü bilgisayar BIOS'ları, BIOS ve EC bilgilerini depolamak için birden çok yonga kullanır. Üzerinde çalışmadan önce bunları birleştirmeniz gerekecek.
Birleştirme işlevini kullanarak, daha sonraki işlemler için iki dosyayı tek bir dosyada birleştirebilirsiniz.
Adım 8: Program İndirme
Lütfen programı ve kaynak kodunu aşağıdaki Google Drive'ımdan indirin.
drive.google.com/drive/folders/17xf3EKIPe2Nhx2obE235PBRnkSKaU4uv?usp=sharing
Kaynak kodu henüz iyi yorumlanmadı. Daha iyi okumak ve ayakta durmak için bu yorumları ekledikten sonra iyi yorumlanmış bir sürüm yükleyeceğim.