Перейти к содержанию
    

Romashki

Участник
  • Постов

    209
  • Зарегистрирован

  • Посещение

Весь контент Romashki


  1. Главное, чтоб в новую версию ЕАТ SIMCOM не забыл включить функцию работы с памятью по SPI !!!!! (Например для SST25VF016B-75-4I-S2AF).
  2. Попробуйте так: void fl_entry() { bool exit_of_main = TRUE; u8 tm; ebdat7_00EnterDebugMode(); ebdat9_03SetModemdataToFL(TRUE); ebdat9_04SetUartdataToFL(TRUE); memset((u8*)&flEventBuffer,0x00,sizeof(flEventBuffer)); while (exit_of_main == TRUE) { eat1_02GetEvent(&flEventBuffer); switch(flEventBuffer.eventTyp) { case EVENT_MODEMDATA: if(flEventBuffer.eventData.modemdata_evt.type == MODEM_CMD) { ebdat7_01DebugTrace("%s",flEventBuffer.eventData.modemdata_evt.data); } break; case EVENT_UARTDATA: { if(flEventBuffer.eventData.uartdata_evt.type == DATA_DEBUG) { ebdat9_01SendToModem(flEventBuffer.eventData.uartdata_evt.data, flEventBuffer.eventData.uartdata_evt.length); } } break; } }; }
  3. А как вы "fl_customer = (из SIM-demo) или пустую программу" заливаете? Ошибок не выдает загрузчик? Собственно если используете ЕАТ, то в fl_customer и нужно функции обмена по порту писать.
  4. Тогда делайте как сказал CADiLO выше и по даташитам соединяйте одноименные OUTPUT одной микросхемы с INPUT другой.
  5. Если подадите вот так питание (через 2к2) - модуль никогда не запуститься. Посмотрите даташит на 2596. Да .... и почему VBAT 3v3? С делителем 2к2 и 1к выходит 3,9!!!
  6. Нужно смотреть схему подключения к устройству, с которого ведете опрос.
  7. Давайте определимся (без денег....все мы были студентами), если Вам нужен рабочий макет - за Ваши истекающее дни его не возможно изготовить....все конкретные решения можно здесь за час найти для Вашей задачи (но это схемы....изготовление - долгий процесс). С существующей схемой - далеко не уйдете....нужно многое менять.... в частности увязку с FT232 .... ну и питание...я бы сделал на ST1S10 - проверено!
  8. системным временем не получилось (там секунды наименьшее значение), сделал тиками. Один тик = 9,23 миллисекунды. На 1000 не меняется, пришлось 10000 поставить: SysTick1 = ebdat8_08GetSystemTickCounter( ); for(tm=0;tm<10000;tm++) { if(ebdat6_04WriteGpio(EEPROM_SELECT,s)==FL_OK)tms++; s=(~s); } SysTick2 = ebdat8_08GetSystemTickCounter( ); ebdat7_01DebugTrace("\r\nsystem time is : %d",SysTick1); ebdat7_01DebugTrace("\r\nsystem time is : %d",SysTick2); ebdat7_01DebugTrace("\r\ncounter is : %d",tms); Вот ответ: system time is : 774[0D][0A] system time is : 778[0D][0A] counter is : 5000 Ориентировочно один раз проходит примерно за 4 микросекунды.... но вот почему счетчик правильных ответов ровно в половину меньше???
  9. Пытаюсь это сделать....знать бы сколько выполняется команда по установке ноги в 1 или 0 ... или это нельзя определить?
  10. Дело в том что SIM900 после каждой команды ebdat5_02SpiWriteByte убирает сигнал CS, а SST такого не понимает. Т.е. идеально было бы, чтоб пользователь мог говорить например ebdat5_02SpiWriteByte(Buf, 1); - это значит активировать CS, а ebdat5_02SpiWriteByte(Buf, 0); - деактивировать. И на чтение - также. Тогда бы все наверное получилось бы: ebdat5_02SpiWriteByte(0x9F,1); - шлем for(i=0;i<4;i++) { if(i<3)Buf = ebdat5_03SpiReadByte(1); - читаем else Buf = ebdat5_03SpiReadByte(0); - читаем }
  11. Эдуард, может Вы подскажете, как это побороть? Очень благодарен буду.
  12. Подскажите по SPI в SIM900 c EAT. Не могу подружить SIM900 с SST25VF016B. Выводы подключены к ногам 11,12,13,14 модуля. Настройки модуля ebdat5_01SpiConfigure(SSI_4WIRE, SSI_ACTIVE_LOW, FL_PIN_14, SSI_SYSTEM_DIV_2, SSI_FALLING_EDGE, SSI_MSBFIRST); Не получается даже тип SST25VF016B считать. Вот функция: void select_end_mem(void) { u8 bfur[4],i; u32 end_of_mem=0; #ifdef VS_DEBUG u8 buff_for_sms[]="End of memory 0x0FFFFF";//22(17) #endif ebdat5_02SpiWriteByte(0x9F); for(i=0;i<3;i++)bfur=ebdat5_03SpiReadByte(); if(bfur[2]==0x41)end_of_mem=0x1FFFFF; else if(bfur[1]==0x4A)end_of_mem=0x3FFFFF; else end_of_mem=0; #ifdef VS_DEBUG if(end_of_mem==0x1FFFFF)buff_for_sms[16]='1'; else if(end_of_mem==0x3FFFFF)buff_for_sms[16]='3'; else {buff_for_sms[17]='0';buff_for_sms[18]='0';buff_for_sms[19]='0'; buff_for_sms[20]='0';buff_for_sms[21]='0';} ebdat7_01DebugTrace((const char*)"\r\n"); ebdat7_02DebugUartSend(buff_for_sms, 22); ebdat7_01DebugTrace((const char*)"\r\n"); #endif } В порт выдает End of memory 0x000000 Примерно понимаю, что что-то не так с ногой CHIP SELECT, поскольку функции ebdat5_02SpiWriteByte и ebdat5_03SpiReadByte её дергают постоянно, а нужно только перед ebdat5_02SpiWriteByte и после третьего ebdat5_03SpiReadByte. Но как это сделать - не знаю. Может кто подскажет? Или товарищи из SIMCOMa подскажут....
  13. автоматом только в 900й серии, в 300й нужно делать AT&W. Вообще, не знаю зачем и автомат и AT&W, я по включению делаю AT&F и прописываю то, что мне нужно, поскольку это начало программы и она не знает какой модуль подключен (в смысле уже бывший в работе или новый). Думаю так увереннее будет.
  14. А в модуле SIM300D команда AT+CLTS включена постоянно? Судя по АТ командам (v2.0) разрешить\запретить нет..
  15. а регистрации в сети дожидаетесь?
  16. NCP3170 не пробовал, а вот ST1S10 - отдаст точно. Хотя они по частоте схожи. А на счет заполнения и т.д. заморачиваться не стоит, делайте как в даташите и все заработает. ST1S10 критична только ко входным выходным емкостям и разводке. Сделано около 400 шт, работают без проблем.
  17. Это точно!!! А сколько бы модулей жить осталось.....!! :)
  18. В том то и дело, МК проверяет во время дозвона некоторые параметры модуля и проблема, когда МК ожидает ответ на, например, AT+ADC, а модуль в это время присылает NO CARRIER например. МК в свою очередь повторит запрос но NO CARRIER уже потеряет. или имеется ввиду создать обработчик, который сравнивал бы строки (то что пришло), заведомо прописанные и выставлял просто флаги?
  19. Подскажите, а каким образом можно проконтролировать реакцию абонента при дозвоне (отбил или "нет связи")? Имеется ввиду ситуация: набрали номер абонента (здесь по запросам можно отследить что идет дозвон), МК должен заниматься другими делами. Когда абонент отбил приходит 7\r\n или когда нет связи придет 3\r\n, но вдруг это придет в тот момент когда МК будет давать другие запросы модулю (уровень сигнала, температуры и т.д.).
  20. А с ЕАТ они еще не сделали? Обещали в конце ноября... В часности интересует поддержка ДТМФ в ЕАТ.
  21. Классно было бы если б китайцы сделали встроенную антену в сим900. :rolleyes:
  22. В моем представлении услуга CSD (именно услуга!!!) заказывается у оператора для того, чтоб оператор посредством технологии CSD предоставил выход в интернет. Как минимум в модеме необходимо ввести настройки оператора для CSD и звонить типа *99# и т.д. Но в моем случае тарифные планы принципиально были без CSD. Звонки осуществлялись напрямую с модема на модем. К статии распечатки от КС (за что снимали деньги) тоже не показали работы в CSD.
×
×
  • Создать...