找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2254|回復(fù): 7
收起左側(cè)

51單片機(jī)中將浮點(diǎn)數(shù)以數(shù)組的形式存入eeprom后,如何將浮點(diǎn)數(shù)讀取出來呢?

[復(fù)制鏈接]
ID:1054902 發(fā)表于 2023-2-28 19:02 | 顯示全部樓層 |閱讀模式
謝謝大家
回復(fù)

使用道具 舉報(bào)

ID:883242 發(fā)表于 2023-3-1 01:15 | 顯示全部樓層
怎么存進(jìn)去的就怎么取出來,多簡單。別人又不知道你是怎么存進(jìn)去的,怎么可能知道問題的答案?
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2023-3-1 05:55 | 顯示全部樓層
浮點(diǎn)數(shù)(實(shí)數(shù))長度32位,用位移的方式拆分成4個(gè)字節(jié)存入eeprom,讀取后按存入時(shí)的拆分順序還原。對(duì)于eeprom存儲(chǔ)器單元而言,存入的只是一個(gè)字節(jié)的數(shù)據(jù)。與數(shù)據(jù)的類型無關(guān)。
回復(fù)

使用道具 舉報(bào)

ID:526108 發(fā)表于 2023-3-1 08:42 | 顯示全部樓層
定義一個(gè)結(jié)構(gòu)體,將結(jié)構(gòu)體轉(zhuǎn)char*指針讀寫
回復(fù)

使用道具 舉報(bào)

ID:57657 發(fā)表于 2023-3-1 13:03 | 顯示全部樓層
用union聯(lián)合體轉(zhuǎn)換或指針操作。
回復(fù)

使用道具 舉報(bào)

ID:123289 發(fā)表于 2023-3-1 13:56 | 顯示全部樓層
任何定的類(數(shù)組、圖像、浮點(diǎn)數(shù)、音樂……)都是按字節(jié)存放的,讀取也是按字節(jié)讀出的。
要點(diǎn)是(以圖像為例):如何編碼的,就如何解碼。
也即你缺少(XX格式,如浮點(diǎn)數(shù))編碼的知識(shí),當(dāng)然就不知道如何解碼了。
回復(fù)

使用道具 舉報(bào)

ID:1034262 發(fā)表于 2023-3-1 14:21 | 顯示全部樓層
先讀出放一個(gè)單字節(jié)的數(shù)組 tmp[],然后取值時(shí)強(qiáng)轉(zhuǎn)浮點(diǎn) f = ((float *)&tmp)[i]
回復(fù)

使用道具 舉報(bào)

ID:1045628 發(fā)表于 2023-3-2 13:38 | 顯示全部樓層
一般我會(huì)這樣定義:
typedef union
{
    float value1;
    uint32_t value2;
}pValue;
存儲(chǔ)的時(shí)候調(diào)用value2,其他時(shí)候用value1
pValue value = {0,};
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表