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

 
 
> SIM800C EAT состояние выходов при старте/рестарте модуля
Ujin
сообщение Nov 29 2015, 15:00
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 3-07-07
Пользователь №: 28 863



Здравствуйте!

Делаю устройство на SIM800C с применением EAT. SIM800C управляет нагрузкой. И вот вылезла проблемка - у SIM800C при старте модуля некоторое время до инициализации ноги становятся в единицу и включают нагрузку. Причем время включения довольно существенное - секунды 3-4. Как это можно побороть?

Инициализирую выходы как в примерах:

Код
void app_func_ext1(void *data)
{
    /*This function can be called before Task running ,configure the GPIO,uart and etc.
       Only these api can be used:
         eat_uart_set_debug: set debug port
         eat_pin_set_mode: set GPIO mode
         eat_uart_set_at_port: set AT port
    */
    eat_uart_set_debug(EAT_UART_USB);
//    eat_uart_set_at_port(EAT_UART_USB);

    eat_sim_detect_en(EAT_FALSE);
    eat_pin_set_mode(EAT_PIN3_UART1_RTS, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN4_UART1_CTS, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN5_UART1_DCD, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN6_UART1_DTR, EAT_PIN_MODE_EINT);
    eat_pin_set_mode(EAT_PIN7_UART1_RI, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN14_SIM_DET, EAT_PIN_MODE_EINT);
    eat_pin_set_mode(EAT_PIN42_STATUS, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN1_UART1_TXD, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN2_UART1_RXD, EAT_PIN_MODE_GPIO);
    eat_pin_set_mode(EAT_PIN7_UART1_RI, EAT_PIN_MODE_GPIO);
}


а затем в main перевожу в 0:

Код
void app_main(void *data)
{
    EatEvent_st event;
    EatUartConfig_st uart_config;
    int len = 0;
    EatEntryPara_st *para;
    
    APP_InitRegions();//Init app RAM, first step
    APP_init_clib(); //C library initialize, second step

    para = (EatEntryPara_st*)data;

    memcpy(&app_para, para, sizeof(EatEntryPara_st));
    eat_trace(" App Main ENTRY  update:%d result:%d", app_para.is_update_app,app_para.update_app_result);
    if(app_para.is_update_app && app_para.update_app_result)
    {
        eat_update_app_ok();
    }

    eat_gpio_setup(EAT_PIN3_UART1_RTS, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN4_UART1_CTS, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN5_UART1_DCD, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN6_UART1_DTR, EAT_GPIO_DIR_INPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN7_UART1_RI, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN14_SIM_DET, EAT_GPIO_DIR_INPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN42_STATUS, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN1_UART1_TXD, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN2_UART1_RXD, EAT_GPIO_DIR_INPUT, EAT_GPIO_LEVEL_LOW);
    eat_gpio_setup(EAT_PIN7_UART1_RI, EAT_GPIO_DIR_OUTPUT, EAT_GPIO_LEVEL_LOW);
    
    eat_gpio_write(OUT1, EAT_GPIO_LEVEL_LOW);
    eat_gpio_write(GPS_ON, EAT_GPIO_LEVEL_LOW);
    eat_gpio_write(GPS_RESET, EAT_GPIO_LEVEL_LOW);
    eat_gpio_write(LED_FX, EAT_GPIO_LEVEL_LOW);
    eat_gpio_write(LED_ER, EAT_GPIO_LEVEL_LOW);


Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
RadikX
сообщение Dec 18 2015, 11:52
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 125
Регистрация: 13-04-11
Из: Суровый Челябинск
Пользователь №: 64 337



Цитата(CADiLO @ Dec 18 2015, 14:57) *
>>>Думаю сделать в файле счетчик перезаписей, и как он будет достигать 100К заводить новый файл.

Заводить новый файл уже поздно будет - переступили гарантированый порог - далее хоть 500К записей но свой страх и риск.

>>>Это получается 3-4 Мбайта. А как же память для пользователя. Для amr-файлов?

Внешняя память, или 605К в версии 1418B01V01SIM800C32_BT_FS
Для "особ приближенных к императору" и c объемами - в 800С замена второго порта UART на SPI и внешняя память (EAT only)
Те кто юзал FS в SIM900R и нужна память, мы планируем модули SIM800F64 - народ практически не заметит перехода.
Мелочевка C + H - извините, но FS не обязаловка в модуле. Но под проект - "любой каприз"


Может стоит тогда добавить в модули команду оперативного воспроизведения файла? Т.е. загружаем в модуль файл в режиме реального времени в оперативную память без сохранения во флеш и его же воспроизводим в линию или динамик.
Go to the top of the page
 
+Quote Post
Ujin
сообщение Dec 20 2015, 09:55
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 3-07-07
Пользователь №: 28 863



Цитата(RadikX @ Dec 18 2015, 14:52) *
Может стоит тогда добавить в модули команду оперативного воспроизведения файла? Т.е. загружаем в модуль файл в режиме реального времени в оперативную память без сохранения во флеш и его же воспроизводим в линию или динамик.

А откуда загружать файл в оперативку, напрямую с FTP минуя флэш, или как?

Цитата(CADiLO @ Dec 19 2015, 21:38) *
Потому что пишете на вы, а операционка. И контролировать как она это делает мы не можем.
Поэтому и берем за точку отсчета худший вариант.

Ну весь объем при каждой записи перезаписывать то это банально очень долго, а вот то что могут быть какие-то ячейки которые при каждой перезаписи модифицируются, это да.
может лучше тогда пользоваться функциями прямой записи во флеш - eat_flash_write, через нее мне кажется должен перезаписываться только указанный объем и ничего лишнего?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Ujin   SIM800C EAT состояние выходов при старте/рестарте модуля   Nov 29 2015, 15:00
- - yooj   Зробіть ось так: CODEstatic void app_func_ext1(vo...   Dec 16 2015, 08:57
|- - yooj   Цитата(yooj @ Dec 16 2015, 11:57) але дея...   Dec 16 2015, 12:26
|- - Ujin   Цитата(yooj @ Dec 16 2015, 15:26) "З...   Dec 16 2015, 14:29
- - CADiLO   >>>>SIM800 раз в секунду сбрасывает во...   Dec 16 2015, 14:34
|- - Ujin   Цитата(CADiLO @ Dec 16 2015, 17:34) >...   Dec 16 2015, 14:47
- - CADiLO   Просто ресурс флеши 100000 перезаписей. Циклическо...   Dec 16 2015, 14:54
|- - Ujin   Цитата(CADiLO @ Dec 16 2015, 17:54) Прост...   Dec 16 2015, 15:12
- - RadikX   Цитата(CADiLO @ Dec 16 2015, 18:54) Прост...   Dec 17 2015, 03:32
- - CADiLO   >>> там нету контроллера который бы следи...   Dec 17 2015, 05:14
|- - mantech   Цитата(CADiLO @ Dec 17 2015, 08:14) В 800...   Dec 17 2015, 15:31
|- - Ujin   Цитата(CADiLO @ Dec 17 2015, 08:14) >...   Dec 18 2015, 10:04
- - CADiLO   Мегабит   Dec 17 2015, 16:16
- - RadikX   Цитата(CADiLO @ Dec 17 2015, 09:14) В 800...   Dec 18 2015, 10:08
- - CADiLO   >>>Думаю сделать в файле счетчик перезапи...   Dec 18 2015, 10:57
|- - Ujin   Цитата(CADiLO @ Dec 18 2015, 13:57) Завод...   Dec 19 2015, 14:45
- - CADiLO   Потому что пишете на вы, а операционка. И контроли...   Dec 19 2015, 18:38
- - RadikX   Цитата(Ujin @ Dec 20 2015, 13:55) А откуд...   Dec 25 2015, 03:25
|- - Ujin   Цитата(RadikX @ Dec 25 2015, 06:25) Зачем...   Jan 4 2016, 14:45
- - sashaoff3   Уважаемый CADiLO! Попробовал версию 1418B01V01...   Feb 28 2016, 16:28
- - CADiLO   >>>605К памяти для amr не обнаружил И не...   Feb 28 2016, 18:19


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

 


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


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