This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C123GH6PM:请帮助

Guru**** 2511985 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1360392/tm4c123gh6pm-please-help

器件型号:TM4C123GH6PM

IMA 在 EEPROM 部分使用 tivac4m123g6pm 的驱动程序我有一个小问题、即从 EEPROM 写入和读取的函数需要一个参数量表一组无符号 intgers、但我想将其更改为采用浮点数组、可以是双倍甚至是 字符数组、然后将其转换为 float lates 我试图调整驱动程序中的函数来实现这一点、但这对我来说是如此的困难(获取硬故障处理程序或数组不可读取)  我不能这样做,我也使用了 chta GPT 但也不帮助我,所以任何人都可以给我另一个驱动程序或功能使用它.

IAM 正在 GPS 项目中工作、我想在 EEPROM 中保存我的纬度阵列和经度阵列、它们必须是浮子而不是 intgers

这是我的测试功能  

#包含
#包含
#include "hw_flash.h"
#include "hw_ints.h"
#include "hw_sysctl.h"
#include "hw_types.h"
#include "debug.h"
#include "flash.h"
#include "interrupt.h"
#include "sysctl.h"
#include "EEPROM.h"
#include "hw_EEPROM.h"

int main()
{

float latRead [8];
浮点 lat[8]={
110235、
112348、
115012、
118322、
121521,
124732、
127945、
130015
};


EEPROMInit ();

EEPROMMassErase ();

//EEPROMRead (latRead、0x0、sizeof (latRead));


EEPROMProgram (lat、0x0、sizeof (lat));
EEPROMRead (latRead、0x0、sizeof (latRead));

while (1)
{

谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我能想到的唯一方法是、首先将浮点值转换为字符值数组、然后将字符数组写入 EEPROM。 TivaWare SDK 包含一个 usprintf ()函数。 这是 C 运行时库函数 sprintf()的精简版。 请参阅 C:\ti\TivaWare_C_Series-2.2.0.295\utils\ustlib.c 文件中的 usprintf ()函数。