ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
6 мая
537360 Топик полностью
Adept (07.08.2014 00:40 - 00:58, просмотров: 351) ответил Apтём на Странно это:
да всё может при грамотной архитектуре программы, но трудностей никак не меньше чем в ассемблерном варианте, ну и си-программеры часто любят сугубо линейные алгоритмы, как только обильные прерывания, парсеры и многопоточность, многие теряют энтузазизьм, хотя казалось бы си именно под эти задачи и заточен. Ну это лишний раз говорит о редко встречающемся подвиде программера разумного, а не просто кодера, или тогого хуже быдлокодера. Из проектов, мелкие приводить не буду (где весь "цимус" в экономии памяти и тактов), ну а из крупных, скажем такой (лабораторный химикоаналитический приборчик): планировщик на 16 задач (очередь) реалтайм часики системный таймер 10мС, 100мС, 1С управление в реалтайме ЖК индикатором и матричной клавой работа с ЦАП (табличный синтез waveform до 10КГц) компараторы задействованы 3 штатных таймера встроенный АЦП (измерение температоры) I2C UART SPI работа с внешним АЦП AD7655 (с максимальным samplerate до 1MSPS) работа по проприетарному протоколу с контрольными суммами на 115200бод измерение временных интервалов с точностью 1 такта (31.25нС на такте 32МГц) интерпретатор команд динамическое управление тактовой частотой шим-стабиллизация опорного уровня, с точностью единиц милливольт управление индикаторными светодиодиками (3шт) с различными режимами мигания работа с EEPROM работа многих вещей "параллельно". в частности управление и передача данных по интерфейсу (UART) должна быть доступна в любое время (приём, парсинг пакетов, интерпретация и исполнение команд по протоколу) Активнейшее использование прерываний , правда до использования DMA и системы событий дело не дошло :)) всё в реалтайме, без лагов, тормозов и "подвисаний", естественно. ну как-то так, примерно ах да, камень ATXmega32A4U, расход памяти (флеш) примерно 65% Не сомневаюсь, что на си такое можно соорудить, знаю только , что совсем непросто.
...делать нужно так, как нужно. А как ненужно - делать не нужно (С) Винни-Пух :)