Отговори на тема  [ 55 мнения ]  Отиди на страница Предишна  1, 2, 3, 4
TCP to UART routing AND UART to TCP routing 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: TCP to UART routing AND UART to TCP routing
оооо..... не се прави така....

Извикваш RESET() веднъж преди първия пакет. После само подаваш пакетите. RESULT() - след последния пакет.

Или иначе казано, за твоя пример:

1. RESET();
2. INPUT(127);
3. INPUT(3);
4. RESULT();


Сря Ное 19, 2014 3:18 pm
Профил ICQ WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 17, 2011 10:13 am
Мнения: 112
Мнение Re: TCP to UART routing AND UART to TCP routing
Здравей, знам видях :), проверих с прости калкулации (без да си променям кодът) че неможе като се съберат двете суми на двата пакета от данни да даде сумата която търся (просто HxD ми дава възможност на различни части от целият файл да изислявам чек сумите, така че аз си избрах тези които мен ме интересуват). Много се извинявам че ще постна част от кодът, но съм сигурен че на 98% правя алгоритъмът както ти казваш:
Код:
    md5_starts(&MD5); //Тук викам RESET
    while(1)
    {

       if(!BUF_IS_EMPTY(ringBuff.rx_head,ringBuff.rx_tail))
       {
         ReadRingBuff();
         iLen=strlen((char *)ucCmdUARTBuffer);
         md5_updates(&MD5,ucCmdUARTBuffer,iLen); // Тук викам INPUT
         //md5((unsigned char*)ucCmdUARTBuffer,iLen,MD5output);
       }
       if((ucCountFlagToSend==2) && BUF_IS_EMPTY(ringBuff.rx_head,ringBuff.rx_tail) )
       {
          md5_finish(&MD5,MD5output);  // Тук викам RESULT
          ucCountFlagToSend++;
       }

ringBuff.rx_head ми се движи от интеръптът на УАРТ-а, а ringBuff.rx_tail ми се движи от ReadRingBuff() когато чета данни от Ринг буферът и ги слагам в ucCmdUARTBuffer (върху който изчислявам и чек сумата). ucCountFlagToSend я вкарах преди малко, като целта й е да брои порциите данни. В примерът тези порции са ми 2 и затова съм вкарал този чек. С алгоритъпът както ти описвам, отново имам разлика в сумите, и ме навява на мисълта че моите библиотечни функции да не работят по раличен начин. Затова сега ще опитам с твойте библиотеки .....


Сря Ное 19, 2014 3:46 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 17, 2011 10:13 am
Мнения: 112
Мнение Re: TCP to UART routing AND UART to TCP routing
Здравей отново, с библиотечката която ми прати извадих някаква чек сума, но ми е трудно са се ориентирам в нея и по точно за крайният резултат в Message_Digest[].
Сумата която гоня да получа в края е :
4FB165214119D183670F4810D3245953


Прикачени файлове:
Untitled.jpg
Untitled.jpg [ 290 KiB | Прегледано 1910 пъти ]
Сря Ное 19, 2014 4:07 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: TCP to UART routing AND UART to TCP routing
Цитат:
Сумата която гоня да получа в края е :
4FB165214119D183670F4810D3245953


Това ти е MD5 сумата, при SHA1 ще е друга. Пусни го през оня сайт на SHA1 алгоритъм и виж дали съвпадат.
Гарантирам, че това, което ти изпратих работи правилно.


Сря Ное 19, 2014 4:48 pm
Профил ICQ WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 17, 2011 10:13 am
Мнения: 112
Мнение Re: TCP to UART routing AND UART to TCP routing
Не не съвпадат SHA1 на текстът който пускам от РС терминалът е:
1ecb9e9311ebdb4d943e46e7d67295e291704286,
различно от това което е на скрииншота по-горе.


Сря Ное 19, 2014 5:13 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: TCP to UART routing AND UART to TCP routing
хмм...

Я пробвай с една буква само....


Сря Ное 19, 2014 5:33 pm
Профил ICQ WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 17, 2011 10:13 am
Мнения: 112
Мнение Re: TCP to UART routing AND UART to TCP routing
Пак са различни, мисля че SHA1Input не я викам на правилното място.


Сря Ное 19, 2014 5:46 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: TCP to UART routing AND UART to TCP routing
breaniac написа:
Пак са различни, мисля че SHA1Input не я викам на правилното място.


Добре де, подай и само един масив с една буква и дължина 1, без RS.

Абе, да няма заигравка с big/little endian тук???


Сря Ное 19, 2014 9:32 pm
Профил ICQ WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 17, 2011 10:13 am
Мнения: 112
Мнение Re: TCP to UART routing AND UART to TCP routing
Няма заигравка с формата на съхранение, проблемът е както предполагах - "SHA1Input не я викам на правилното място" или както е в моят случай md5_updates(). Просто си преорганизирах нещата малко и се оправи ъпдейтването на чек сумата. Като цяло не съм знаел къде и колко често съм викал функцията.
Наобяд успях да трансферирам 2Mбайта файл, и сумите от двете стани съвпаднаха едно към едно :). Благодаря много за съдействието relsys :), научих още едно полезно нещо !!!


Чет Ное 20, 2014 3:17 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: TCP to UART routing AND UART to TCP routing
ЕЕЕ, браво!

Можеш ли да споделиш проекта, искам да видя нещо?


Чет Ное 20, 2014 3:32 pm
Профил ICQ WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 55 мнения ]  Отиди на страница Предишна  1, 2, 3, 4

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни