0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創(chuàng)信息技術工控主板支持鐵電存儲器方案

英創(chuàng)信息技術 ? 來源:英創(chuàng)信息技術 ? 作者:英創(chuàng)信息技術 ? 2019-11-14 09:46 ? 次閱讀

英創(chuàng)公司ARM9 系列工控主板產品,對數(shù)據(jù)的記錄均采用了基于NandFlash的文件系統(tǒng),但在實際應用中,客戶經常需要頻繁的記錄一些小塊的重要數(shù)據(jù),同時要求數(shù)據(jù)在掉電情況下不丟失,這時如果采用文件系統(tǒng)就不能完全滿足需求。通常的解決辦法是將數(shù)據(jù)直接存儲在非易性存儲器中(NVRAM)。NVRAM有兩種基本類型,一是基于SRAM的傳統(tǒng)NVRAM,另一種是近些年廣泛使用的鐵電存儲器,與傳統(tǒng)的基于SRAM技術的存儲器相比,鐵電存儲器在信號接口、操作功耗方面有無可比擬的優(yōu)勢。目前在市場流行的有4Kb-256Kb鐵電存儲器產品,并有多種接口類型可供選擇,包括I2C、SPI接口等,本文以Ramtron公司的FM24L256為例,介紹英創(chuàng)主板EM9160操作FM24L256的方法。

FM24L256非易失鐵電存儲器結構容量為32,768 x 8位,讀/寫次數(shù)無限制,掉電數(shù)據(jù)保存10年,無延時寫入操作,采用I2C總線接口,總線頻率可高達1MHz。同時具有工業(yè)級溫度范圍,低功耗操作等特點。EM9160 是英創(chuàng)公司的一款預裝Windows CE 實時操作系統(tǒng)的高性價比ARM9 工控主板產品。EM9160 最多可支持16 位方向可獨立設置的GPIO,這些GPIO 均可被用來仿真作為I2C的信號。

FM24L256為SOP8封裝芯片,只需把2位I2C總線信號與EM9160的GPIO相連,即完成擴展硬件的連接。

EM9160工控主板對鐵電存儲器FM24L256的驅動程序描述如下:

#include ‘EM9160_DIO_EX.h’

#define GPIO0 0x01

#define GPIO1 0x02

#define GPIO2 0x04

#define GPIO3 0x08

#define GPIO4 0x10

#define GPIO5 0x20

#define GPIO6 0x40

#define GPIO7 0x80

#define GPIO8 0x100

#define GPIO9 0x200

#define GPIO10 0x400

#define GPIO11 0x800

#define GPIO12 0x1000

#define GPIO13 0x2000

#define GPIO14 0x4000

#define GPIO15 0x8000

#define SCK GPIO6 // I2C時鐘信號,可根據(jù)實際情況更改

#define SDA GPIO7 // I2C數(shù)據(jù)信號,可根據(jù)實際情況更改

實現(xiàn)SCK和SDA信號的操作函數(shù):

void GPIO_i2c::SetSDADir(int Dir) // 設置SDA方向

{

if(Dir)

PIO_OutEnableEx( SDA ); // set gpio7 to output (SDA)

else

PIO_OutDisableEx( SDA ); // set gpio7 to input (SDA)

}

void GPIO_i2c::SetSCL(int Level) // 置高/置低SCK信號

{

if(Level)

PIO_OutSetEx( SCK );

else

PIO_OutClearEx( SCK );

}

void GPIO_i2c::SetSDA(int Level) // 置高/置低SDA信號

{

if(Level)

PIO_OutSetEx( SDA );

else

PIO_OutClearEx( SDA );

}

int GPIO_i2c::GetSDA() // 讀取SDA狀態(tài)

{

DWORD dwSDAStatus = 0;

// put code here to get SDA status

PIO_StateEx( (UINT16*) &dwSDAStatus );

dwSDAStatus = dwSDAStatus & SDA;

if(dwSDAStatus)

{

return 1;

}

return 0;

}

int GPIO_i2c::I2C_InitController( ) // 設置SCK,SDA,只初始化時執(zhí)行一次

{

// set gpio6 and gpio7

PIO_OutEnableEx( SCK ); // set gpio6 to output (CLK)

PIO_OutSetEx( SCK ); // set CLK

SetSDADir(0); // set SDA to input

return 0;

}

根據(jù)FM24L256的時序要求,構造相應的讀寫函數(shù),EM24L256的讀寫時序如下圖所示:

////////////////////////////////////////////////////////////////////////////

// 從I2C器件讀取一個或多個字節(jié)

// 輸入參數(shù)

// uDevAddr:器件地址

// uRegIdx: 器件寄存器地址

// ReadBuf: 數(shù)據(jù)緩存

// ReadLen: 讀取數(shù)據(jù)個數(shù)

// return = -1: 失敗

// = ReadLen: read succeed!

////////////////////////////////////////////////////////////////////////////

int GPIO_i2c::I2C_ByteRead(UCHAR uDevAddr, UINT16 uRegIdx,

UCHAR* ReadBuf, int ReadLen )

////////////////////////////////////////////////////////////////////////////

// 向I2C器件寫入一個或多個字節(jié)

// 輸入?yún)?shù):

// uDevAddr:器件地址

// uRegIdx: 器件寄存器地址

// ReadBuf: 數(shù)據(jù)緩存

// ReadLen: 寫入數(shù)據(jù)個數(shù)

// return = WriteLen: 寫入成功

// = -1: 寫入失敗,沒有應答信息

////////////////////////////////////////////////////////////////////////////

int GPIO_i2c::I2C_ByteWrite(UCHAR uDevAddr, UINT16 uRegIdx,

UCHAR* WriteBuf, int WriteLen)

本文是以EM9160操作FM24L256為例,介紹如何構造I2C接口,這個方法也完全適合英創(chuàng)公司的其他嵌入式工控主板產品,如EM9000、EM9161、EM9260、ETR232i等。EM9160與FM24L256連接十分簡單,在需要頻繁記錄數(shù)據(jù)的場合,本文介紹的方案是一個不錯的選擇,經過測試,EM9160對FM24L256的寫入速度可達每秒56K字節(jié),感興趣的客戶可向英創(chuàng)索要相關源代碼。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • WINDOWS
    +關注

    關注

    3

    文章

    3503

    瀏覽量

    87884
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6081

    瀏覽量

    34942
收藏 人收藏

    評論

    相關推薦

    存儲器技術原理

    存儲器(FRAM)能兼容RAM的一切功能,并且和ROM技術一樣,是一種非易失性的存儲器。
    發(fā)表于 11-19 11:53

    存儲器技術原理

    存儲器(FRAM)能兼容RAM的一切功能,并且和ROM技術一樣,是一種非易失性的存儲器。
    發(fā)表于 11-21 10:49

    創(chuàng)支持Linux高級客戶自行移植內核

    上市)  該項服務具體說明和實施流程參見:支持客戶進行Linux移植  需要該服務的客戶需與創(chuàng)簽訂技術保密協(xié)議,并承諾嚴格履行協(xié)議:
    發(fā)表于 01-18 13:52

    創(chuàng)工控主板產品選型指南

      成都創(chuàng)信息技術有限公司是一家專注于嵌入式工控主板研發(fā)、銷售與服務的高科技公司,在嵌入式領域已有超16年的從業(yè)經歷。
    發(fā)表于 02-28 11:28

    創(chuàng)信息技術工控主板的復位管理介紹

     創(chuàng)公司的工控主板是基于ARM9 CPU、預裝正版WinCE的嵌入式主板產品。作為嵌入式應用,系統(tǒng)的可靠啟動是其可靠性的重要組成部分。本文
    的頭像 發(fā)表于 11-14 10:03 ?1547次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>的復位管理介紹

    創(chuàng)信息技術創(chuàng)工控主板支持電力終端標準顯示介紹

     創(chuàng)公司EM9X60系列工控主板廣泛應用于電力行業(yè),在最新的國家電網公司技術標準《電力用戶用電信息
    的頭像 發(fā)表于 11-15 09:59 ?1591次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b><b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b><b class='flag-5'>支持</b>電力終端標準顯示介紹

    創(chuàng)信息技術工業(yè)主板EM9160介紹

    ,如I2C總線時鐘芯片,I2C總線存貯等。之前已對I2C總線操作存貯有過說明,相關文章請參考《工控
    的頭像 發(fā)表于 01-14 11:09 ?1214次閱讀

    創(chuàng)信息技術WinCE工控主板的數(shù)據(jù)庫配置簡介

    創(chuàng)公司的工控主板產品均預裝了正版Windows CE操作系統(tǒng)(簡稱WinCE)。WinCE是嵌入式領域的主流操作系統(tǒng)之一,它不僅在多任務、通訊、圖形界面有很好的
    的頭像 發(fā)表于 01-14 11:35 ?1365次閱讀

    創(chuàng)信息技術工控主板網絡變壓連接方法

    在上一篇介紹創(chuàng)主板網絡變壓連接方法的文章中(《創(chuàng)工控
    的頭像 發(fā)表于 01-14 14:09 ?3483次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>網絡變壓<b class='flag-5'>器</b>連接方法

    創(chuàng)信息技術工控主板USB通信方案介紹

    ,來進行USB通信的解決方案。 驅動的安裝及說明請參考文章《創(chuàng)工控主板USB驅動安裝說明》。 工控
    的頭像 發(fā)表于 01-15 14:44 ?1616次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>USB通信<b class='flag-5'>方案</b>介紹

    創(chuàng)信息技術Linux工控主板支持3G網卡介紹

    (3rd-generation,第三代移動通訊技術)運用的普及,創(chuàng)公司的工控主板同樣對3G無線通訊做了完備的
    的頭像 發(fā)表于 01-17 09:49 ?2105次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b>Linux<b class='flag-5'>工控</b><b class='flag-5'>主板</b><b class='flag-5'>支持</b>3G網卡介紹

    創(chuàng)信息技術工控主板產品選型指南介紹

    成都創(chuàng)信息技術有限公司是一家專注于嵌入式工控主板研發(fā)、銷售與服務的高科技公司,在嵌入式領域已有18年的從業(yè)經歷。
    的頭像 發(fā)表于 02-06 11:31 ?1582次閱讀

    創(chuàng)信息技術ESMARC工控主板升級簡介

    規(guī)范定義了主板基本的機械指標,管腳功能。創(chuàng)以ESM命名開頭的工控主板都符合ESMARC規(guī)范,這些主板
    的頭像 發(fā)表于 02-07 10:35 ?1487次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b>ESMARC<b class='flag-5'>工控</b><b class='flag-5'>主板</b>升級簡介

    創(chuàng)信息技術Linux工控主板的高速大容量存儲方案簡介

    創(chuàng)公司針對目前銷售的工控主板,都推出了一些擴展存儲方案,比如所有型號的板卡都可以通過usb外
    的頭像 發(fā)表于 02-12 10:52 ?1198次閱讀

    創(chuàng)信息技術ESMARC工控主板 SFP光纖連接方案簡介

    ESMARC系列工控主板創(chuàng)公司的主流產品,其主要產品型號均支持2路獨立的以太網接口,采用標準RJ45接口方式。在
    的頭像 發(fā)表于 02-12 10:56 ?2897次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術</b>ESMARC<b class='flag-5'>工控</b><b class='flag-5'>主板</b> SFP光纖連接<b class='flag-5'>方案</b>簡介