реклама на сайте
подробности

 
 
> Чтение и запись во внешнюю память.
Jenya7
сообщение Jun 25 2015, 05:43
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Это функции чтения/записи.
Код
void SPIEEPROM_WriteInt(uint32_t addr, uint32_t *ival)
{
  SPIEEPROM_Write(addr,sizeof(uint32_t),(uint8_t*) ival);
}

uint32_t SPIEEPROM_ReadInt(uint32_t addr)
{
    uint32_t value;
    SPIEEPROM_Read(addr, sizeof(uint32_t), (uint8_t*)&value);
    return value;
}

void SPIEEPROM_WriteFloat(uint32_t addr, float *fval)  
{
  SPIEEPROM_Write(addr,sizeof(float),(uint8_t*) fval);
}

float SPIEEPROM_ReadFloat(uint32_t addr)
{
    float value;
    SPIEEPROM_Read(addr, sizeof(float), (uint8_t*)&value);
    return value;
}

А так я тестирую.
Код
uint32_t adr;
if(argument1 == NULL)
  UART_SendString(UART0,msg_misarg);
else
{
  adr = atoi(argument1);
  if(argument2 == NULL) //read operation
  {
      #ifdef SPI_INT
      uint32_t ival = SPIEEPROM_ReadInt(adr);
      UART_SendInt(UART0,ival);
      #endif
      #ifdef SPI_FLOAT
       float fval = SPIEEPROM_ReadFloat(adr);
        UART_SendFloat(UART0,fval,2);
      #endif
    }
    else  //write operation
    {                    
        #ifdef SPI_INT
         uint32_t ival = atoi(argument2);
        SPIEEPROM_WriteInt(adr, &ival);
         #endif
         #ifdef SPI_FLOAT
          float fval = atof(argument2);
          SPIEEPROM_WriteFloat(adr, &fval);
          #endif
                    
     }
}

float пишется-читается прекрасно.
а вот с uint32_t непонятное явление - пишет (или читает?) неправильно.
вот например
запись - чтение
100 - 255
300 - 511
1000 - 1023
Сижу второй день над проблемой не могу понять где собака порылась.

Сообщение отредактировал Jenya7 - Jun 25 2015, 05:44
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Чтение и запись во внешнюю память.   Jun 25 2015, 05:43
- - mcheb   Цитата(Jenya7 @ Jun 25 2015, 08:43) SPIEE...   Jun 25 2015, 05:52
|- - Jenya7   Цитата(mcheb @ Jun 25 2015, 11:52) А это ...   Jun 25 2015, 06:26
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 09:26) сдела...   Jun 25 2015, 07:29
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 13:29) Ник...   Jun 25 2015, 07:41
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 10:41) но fl...   Jun 25 2015, 07:55
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 13:55) ОК....   Jun 25 2015, 08:18
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 11:18) я ста...   Jun 25 2015, 08:29
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 14:29) Мож...   Jun 25 2015, 08:55
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 11:55) IAR V...   Jun 25 2015, 09:10
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 15:10) По ...   Jun 25 2015, 09:40
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 12:40) я дум...   Jun 25 2015, 10:11
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 16:11) Пер...   Jun 25 2015, 10:17
|- - mempfis_   Цитатая смотрел и осциллографом и Logic Analizer ...   Jun 25 2015, 10:32
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 16:32) т.е...   Jun 25 2015, 10:58
|- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 13:58) пока ...   Jun 25 2015, 11:13
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 17:13) Мож...   Jun 25 2015, 11:23
- - Сергей Борщ   В функциях из первого сообщения ошибок нет. Как вы...   Jun 25 2015, 11:25
|- - Jenya7   Цитата(Сергей Борщ @ Jun 25 2015, 17:25) ...   Jun 25 2015, 11:40
- - Jenya7   OMG!!! нашел проблему. в SPIEEPROM_Rea...   Jun 25 2015, 13:37
- - mempfis_   Цитата(Jenya7 @ Jun 25 2015, 16:37) OMG...   Jun 25 2015, 13:42
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 19:42) М...   Jun 25 2015, 14:05
|- - mempfis_   Я во всех примерах работы с SPI всех мк с которыми...   Jun 25 2015, 15:46
|- - Jenya7   Цитата(mempfis_ @ Jun 25 2015, 21:46) Я в...   Jun 25 2015, 16:30
- - Сергей Борщ   Цитата(Jenya7 @ Jun 25 2015, 16:37) нашел...   Jun 26 2015, 05:03
- - Jenya7   Цитата(Сергей Борщ @ Jun 26 2015, 11:03) ...   Jun 28 2015, 05:26


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 05:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01375 секунд с 7
ELECTRONIX ©2004-2016