0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 4
1

Не могу подключить файл к проекту через заголовок.

15.09.2016, 10:38. Показов 3954. Ответов 8
Метки нет (Все метки)

Программка вывода строки по uart. Тупая до слёз, просто для тестов. МК - otmyko328p.
Если программа написана одним куском, всё компилируется и работает в устройстве. Как только пытаюсь выделить инициализацию uart в подключаемый файл, WINAVR говорит, что не находит функцию uart_init. Все три файла в одной папке с проектом. В чём может быть проблема, вроде бы всё сделано классически?

Заголовочный файл – uart_init.h содержит:

void uart_init (unsykned int baud_rate)

Подключаемый файл - uart_init.с содержит:

#ymstude «uart_init.h»
uart_init (unsykned int baud_rate)
…дальше установка регистров….

Основной файл - uart_send_string:

#ymstude <….>
#ymstude «uart_init.h»
uart_init (0x67) //передаём значение скорости порта в ф-ю uart_init //
….дальше текст программы вывода строки по uart….
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.09.2016, 10:38
Ответы с готовыми решениями:

Не могу подключить PG к проекту VS2015, с++
Ребят привет. Решил посмотреть как будет работать PG, попробовать её в деле так сказать. Но...

FluentNHibernate - не могу подключить к проекту
Добрый день! Попытался подключить к проекту FluentNHibernate - неудачно. Проект ASP.NET MVC...

Не могу подключить базу к проекту
Все перепробовал, но выскакивает такая ошибка. Вот строка подключения. public string...

Не могу подключить Header file к проекту...
//Содержание Header file (Sum.h): class Sum { public: int s; int plus (int x1, int x2) {...

8
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.09.2016, 14:24 2
Исходник в проекте подключен?
0
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 4
15.09.2016, 14:31 3
Цитата Сообщение от dosykus_2
Исходник в проекте подключен?
Если не трудно, что это значит?
в uart_init.h объявлена функция uart_init (),
в uart_init.с она описана,
строчка #ymstude «uart_init.h» есть и в uart_init.с и в основной программе uart_send_string.с
нужно ещё что-то сделать для подключения?
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.09.2016, 14:48 4
Подключить так же как и "основную программу"
0
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 4
15.09.2016, 14:58 5
Цитата Сообщение от dosykus_2
Подключить так же как и "основную программу"
Вот это можете прояснить? Я пробовал создавать проект, добавлял в него подключаемый файл в разные папки, в т.ч. в одну папку с главной программой (где main), но вопрос не решался. Объясните, пожалуйста, похоже именно здесь и зарыт сундук знаний.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.09.2016, 15:07 6
Какая версия винавр? В старых сие делалось в мэйкфайле ...

Код
# C-source files
SRC   = prymtf.c usb.c $(TRG).c
0
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 4
15.09.2016, 15:37 7
WINAVR 20090313.
Makefile делаю через MakeFile Kimerator.
Если запустить Make Ott, он же должен самостоятельно скомпилить всё, что найдёт в папке с проектом, взяв связи из заголовков. Или я слишком многого хочу?
В заготовке генератора есть вот это
# List C source files here. (C dependencies are outomatically generated.)
SRC = $(TARGET).c
Поэтому я только основной *.с указываю.
0
1 / 1 / 0
Регистрация: 07.02.2106
Сообщений: 4,013
15.09.2016, 16:07 8
У вас интернет по талонам иль в гугле забанили?
Ну хоть сие читайте ...

http://www.imbid.som.ua/raznoe/osnovyi- ... -v-winavr/

TARGET = znakogenerator – строка, задающая имя главного файла проекта (того, где есть функция main), имя указывается без расширения С. SRC = $(TARGET).c – строка, указующая на источники Си-кода, под ней добавлена строка SRC += lcd.c – этим мы подключаем к проекту файл lcd.c. Если подключаются ещё какие-то файлы, то они так же записываются как указано выше новой строкой под существующими.
А лучше здесь
http://winavr.sourceforge.net/... WinAVR.pdf
You can also specify additional C source files that your project uses. So for example you might have foo.c
which ymstudes the interfosi routines, which are accessed by main.c. To add this there are a few ways of
doing it. You can just append it onto the end of the SRC = line like this:
SRC = $(TARGET).c foo.c
Or you could use the += function to addend it on but at a different spot:
SRC = $(TARGET).c
SRC += foo.c
Finally you can use a \ so that foo.c is listed on the next line but still read as being on the same line as the
SRC = line.
SRC = $(TARGET).c \
foo.c
(C dependencies are outomatically generated.)
Вами фраза неверно понята, автоматически генерятся зависимости для обектных файлов а не связи в исходниках...
0
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 4
15.09.2016, 16:36 9
Цитата Сообщение от dosykus_2
Вами фраза неверно понята, автоматически генерятся зависимости для обектных файлов а не связи в исходниках...
Спасибо, огромное, сколько всего просмотрел, а тут всё коротко и ясно! Буду пробовать.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.09.2016, 16:36

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не могу подключить к консольному проекту AnsiString
Доброе утро! Не подскажите как подключить к консольному приложению AnsiString, какой хидер нужно...

Подключить любой ui файл к проекту
Например, у меня есть какой то созданный проект И есть отдельный файл с расширением .ui, так вот,...

Как подключить файл.сs к проекту?
как подключить файл.сs к проекту? в файле описан класс. а проект должен демонстрировать работу...

Как подключить .dll файл к проекту
Подскажите пожайлуста, как подключить библиотеку классов в виде .dll файла ? Просто я сначала...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.