| Автор |
Съобщение |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 CRC библиотека
Абе някой да му се намира нещо по универсално ? От години позлвам две, едната е с таблици а другата кода е оптимизира за опредлеени полиноми, та нещо на което д аможе да му се зададе полином. Не че няма да го пренапиша, или по скоро напиша на ново ама .... тук едни умници са сложли полином 2245 и начлана стойност F3A0 ... до де намеря нещо подходящо ... намерих еидн reveng върши добра работа за ривърс а и очудващо бърз.
|
| Чет Юни 18, 2015 8:37 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: CRC библиотека
Имам доста, ама трябва да знам: 1) типа на crc 2) таргет платформата и нейните особеност (АРМ примерно е бърз в сметките, но бавен с таблици, докато х86 е обратно) 3) Какво целиш - бързо смятане или малко код?
|
| Чет Юни 18, 2015 9:12 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
51-ца, CRC-16, полином 2245 ... бързодействието не ми е проблем ... но ако не ти е на лесно не се мъчи, половината го написах  ... всеки път се хващам че търсейки из архивите от къде да направя copy /paste губя повече време от нужното за написването 
|
| Чет Юни 18, 2015 10:01 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
Абе написах го и е ОК но ....нещо блокирах ... освен че е нестандартен полино в CRC е litle indian , не мога да вклюа само байтоете на CRC-ти ли се обръщат или и самата таблица трябваше да реверсна ......
|
| Чет Юни 18, 2015 10:59 pm |
|
 |
|
woody
Ранг: Форумен бог
Регистриран на: Вто Юли 31, 2007 2:55 pm Мнения: 1792 Местоположение: София
|
 Re: CRC библиотека
Ако забиеш, грабни една бира и свирни. 
|
| Пет Юни 19, 2015 12:04 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
Малко късно го видях.. можеше да гризнем едно джоланче.
|
| Пет Юни 19, 2015 12:26 am |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: CRC библиотека
снощи бях на домашния комп.... сега гледам, ама crc16-ката съм го писал на асемблер само. Сигурно трябва да го имам и на С някъде, ама щом си се оправил да не ровя. То и асемблера е достатъчно четим си мисля... Без таблици е щото разликата не е голяма. При CRC32 се получават по-сериозни разлики и там вече има значение, ако някой му трябва ще обяснявам...
|
| Пет Юни 19, 2015 9:33 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
Ами направих го да, снощи нещо бях блокирал. Понеже умници са я направили в little endian докато зацепя що не ми излиза чек сумата а аз съм забравил да ривърсвам init стойноста във функцията. Иначе тоя reveng добра рабтоа върши за ривърс на чексуми, ако не беше той още щях да се блъскам с полинома а и с това little endian. Е не стана най-добрата библиотека ама ако остане време ... някога ....
|
| Пет Юни 19, 2015 2:24 pm |
|
 |
|
Н'бабане Гт'муан'га
Ранг: Форумен бог
Регистриран на: Сря Яну 25, 2012 9:14 am Мнения: 5298
|
 Re: CRC библиотека
Никога не става най-добрата и "някога" винаги е никога 
_________________ 'просто' е технически синоним на 'красиво'
|
| Пет Юни 19, 2015 3:05 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
точно това имах в предвид .. е то колко добре може да стане като има една функция в цялата библиотека  .... ама мързела .... повечето параметри ги направих като хората ама примерно тоя за big / little endian го оставих 1/0, само след 2 седмици няма да знам за какво е тоя параметър и ще трябва да отварям сорса ама .. така е.
|
| Пет Юни 19, 2015 5:31 pm |
|
 |
|
eng.komitov
Ранг: Минаващ
Регистриран на: Нед Окт 25, 2015 1:42 pm Мнения: 23
|
 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; } }
|
| Нед Окт 25, 2015 2:02 pm |
|
 |
|
eng.komitov
Ранг: Минаващ
Регистриран на: Нед Окт 25, 2015 1:42 pm Мнения: 23
|
 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
а това е част от главната програма в която съм декларирал /процедурата/ файла, в който е грешката
|
| Нед Окт 25, 2015 2:57 pm |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
 Re: CRC библиотека
15ms(void); 5ms(void);
!?
|
| Нед Окт 25, 2015 3:31 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30685 Местоположение: София
|
 Re: CRC библиотека
а това 2s; какво трвбва да е ? Изобщо 15 ms, 5 ms ... нещо не вдявам, писал си функции за 5 и 15 ms ? И отделно в CRC кода ти не ми изглежда като да смятш CRC но .. знам ли
|
| Нед Окт 25, 2015 8:34 pm |
|
 |
|
Stoimen
Ранг: Популярен
Регистриран на: Пет Юни 25, 2010 3:18 pm Мнения: 363 Местоположение: Varna
|
 Re: CRC библиотека
А това как трябва да се тълкува ?
|
| Нед Окт 25, 2015 11:15 pm |
|
|