某寶上購買了一塊PCB800099液晶驅動板, 賣家出貨的時候刷的驅動不對,遂需要重新燒錄程序
可是苦於沒有編程器,尋遍網絡后找到幾種解決方案: arduino刷,樹莓派I2C口刷,linux下用vga口刷,並口線刷,拆EEPROM刷
正好arduino在手邊,於是就先測試這個方法吧, 大致流程就是利用arduino的I2C口和驅動板通信, 然后利用SPI口上傳或下載驅動文件到驅動板
先把硬件搭起來吧, 手上沒有SD卡模塊,正好利用一個壞掉的讀卡器直接做個吧,TF卡8個腳只用到中間6個,成品如下:
然后按照如下接線方式連接到arduino uno
直接用示例測試SD卡讀寫沒問題了, 下邊該連接驅動板, 連接如下圖:
硬件就位,該上程序了,項目地址:https://github.com/adafruit/Adafruit_RTD266X_I2CFlasher
編譯調試過程中出現各種奇怪的問題,比如串口只輸出2個字符就停止運行了, 不停重啟, 打開文件失敗...
最終找出問題原因所在是運行內存空間太小, 解決辦法是注釋掉rtd266X_main.cpp文件中FlashDevices數組以節省大量運存
可以運行成功后再取消注釋相應的Jedec ID項, 如果沒有對應芯片數據,查datasheet手動添加相應的數據
運行后有可能會出現Can not handle this chip提示, 添加相應的代碼進去可以解決
現在終於可以愉快的刷程序了, 記得驅動板也要上電
其它的方法就不測試了...附其它方式地址:https://github.com/ghent360/RTD-2660-Programmer