日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

基于PSoC的I2C Bootloader

出處:ryyhf 發(fā)布于:2011-08-26 18:01:11

  PSoC介紹

    PSOC的重點都是在工業(yè)控制領(lǐng)域,把  數(shù)字模擬模塊集合到一個片子上倒是個不錯的想法,但是主要是應(yīng)用到邏輯,算法等較為簡單的領(lǐng)域。對通信,無線,網(wǎng)絡(luò),數(shù)據(jù)處理等這些技術(shù)涉及的不多。我認為現(xiàn)在這一行業(yè)的競爭力在技術(shù)上。

  PSoC是一個8位的核,包括SRAM、SROM和Flash等模塊,重要的是PSoC集成了可供設(shè)計者隨意配置的數(shù)字模塊和模擬模塊。

  psoc的特點就是集成度高,設(shè)計靈活??梢钥闯墒?a target="_blank">MCU,F(xiàn)PGA/CPLD,ispPAC集合。

  1.它里面包含MCU(psoc1為m8c,psoc3為51,psoc5為arm9),這是和你講的那幾種是有區(qū)別的。它可以很方便的實現(xiàn)系統(tǒng)設(shè)計,雖然fpga可以通過設(shè)計實現(xiàn)軟核,但增加了設(shè)計難度,性能也達不到硬核的程度。

  2.PSoC還包含可編程數(shù)字模塊(類似FPGA/CPLD),以及可編程模擬模塊(類似ispPAC),即具有處處理數(shù)字和模擬兩種信號的能力,此外,psoc具有的a/d,d/a模塊解決了兩種信號的接口問題。

  3.PSoC設(shè)計很簡單,并且可以實現(xiàn)重構(gòu)。

  4.psoc除了具備一般單片劑的資源外,還有可編程時鐘,低電壓檢測,升壓泵,內(nèi)部精密參考電壓等等資源。

  基于PSoC的I2C ISSP方式

  PSoC器件可以基于I2C協(xié)議實現(xiàn)在系統(tǒng)中串行編程(ISSP),Power-On模式下通過SDA/SCL和VDD/GND就能夠編程整個代碼空間,Reset模式下則是使用SDA/SCL和XRES/GND編程。在很多PSoC CapSense觸摸按鍵應(yīng)用中,如果改變了機械布局因而需要重新定義按鍵引腳,或者需要賦予新的按鍵觸發(fā)行為,主機端通過集成ISSP協(xié)議,可以在需要的時候新的。hex代碼到PSoC端,實現(xiàn)代碼的現(xiàn)場快速升級。

圖1ISSP編程流程圖

圖2Bootloader存儲方式框圖

  圖1是ISSP編程流程圖,首先使PSoC進入編程模式,校驗其內(nèi)部的Solicon ID,保證是對正確的PSoC編程,對PSoC內(nèi)部的Flash塊(64字節(jié))逐一擦除/編程,并讀出Flash內(nèi)容進行比較;ISSP隨后編程用戶自定義的Flash塊保護模式,每個Flash塊可以被指定為W - 寫保護 / R - 讀保護 / U - 不保護 / F - 工廠更新;,每個Flash塊的校驗和被讀出并計算出全部Flash空間的總校驗和,如果與。hex文件中的總校驗和一致,代碼已經(jīng)被成功升級。

  I2C Bootloader方式

  用戶也可以使用標準的I2C系統(tǒng)接口,通過I2C Bootloader方式更新PSoC器件內(nèi)的用戶代碼。從圖2可以看出,整個Flash空間由紅色的不可編程的Bootloader區(qū),灰色的可以現(xiàn)場編程的用戶應(yīng)用程序區(qū),以及黃色的Bootloader校驗和區(qū)組成。PSoC復位時,Bootloader接管程序控制權(quán),它會計算和校驗用戶代碼的校驗和,僅當匹配時才轉(zhuǎn)到用戶代碼的首地址,開始運行用戶代碼。與ISSP方式不同,I2C Bootloader方式僅更新可以現(xiàn)場編程的用戶代碼區(qū),F(xiàn)lash空間的其他區(qū)用于此方式的控制和校驗。

圖3I2C Bootloader方式頭部數(shù)據(jù)

  I2C Bootloader方式在數(shù)據(jù)傳輸時分三種命令格式,F(xiàn)F38是進入Bootloader命令,F(xiàn)F39是寫Flash塊命令,F(xiàn)F3B是退出Bootloader命令。圖3是I2C Bootloader方式傳輸?shù)念^部數(shù)據(jù),圖4則是成功的數(shù)據(jù)。

圖4I2C Bootloader方式成功的數(shù)據(jù)

  Bootloader方式工作時,需要更新的PSoC器件做為一個I2C Slave。圖3中,行數(shù)據(jù)傳輸將進入Bootloader方式,它由0x70 - Slave 7bit地址0x38的寫地址,需要忽略的兩個前綴字節(jié)380a ,F(xiàn)F38命令和8個字節(jié)的Bootloader key組成。所有的Bootloader命令都必須包含正確的Bootloader key,否則將被Slave器件忽略。第二行由71 - Slave 7bit地址0x38的讀地址和狀態(tài)響應(yīng)字節(jié)0x20組成,狀態(tài)響應(yīng)字節(jié)的其他值標識各種出錯狀態(tài) - 02/Image verify error, 04/Flash checksum error, 08/Flash protection error, 10/Comm checksum error, 40/Invalid bootloader key, 80/Invalid command error.

圖5BootLdrI2C用戶模塊參數(shù)設(shè)置

  寫Flash塊命令傳輸了絕大部分數(shù)據(jù)量,除了一個塊以外,其他都有相同的格式。圖3中,寫Flash塊命令包含0x70, 需要忽略的兩個前綴字節(jié)3810 (Slave 7bit地址和后續(xù)字節(jié)長度),F(xiàn)F39命令, Bootloader key,F(xiàn)lash塊的塊號,64字節(jié)數(shù)據(jù),0x18 - 64字節(jié)數(shù)據(jù)的校驗和,0x86 - 此傳輸78字節(jié)的校驗和(包括FF, 39, Bootloader key, 塊號, 64字節(jié)數(shù)據(jù), 0x18)。僅在以上數(shù)據(jù)傳輸完后需要傳輸讀地址0x71,并讀出正確的狀態(tài)響應(yīng)字節(jié)0x20.

圖6BootLdrI2C用戶模塊提供的BootLoaderTools

  寫Flash塊命令包含了一些特殊信息,參見圖4,(0d, d4) 是隨后直到(85, f4)的字節(jié)校驗和,(08,80)是圖2灰色用戶代碼區(qū)中可重定位中斷矢量表的地址,(12,00)是圖2灰色用戶代碼區(qū)中用戶代碼空間的開始地址,(3f,80)則是用戶代碼結(jié)束塊的地址,(00,b7)是用戶代碼占用的塊數(shù)量,(85,f4)是Bootloader計算的用戶代碼檢驗和,0xb5是以上64字節(jié)數(shù)據(jù)的檢驗和,0xbd是此傳輸78字節(jié)的校驗和。

  通過PSoC Designer的用戶模塊實現(xiàn)I2C Bootloader方式

  PSoC Designer是功能全面的基于圖形用戶接口的PSoC軟件開發(fā)環(huán)境,它的用戶模塊可通過配置PSoC器件內(nèi)部資源創(chuàng)建Timer、PWM、ADC/DAC,I2C等多種有用功能。一個用戶模塊包括硬件配置數(shù)據(jù)、啟動代碼、中斷服務(wù)例程以及應(yīng)用編程接口,這些API可對用戶模塊的各個方面進行即時控制。用戶使用PSoC Designer中的BootLdrI2C用戶模塊可以很方便的實現(xiàn)啟動時的引導載入。

  用戶先在項目中添加BootLdrI2C用戶模塊,然后選擇“I2C for Bootloader Only”或“Full I2C API Support with Bootloader”;之后設(shè)置圖五中的用戶模塊參數(shù),這些參數(shù)定義了I2C的引腳和通信速率,Bootloader的I2C地址,用于其他I2C操作的地址,以及圖2中各個存儲區(qū)的參數(shù)。用戶隨后可以通過圖6提供的“Boot Loader Tools”設(shè)置中斷向量和重啟動向量,編譯項目后生成應(yīng)用程序校驗和,以及從hex 項目輸出文件中生成一個可以升級PSoC器件的dld 文件。

  其它需要設(shè)置的包括在菜單Project -> Settings -> Linker中,設(shè)置Relocatable起始地址,在flashsecurity.txt中指定Flash塊的訪問屬性——可以現(xiàn)場編程的區(qū)域需要設(shè)置為可寫操作。

  在PSoC器件上加入I2C Bootloader功能后,我們還可以通過Cypress提供的I2C-USB Bridge工具通過PC更新代碼到PSoC器件來驗證以上設(shè)計。


  

參考文獻:

[1]. PSoC datasheet http://www.hbjingang.com/datasheet/PSoC_555958.html.
[2]. SROM datasheet http://www.hbjingang.com/datasheet/SROM_622730.html.
[3]. dld  datasheet http://www.hbjingang.com/datasheet/dld+_1881046.html.


版權(quán)與免責聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!