oleg110592 писал(а):ответ был
вопрос был о том, как глядя в заголовок, понять, где эта функция реализована, а не увидев реализацию этой функции в файле, наведением мыша на неё увидеть, где она описана. заголовки обычно короткие и достаточно информативные для анализа общей структуры проекта. если не поддерживать заголовки в порядке, придется анализировать проект по структуре исходников, что даже с IDE достаточно не тривиальная задача.
самый логичный способ - создавать заголовок, совпадающий по названию с модулем, но с расширением .h - тогда вопросов, к чему относится содержимое заголовка, не возникает принципиально.
логичная, с моей точки зрения, такая структура:
1. заголовок описания внешних сигналов. описаны порты и пины для общения с внешней схемой.
2. конфигурационный заголовок. описаны макросы, меняющие процесс сборки проекта, например, включающие или отключающие те или иные блоки кода и даже целиком модули. правильнее это делать при помощи возможностей makefile, но по вышеозвученным причинам я этого не умею делать.
3. пары файлов "модуль-заголовок"
в каждом модуле
должно быть указано подключение тех заголовков проекта, которые необходимы для компиляции этого модуля. подключение заголовков, никак не влияющих на компиляцию модуля (типа просто до кучи) не должно осуществляться.
теоретически в моем видении проекта есть место, куда вписать F_CPU, но, так как IDE проекта уже содержит в том или ином виде это значение, я так не делаю и другим не советую - не нужно плодить сущности и тем более задваивать их.