Jump to content

    

xemul

Свой
  • Content Count

    1907
  • Joined

Everything posted by xemul


  1. Безусловно. Т.к. в условии задачи не сказано, что исходная строка должна сохраниться, я бы делал реверс на месте. Цена вопроса - один strlen(). (оно, конечно, не спасёт, если строка вдруг окажется без '\0') К переполнению, естественно, не приведёт. Но если память (опять же вдруг) закончится... За жисть. У меня K&R был первого советского издания (в мягком переплёте, голубая обложка), не помню в нём таких упражнений. Хотя, может опять склероз буйствует.
  2. Для таких программ потом и пишут заплатки на тему переполнения какого-нить буфера. static - чтобы можно было вернуть из функции указатель на что-то вменяемое, const - считайте просто правилом хорошего тона.
  3. Change line 294 to 294: void comparer_Iset_Ilue(void) accordingly prototype of this function in line 48 48: void comparer_Iset_Ilue(void); // determiner qui est en controle, E ou I
  4. Логично предположить, что схема должна иметь медленную по сравнению с полезным сигналом ООС глубиной в те самые несколько порядков. Нарисованное Вами этому соответствует?
  5. I had ask you run a console window (cmd.exe in WinXXX, something like bash in Linux/Unix), type in few words like these and post here an output of command '<compiler-name> --version' (compiler name is picc.exe in this case). The same output you can find in compiler log window, you see where it's results like ">>> Warning 208 "alim876a.c" Line 49(1,19): ...", just scroll to top of output.
  6. Missing string on the display is another error in the program not related to removed string. I had use three different PIC C compilers and listen half-dosen about yet more different ones. I can't recognize your's used compiler and have no time and no wish try each possible to compile your program. Suppose, if you type '<compiler-name> -v' (substitute <compiler-name> with real .exe) in console you see a needed magic words. Of course. Keep try.
  7. Что удивительно, эту разность можно среднепотолочно рассчитать, если сложить токи через выключенный ключ и вокруг него, и сумму умножить на входное сопротивление/импеданс измерёметра. Ещё более удивительно, что физические законы распространяются не только на подобные схемы. Зачем там на входе диоды Шоттки? Аналог однопереходного транзистора - вещь довольно капризная к номиналам резисторов. В такой схеме от одновибратора (предполагаемый режим работы, если я правильно понял) до мультивибратора пол-чиха. Немного смущают номиналы R1 и С1. имхо, получится изрядная задержка между zero-cross'ом и срабатыванием одновибратора. Если соберётесь рисовать плату, не забудьте, что земли слева и справа таки разные.
  8. За гербвью не скажу. Диптрейс импортирует вот такое чудо: (сетка 0.25 мм, размеры в мм поставил для наглядности)
  9. Me too. Neither author nor you do advert about used compiler. UPD: remove line 49 49: comparer_Iset_Ilue(); and try again
  10. По коду похоже, что даже RMS. Вот и начните с измерения длительности периода. (если (по точности) Вам достаточно считать её константой, можете не измерять) Потом разбейте период на достаточное (опять же по точности) число интервалов, настройте соответственно таймер, по прерыванию таймера запускайте преобразование АЦП, по прерыванию окончания преобразования 'rms1+=(ADC1->DR-3070)*(ADC1->DR-3070);' (если 3070 не название полироля для ручки грабель, а постоянное смещение на выходе датчика, то это значение нужно измерять/считать), по счётчику преобразований == числу интервалов сохраняйте sqrt(rms1/(число интервалов)) в (кольцевой) буфер, в свободное от прерываний время занимайтесь удобной формой фильтрации этого буфера. Меньше одного (полу)периода не получится. Можно завести кольцевой буфер на число интервалов, складывать в него (ADC1->DR-3070)*(ADC1->DR-3070) и считать RMS по каждому новому измерению.
  11. Author make an incorrect rounding in voltage and current averagings. Replace amp_lue=amp_lue/16; amp_lue=amp_lue+1; with amp_lue = (amp_lue + amp_lue/32) / 16; and by same reason volt_lue=volt_lue/16; volt_lue=volt_lue+2;// compenser pour le restant de la division a l'affichage with volt_lue = (volt_lue + volt_lue/32) / 16;
  12. Имеет смысл обращать внимание на условия измерений - сомневаюсь, что Вам будет интересен перепад 0.2 В на коллекторе. При полной амплитуде и неправильной фазе Луны можно получить и худшие времена. Если хочется сделать быстрый оптрон на коленке, ищите оптрон с выводом базы фототранзистора и изобретайте вокруг этого транзистора какой-нибудь каскод без насыщения. (лет 30 тому так и делали на АОТ110 и подобных) Или используйте придуманное до нас вроде уже предложенных H11L1, HCPL-2630 и т.п.
  13. Ищите ошибки в монтаже. (н-р, перепутаны DQ и GND у градусника, или GND до него не добегает) И про букву 'к' не забывайте. 1 мс = 1000 мкс.
  14. Вероятно, Вы пдфки попутали. В приаттаченной есть только один "might cause" на тему пайки.
  15. Значит опять склероз (касательно размещения флэша другого свойства для bad blocks на том же чипе). В позапрошлом году развлекался, вытаскивая инфу с usb-шных флэшек. В приведённой Вами ссылке следующий параграф описывает обычный для них случай. А по граблям с хранением bbt носителя на нём же производители hdd уже ходили.
  16. Требовать от софта файловой системы отвечать за bad blocks носителя бессмысленно. В HDD листы бэдов пишутся контроллером во флэш-память (т.е. более другой носитель). Полагаю, в NAND сделано примерно также - контроллер пишет ошибки большой дешёвой памяти в более дорогую, но независимую память (на том же кристалле). Наружу контроллер предоставляет линейный массив, но не обязательно одинаковой длины - с этим и связаны неприятности с переносом системы посредством dd, имхо.
  17. Тогда там должен быть, н-р, ещё один мелкий тиристор, который запирает основной. Могу предположить, что он управляется тем же трансформатором. Чем будете запирать симистор (aka triAC или AC thyristor) в MOC'е? Скорость зажигания светодиодов меня бы беспокоила в последнюю очередь. имхо, конечно.
  18. Просто один просто тиристор? Тогда у него должна быть кучка реактивного обвеса для запирания на DC. Или просто один запираемый тиристор? Тогда останется придумать, как его запирать посредством оптосимистора.
  19. Вы должны/можете догадываться, насколько мне важны подобные мнения и предложения. Вот и славно. Тырнетом владеете, читать умеете. А я только одного зайчика знаю - опять дома под ёлкой стоит. Если его по заднице шлёпнуть, воспроизведёт что-нить вроде "Я - зайка-попрыгайка. А ты кто?". Поэтому предлагаю считать меня безнадёжным. Аминь.
  20. Мил человек, Вам ли про незнание писать? Вы вчера уже выступили с решением задачки такого же уровня сложности. Если студень за семестр не изволил усвоить базовые понятия и имеет наглость явиться на экзамен, мне его ни разу не жалко. Вот за преподов и их потраченное впустую время обидно. (я сегодня утром супругу до работы подвёз и минут 10 пообщался со студнями, которые пришли ей долги сдавать. Примерно так же, как с ТС - рассказал про типы удочек при составлении уравнений ионного обмена. А рыбу уж будьте любезны самостоятельно из гранита выгрызать)
  21. А здесь люди уже многократно привиты от сезонных обострений у ленивых студней. Иногда, правда, находятся желающие пересказывать азы ТОЭ. Формула для Вашего случая пишется прямо со схемы и считается почти в уме. Достаточно вспомнить/найти формулы для импедансов индуктивности и ёмкости, и последовательного и параллельного соединения цепей. Придумайте формулу импеданса для всей цепи и разделите на неё напряжение.
  22. Нарисуйте ОУ с закороченными входами и источником напряжения смещения (внутри). Надеюсь, так понятно, что при этом ООС отсутствует, и на выходе ОУ будет Uсм*Kоу (или +-Uнас, если питание ОУ не позволяет ему выдать Uсм*Kоу)? Полагаю, после размыкания S2 конденсатор успевает зарядиться "по самое не хочу". Вы можете гарантировать, что S1 размыкается раньше S2? Вы можете описать переходные процессы при включении питания?
  23. Не знаю, чему равен R в ОС, но и без этого знания так делать нехорошо. Что будете делать, если попадётся ОУ с напряжением смещения в другую сторону? S1 (по ДШ IVC102) в Вашей схеме вообще не используется. В схемах типа Fig.3a S1 замыкается только при разомкнутом S2. Нет. Сделать из цилиндра овал, внутрь его с одной стороны - катушку, с другой - геркон.
  24. #pragma bank pic16f887

    Ну да, написал не однозначно. Без явного указания банка памяти встречавшиеся мне компиляторы С для пиков размещали глобальные и статические переменные только в bank0. Об этом и в их манах написано. Похоже, CC5X - не исключение.