| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| CRC библиотека http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=13848 |
Страница 1 от 3 |
| Автор: | ToHu [ Чет Юни 18, 2015 8:37 pm ] |
| Заглавие: | CRC библиотека |
Абе някой да му се намира нещо по универсално ? От години позлвам две, едната е с таблици а другата кода е оптимизира за опредлеени полиноми, та нещо на което д аможе да му се зададе полином. Не че няма да го пренапиша, или по скоро напиша на ново ама .... тук едни умници са сложли полином 2245 и начлана стойност F3A0 ... до де намеря нещо подходящо ... намерих еидн reveng върши добра работа за ривърс а и очудващо бърз. |
|
| Автор: | miro_atc [ Чет Юни 18, 2015 9:12 pm ] |
| Заглавие: | Re: CRC библиотека |
Имам доста, ама трябва да знам: 1) типа на crc 2) таргет платформата и нейните особеност (АРМ примерно е бърз в сметките, но бавен с таблици, докато х86 е обратно) 3) Какво целиш - бързо смятане или малко код? |
|
| Автор: | ToHu [ Чет Юни 18, 2015 10:01 pm ] |
| Заглавие: | Re: CRC библиотека |
51-ца, CRC-16, полином 2245 ... бързодействието не ми е проблем ... но ако не ти е на лесно не се мъчи, половината го написах |
|
| Автор: | ToHu [ Чет Юни 18, 2015 10:59 pm ] |
| Заглавие: | Re: CRC библиотека |
Абе написах го и е ОК но ....нещо блокирах ... освен че е нестандартен полино в CRC е litle indian , не мога да вклюа само байтоете на CRC-ти ли се обръщат или и самата таблица трябваше да реверсна ...... |
|
| Автор: | woody [ Пет Юни 19, 2015 12:04 am ] |
| Заглавие: | Re: CRC библиотека |
Ако забиеш, грабни една бира и свирни. |
|
| Автор: | ToHu [ Пет Юни 19, 2015 12:26 am ] | |||||||||
| Заглавие: | Re: CRC библиотека | |||||||||
Малко късно го видях.. можеше да гризнем едно джоланче. |
||||||||||
| Автор: | miro_atc [ Пет Юни 19, 2015 9:33 am ] |
| Заглавие: | Re: CRC библиотека |
снощи бях на домашния комп.... сега гледам, ама crc16-ката съм го писал на асемблер само. Сигурно трябва да го имам и на С някъде, ама щом си се оправил да не ровя. То и асемблера е достатъчно четим си мисля... Без таблици е щото разликата не е голяма. При CRC32 се получават по-сериозни разлики и там вече има значение, ако някой му трябва ще обяснявам... |
|
| Автор: | ToHu [ Пет Юни 19, 2015 2:24 pm ] |
| Заглавие: | Re: CRC библиотека |
Ами направих го да, снощи нещо бях блокирал. Понеже умници са я направили в little endian докато зацепя що не ми излиза чек сумата а аз съм забравил да ривърсвам init стойноста във функцията. Иначе тоя reveng добра рабтоа върши за ривърс на чексуми, ако не беше той още щях да се блъскам с полинома а и с това little endian. Е не стана най-добрата библиотека ама ако остане време ... някога .... |
|
| Автор: | Н'бабане Гт'муан'га [ Пет Юни 19, 2015 3:05 pm ] | |||||||||
| Заглавие: | Re: CRC библиотека | |||||||||
Никога не става най-добрата и "някога" винаги е никога |
||||||||||
| Автор: | ToHu [ Пет Юни 19, 2015 5:31 pm ] |
| Заглавие: | Re: CRC библиотека |
точно това имах в предвид .. е то колко добре може да стане като има една функция в цялата библиотека |
|
| Автор: | eng.komitov [ Нед Окт 25, 2015 2:02 pm ] |
| Заглавие: | Re: CRC библиотека |
Аз написах един код за изчисляване на CRC, но не съм сигурен дали съм използвал правилно класа register. Моля за малко помощ . Ето и кода: void Rx_cicle_over_1W(void) { register CRC=0, new_CRC; int T; unsigned int i; bit Rx ; unsigned char readScM=0xBE; unsigned char skipROM=0xCC; init_ds8b20; send_command(skipROM); send_command(readScM); for(i=0; i<63;i++) { PORTBbits.RB5=0 ; for(c=0; c<6; ) { c++ ; } PORTBbits.RB5=1 ; Rx=PORTBbits.RB5 ; timer_us(26); new_CRC=CRC; new_CRC.0=CRC.7^Rx; new_CRC.4=CRC.3^(CRC.7^Rx); new_CRC.5=CRC.4^(CRC.7^Rx); CRC=new_CRC; if(i<16) { T>>=Rx; } } if(CRC==0) { Proces_Value=T*0.0625 ; C_func(T); char_of_C(C); I_func(T); char_of_I(I); X_func(T); char_of_X(X); m_1_func(T); char_of_m_1(m_1); m_2_func(T); char_of_m_2(m_2); } else { StCom=1 ; screen=18; } } |
|
| Автор: | eng.komitov [ Нед Окт 25, 2015 2:57 pm ] |
| Заглавие: | Re: CRC библиотека |
Ще се отклоня от темата, но ми трябва помощ за решаването на следния проблем: при компилиране ми излиза съобщение за синтактична грешка, която аз не откривам. #define void 15ms(); void LCD_init(void) { unsigned char a; 15ms(); a=0x38; LCD_instr(a); 5ms(); LCD_instr(a); 5ms(); LCD_instr(a); 15ms(); LCD_instr(a); 15ms(void); a=0x08; LCD_instr(a); a=0x01; LCD_instr(a); 5ms(void); a=0x06; LCD_instr(a); a=0x02; LCD_instr(a); 5ms(void); a=0x0C; LCD_instr(a); } това е фаила в който е грешката Clean: Deleting intermediary and output files. Clean: Done. Executing: "C:\Program Files\Microchip\mplabc18\v3.47\bin\mcc18.exe" -p=18F67J60 "LCD_init.c" -fo="LCD_init.o" -D__DEBUG -k -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa- C:\Documents and Settings\User\My Documents\temperature controler\LCD_init.c:2:Error: syntax error Halting build on first failure as requested. ---------------------------------------------------------------------- Debug build of project `C:\Documents and Settings\User\My Documents\temperature controler\temperature controler.mcp' failed. Preprocessor symbol `__DEBUG' is defined. Mon Oct 26 13:38:37 2015 ---------------------------------------------------------------------- BUILD FAILED това е съобщението int C_func(float value); int m_1_func(float value); int m_2_func (float value); int X_func(float value); void scan_keyb_and_interlock(); void set_cursor (int ADRAM); void blink_cursor( int ADDRAM ); int 5ms(); void 15ms(); void LCD_init(void); start: Tx_cicle_over_1W(); if(pu<1) {LCD_init(); print_screen(15); 2s; print_screen(16); 2s; i++ ; } else а това е част от главната програма в която съм декларирал /процедурата/ файла, в който е грешката |
|
| Автор: | ps66 [ Нед Окт 25, 2015 3:31 pm ] |
| Заглавие: | Re: CRC библиотека |
15ms(void); 5ms(void); !? |
|
| Автор: | ToHu [ Нед Окт 25, 2015 8:34 pm ] |
| Заглавие: | Re: CRC библиотека |
а това 2s; какво трвбва да е ? Изобщо 15 ms, 5 ms ... нещо не вдявам, писал си функции за 5 и 15 ms ? И отделно в CRC кода ти не ми изглежда като да смятш CRC но .. знам ли |
|
| Автор: | Stoimen [ Нед Окт 25, 2015 11:15 pm ] | |||||||||
| Заглавие: | Re: CRC библиотека | |||||||||
А това как трябва да се тълкува ? |
||||||||||
| Страница 1 от 3 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|