基于鐵電存儲器FM25640在電表數據存儲中的應用
SPI接口是一種時鐘和數據同步的串行接口,應使用SO、SI、SCK、CS四個引腳,可與任何具有SPI接口的MCU直接連接。對于沒有SPI接口的MCU,SPI可以與普通I/O口相連。然后用軟件模擬SPI接口,當然,也可以選擇其它帶有I2C總線接口和并口的FRAM產品。
SPI有四種工作方式。分別為方式0、方式1、方式2和方式3,FM25640支持其中的方式0(CPOL=0,CPHA=0)和方式3(CPOL=1,CPHA=1),等兩種方式,數據可在時鐘的上升沿移進FM25640,而且數據一般出現在CS有效后的第一個時鐘的上升沿。因此,如果時鐘從高電平開始,將不能產生第一個有效的上升沿而導致數據傳輸失敗。數據傳輸時,所有移進和移出FM25640的數據都是8位為一組,它們與時鐘信號同步,最高有效位(MSB)在前,串行數據在時鐘的上升沿移進,并在時鐘的下降沿移出。FM25640在SPI方式0和SPI方式3時的操作時序如圖2所示。
SPI接口是通過操作指令來控制的,FM25640的操作指令集如表1所列,該指令集共有6條指令。當有效后,第一個傳輸的字節就是操作指令,緊跟著操作指令之后的是兩字節的地址,該地址共16位,其中高三位不起作用,后13位則指定了一個唯一的地址。地址后面為所要寫入的數據,若數據多于1個,則第一個數據之后的數據存儲地址由FM25640自動按順序增加。如果地址到達最高地址1FFFH,地址計數器將重新置為0000H。
2 FM25640在電表數據存儲中的應用
2.1 FM25640與MCU的連接電路
本設計中的單片機選擇MOTOROLA公司的MC68HC908LJ12,這是一款適用于電表設計的MCU,內含12KBFlash存儲器并可在線編程。同時還具有一個帶有紅外功能的串行通信接口SCI,一個高速SPI,8個鍵盤輸入中斷,以及內部LCD驅動模塊,因而節省了外掛液晶驅動芯片。系統中的電能計量芯片則選擇美國ADI公司的三相電能計量芯片ADE7758,該芯片精確度高,可以提供有功功率、無功功率、視在功率、電壓有效值和電流有效值等多項數據,具有兩路脈沖輸出,同時也帶有SPI串口。由于SPI接口可支持多個器件掛在同一個總線上,并可通過片選信號區分每一個器件,因此,將FM25640和ADE7758都通過SPI接口與單片機MC68HC908LJ12相連,并將MC68HC908LJ12的兩個I/O口PTA4、PTA5分別與FM25640和ADE7758的片選端CS相連接,就可以實現片選。其具體的連接電路如圖3所示。
電能表相關文章:電能表原理
評論