PIC16 bootloader之I2C bootloader

  瞭解更多關於bootloader 的C語言實現,請加我QQ: 1273623966 (驗證信息請填 bootloader),歡迎諮詢或定製bootloader(在線升級程序)。

  PIC16 bootloader之I2C bootloader, 是使用I2C通信接口的I2C bootloader。由於電腦只有USB接口,所以需要用USB-to-I2C的適配器來轉發數據,將電腦端的數據轉發到PIC16單片機,或者將PIC16單片機的數據轉發到電腦。系統接線圖如下:

  PC端運行的上位機程序目前最新版本是V3.0。上位機目前只在Win7電腦上測試過。上位機使用時,需要選擇I2C端口,Bit Rate選擇100KHz,從地址0xA8,由於我的硬件板子的SDA腳沒有外接上拉電阻,所以上位機需要設置上拉使能,這樣USB-2-I2C適配器會在SDA腳上拉到VCC。見下圖:

  USB-to-I2C適配器,使用的是Microchip PICKit Serial。這個工具可以配置成I2C Master,I2C Slave,或SPI Master。在這裏需要由上位機配置它爲I2C Master (I2CM)。

  PIC16 I2C bootloader 和PIC16 SPI bootloader 一樣軟件構架也是分三層,應用層和驅動層完全分離,如果換用其他芯片,移植非常容易。軟件架構見下圖:

  PIC16 I2C bootloader 是爲工業產品設計的bootloader, 是一個工業級bootloader。 工業產品大多有LCD屏幕。PIC16 I2C bootloader 可以通過LCD實時地顯示應用程序升級的進度,這是一個獨創性的功能。LCD 屏自帶的字庫只有0~9,a-z, A~Z的ASCII 字碼, 以及一些通用符號的ASCII 字碼,沒有進度條需要的字碼。爲此我自定義了以下字碼:

  LCD 一行有16個5*8的點陣,每個點陣都跟隨升級的進度依次顯示上面5個自定義的字符,就可以實時顯示應用程序升級的進度。我錄製了一個PIC16 I2C bootloader 升級應用程序的完整過程,右邊爲視頻鏈接:工業級I2C接口PIC16 Bootloader 應用程序升級視頻-科技-高清完整正版視頻在線觀看-優酷 (youku.com)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章