Tôi đang làm việc trên một thiết kế sản phẩm mới và có thể sẽ có những thay đổi / sửa chữa phần cứng nhỏ hoặc lớn trong suốt vòng đời của sản phẩm. Để cập nhật firmware trong tương lai trong trường, tôi cần một cách để xác định sửa đổi phần cứng. Một chiến lược tốt là gì?
Tôi hiện đang kéo hai chân dự phòng lên / xuống bằng các điện trở bên ngoài và kiểm tra mẫu. Điều này chỉ cho phép sửa đổi 4 phần cứng, nhưng điều đó có thể đủ cho các mục đích thực tế. Nó có thể trở thành vấn đề nếu tôi cần một hoặc cả hai chân đó trong lần sửa đổi phần cứng trong tương lai.
Tôi đoán một cách kinh tế hơn có thể là có một bộ chia điện trở được kết nối với chân ADC. Mỗi sửa đổi phần cứng có thể có điện trở giá trị khác nhau. Thật không may, tôi không có bất kỳ ADC dự phòng nào trong thiết kế hiện tại của mình.
Tôi đoán một cách khác có thể là mã hóa số phiên bản phần cứng trong EEPROM hoặc đèn flash mcu trong quá trình sản xuất? (Chúng tôi không có cơ sở đó vào lúc này.)
Tôi đoán tôi đang tìm kiếm gợi ý cho một phương pháp linh hoạt và mạnh mẽ.
[BIÊN TẬP]
Re. đề xuất từ @ trav1s: Tôi không có bus địa chỉ mỗi se nhưng tôi có EEPROM 24LCxx trên bus I2C. 3 bit thấp của Địa chỉ nô lệ được kết nối cứng. Tôi đoán rằng tôi có thể thay đổi các bit địa chỉ và tìm kiếm EEPROM trong khi khởi động.