Ir ao conteúdo

Compilando para Teensy 3.0 no Windows utilizando Makefile

Boa tarde,

Se você não quer utilizar a Arduino IDE (Teensy IDE?) para programar e enviar seus códigos para o Teensy 3.0 você pode utilizar o Makefile.

A última versão da IDE por enquanto você consegue no Forum do PJRC . Como ele diz, existe um exemplo de Makefile na pasta: “arduino-1.0.3\hardware/teensy/cores/teensy3” porém para utiliza-lo você precisa fazer alguns passos como adicionar o “arduino-1.0.3\hardware\tools\arm-none-eabi\bin” ao seu PATH para que possa utilizar os executaveis desta pasta tranquilamente. Para isso abra o seu Prompt de Comando: Iniciar – Executar – CMD

E em seguida insira o seguinte comando:

PATH = %PATH%;C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools\arm-none-eabi\bin

[Se você não quer entender as modificações que eu realizei va para o final da publicação]

Para garantir que não estragaria o arquivo, fiz uma copia completa do diretório. Em seguida ao executar o

cs-make.exe

Recebia a seguinte mensagem de erro:

C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\Projects\Example_not_working>cs-make.exe
C:/Users/X-warrior/Desktop/tools/arm-none-eabi/bin/arm-none-eabi-gcc -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD -DF_CPU=48000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH -I. -c -o analog.o analog.c
process_begin: CreateProcess(NULL, C:/Users/X-warrior/Desktop/tools/arm-none-eabi/bin/arm-none-eabi-gcc -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD -DF_CPU=48000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH -I. -c -o analog.o analog.c, …) failed.
make (e=2): The system cannot find the file specified.
cs-make.exe: *** [analog.o] Error 2

Verificando o Makefile decidi alterar as configurações das váriaveis para caminho completo já que eu fiz uma copia do teeensy/core.
TOOLSPATH = C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools
LIBRARYPATH = Deixei como estava
COMPILERPATH = C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools\arm-none-eabi\bin

O erro continuou o mesmo, continuando a entender o código percebi os “abspath” e pensei que poderia estar dando problema por eu estar usando caminhos absolutos então removi todos os “$(abspath” lembrando que o mesmo possui um parêntesis que fecha o comando. Então por exemplo:

$(abspath $(COMPILERPATH)) ficará $(COMPILERPATH)

Tentando compilar novamente com cs-make, iniciou a compilar mas no final aconteceu o seguinte erro:

C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools\arm-none-eabi\bin/arm-none-eabi-objcopy -O ihex -R .eeprom main.elf main.hex
C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools/teensy_post_compile -file=main -path= -tools=C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools
Opening Teensy Loader…
Teensy Loader could not find the file main
cs-make.exe: *** [main.hex] Error 1

Analisando o arquivo encontrei: “path=$(shell pwd)” e me pareceu que pwd não era um comando válido de shell em windows. Testei no console, e não era. Então alterei para “path=$(shell echo %cd%)”. Antes de compilar novamente decidi tentar limpar os arquivos que já foram gerados com cs-make clean

O erro encontrado foi:

C:\Users\X-warrior\Desktop\arduino-1.0.3\Projects\Example_not_working>cs-make.exe clean
rm -f *.o *.d main.elf main.hex
process_begin: CreateProcess(NULL, rm -f *.o *.d main.elf main.hex, …) failed.
make (e=2): The system cannot find the file specified.
cs-make.exe: *** [clean] Error 2

E me pareceu que ele estava chamando rm -f no windows o que também não é um comando válido. Alterei o comando rf para:

del *.o
del *.d
del $(TARGET).elf
del $(TARGET).hex

Com isso consegui limpar os arquivos. E tentei compilar novamente e funcionou! Realizei uns testes alterando o main.cpp e estava sendo compilado e enviado ao meu Teensy 3.0 como deveria ser. De qualquer forma trabalhar com todos aqueles arquivos e os meus juntos seria um tanto quanto trabalhoso, então copiei todos os arquivos com exceção do Makefile e do main.cpp para teensy/ dentro do meu projeto. Assim eu conseguiria compilar com o Makefile sem ter todos os arquivos em uma confusão. Alterei os CPP e C files para:

C_FILES := $(wildcard *.c) \
$(wildcard $(addprefix teensy/, *.c)) \
$(wildcard $(addprefix teensy/util, *.c)) \
$(wildcard $(addprefix teensy/avr, *.c))
CPP_FILES := $(wildcard *.cpp) \
$(wildcard $(addprefix teensy/, *.cpp)) \
$(wildcard $(addprefix teensy/util, *.cpp)) \
$(wildcard $(addprefix teensy/avr, *.cpp))
OBJS := $(C_FILES:.c=.o) $(CPP_FILES:.cpp=.o)

As configurações do linker para:

LDFLAGS = -Os -Wl,–gc-sections -mcpu=cortex-m4 -mthumb -Tteensy/mk20dx128.ld

E para ficar consistente:

$(TARGET).elf: $(OBJS) teensy/mk20dx128.ld
$(CC) $(LDFLAGS) -o $@ $(OBJS)

E encontrei o seguinte erro:

teensy/keylayouts.c:1: fatal error: avr/pgmspace.h: No such file or directory
compilation terminated.
cs-make: *** [teensy/keylayouts.o] Error 1

Alterei as CPPFLAGS para:

CPPFLAGS = -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD $(OPTIONS) -I. -Iteensy/

E também lembrei que o clean deveria ser alterado para:

clean:
del *.o
del *.d
del $(TARGET).elf
del $(TARGET).hex
del $(CURRENT_PATH)\teensy\*.o
del $(CURRENT_PATH)\teensy\*.d

E adicionei:

CURRENT_PATH=$(shell echo %cd%)

Logo após as configurações que não devem ser alteradas pelo usuário. Com isso consegui utilizar o Makefile no Windows 7 para compilar e fazer upload para o Teensy 3.0 e mantendo os arquivos separados.

Resumo:
Você deve editar as váriaveis TOOLSPATH , COMPILERPATH e LIBRARYPATH para o seu caminho COMPLETO.
Em seguida crie uma pasta para o seu projeto “Meu_Projeto”
Crie uma pasta dentro dela chamada “teensy” (Meu_Projeto/teensy/)
Copie “arduino-1.0.3\hardware/teensy/cores/teensy3/” para “Meu_Projeto/teensy/” (os sub-diretórios também, mas o Makefile não)
Adicione o Makefile que você encontra no final deste post em “Meu_Projeto”
Copie o arquivo “Meu_Projeto/teensy/main.cpp” para o “Meu_Projeto/main.cpp”
Programe apartir do main.cpp
Compile e faça Upload com cs-make

Makefile para Teensy no Windows

Espero que seja útil,
Matheus

Publicado emCcppTeensywindows

3.619 Comentários

  1. RobertMom RobertMom

    Постановка капельницы от запоя специалистами клиники «Пульс» в Воронеже обеспечивает пациентам оперативную помощь и быстрое облегчение состояния благодаря экстренному выезду врача на дом. Наши услуги доступны круглосуточно, включая ночное время и праздничные дни, что особенно важно при внезапных и критических ситуациях. Мы гарантируем полную конфиденциальность и защиту персональных данных пациентов, что позволяет получить необходимую помощь без риска огласки. Индивидуальный подход к каждому случаю обеспечивает максимальную эффективность лечения, а наши опытные наркологи используют только сертифицированные препараты, которые безопасно и быстро выводят токсины и стабилизируют состояние здоровья. Прозрачность ценообразования, предварительное согласование всех расходов и отсутствие скрытых доплат делают услуги клиники «Пульс» удобными и доступными для всех жителей Воронежа.
    Детальнее – капельница от запоя анонимно в краснодаре

  2. Современные методы лечения при выводе из запоя включают как медикаментозную детоксикацию, так и психологическую реабилитацию. В Уфе наркологи используют капельничное введение лекарственных средств, которые помогают быстро вывести токсины, нормализовать обмен веществ и стабилизировать работу внутренних органов. Одновременно с этим проводится психологическая поддержка для снижения эмоционального стресса, связанного с запоем.
    Подробнее тут – частный нарколог на дом уфа

  3. Anthonyneupe Anthonyneupe

    Это основа детоксикации. Внутривенно вводятся солевые растворы, витаминные комплексы, гепатопротекторы и другие препараты, которые очищают кровь от токсинов, восстанавливают водно-электролитный баланс и поддерживают работу сердца и почек. Такая терапия эффективно снимает симптомы абстиненции, нормализует сон и общее самочувствие пациента. Врач контролирует дозировку и состав капельницы в зависимости от состояния больного и результатов анализов. Процедура чистка организма от токсинов позволяет не только вывести наркотики, но и восстановить работу печени и сердечно-сосудистой системы. Это базовый этап лечения зависимости, без которого невозможна полноценная реабилитация.
    Углубиться в тему – https://detoksikaciya-narkomanov-moskva13.ru/detoksikaciya-ot-narkotikov-na-domu-moskva

  4. Georgeagite Georgeagite

    В этой статье мы подробно рассматриваем проверенные методы борьбы с зависимостями, включая психотерапию, медикаментозное лечение и поддержку со стороны общества. Мы акцентируем внимание на важности комплексного подхода и возможности успешного восстановления для людей, столкнувшихся с этой проблемой.
    Всё самое вкусное внутри – врач нарколог на дом в ростове

  5. RobertMom RobertMom

    Алкогольный запой является тяжёлым состоянием, требующим срочного медицинского вмешательства. Наркологическая клиника «Пульс» в Краснодаре предлагает эффективную помощь в борьбе с алкогольной зависимостью, используя проверенный метод — капельницу от запоя на дому. Наши специалисты оперативно выезжают по указанному адресу и обеспечивают качественную медицинскую помощь с гарантией конфиденциальности и безопасности.
    Получить дополнительную информацию – https://kapelnica-ot-zapoya-krasnodar7.ru/

  6. Jessiesex Jessiesex

    В этих случаях вызов нарколога на дом не только оправдан, но и жизненно необходим для предотвращения опасных осложнений и стабилизации здоровья пациента.
    Подробнее можно узнать тут – нарколог на дом в воронеже

  7. Специалист осуществляет первоначальный осмотр, измеряет ключевые показатели: артериальное давление, пульс, сатурацию кислорода в крови, выявляет степень интоксикации и тяжесть симптомов.
    Узнать больше – нарколог на дом воронеж

  8. Williammit Williammit

    После диагностики начинается активная фаза медикаментозного вмешательства. Препараты вводятся капельничным методом, что способствует быстрому снижению уровня токсинов в крови, нормализации обменных процессов и стабилизации работы таких органов, как печень, почки и сердце.
    Узнать больше – вывод из запоя на дому мурманск

  9. RobertMom RobertMom

    В клинике «Пульс» процесс оказания помощи начинается сразу после вашего обращения. Наша бригада оперативно выезжает на дом, где врач проводит первичный осмотр пациента: измеряет давление, пульс, оценивает степень интоксикации и собирает анамнез. На основе полученных данных подбирается индивидуальный состав капельницы.
    Подробнее – капельница от запоя на дому круглосуточно в краснодаре

  10. После поступления звонка нарколог оперативно выезжает по указанному адресу и прибывает в течение 30–60 минут. Врач незамедлительно приступает к оказанию помощи по четко отработанному алгоритму, состоящему из следующих этапов:
    Узнать больше – нарколог на дом анонимно в воронеже

  11. Robertbop Robertbop

    В статье рассматриваются различные стратегии борьбы с зависимостями, включая проверенные методы и реальные истории успеха. Читатель узнает, какие подходы наиболее эффективны и как начать путь к выздоровлению.
    Открой скрытое – Наркологическая клиника «Похмельная служба» в Анапе

  12. LarryNob LarryNob

    В этой заметке мы представляем шаги, которые помогут в процессе преодоления зависимостей. Рассматриваются стратегии поддержки и чек-листы для тех, кто хочет сделать первый шаг к выздоровлению. Наша цель — вдохновить читателей на положительные изменения и поддержать их в трудных моментах.
    Лучшее решение — прямо здесь – врач нарколог на дом в ростове

  13. Лечение вывода из запоя на дому в Мурманске организовано по четко структурированной схеме, включающей следующие этапы, каждый из которых играет ключевую роль в оперативном восстановлении здоровья:
    Получить больше информации – http://vyvod-iz-zapoya-murmansk00.ru

  14. Michaelhig Michaelhig

    В данном обзоре представлены основные направления и тренды в области медицины. Мы обсудим актуальные проблемы здравоохранения, свежие открытия и новые подходы, которые меняют представление о лечении и профилактике заболеваний. Эта информация будет полезна как специалистам, так и широкой публике.
    Жми сюда — получишь ответ – стоп алко екатеринбург

  15. Haroldgoake Haroldgoake

    В этом исследовании рассмотрены методы лечения зависимостей и их эффективность. Мы проанализируем различные подходы, используемые в реабилитационных центрах, и представим данные о результативности программ. Читатели получат надежные и научно обоснованные сведения о данной проблеме.
    Прочесть всё о… – Наркологическая клиника «Похмельная служба» в Москве.

  16. Oscarfouro Oscarfouro

    Этот документ охватывает важные аспекты медицинской науки, сосредотачиваясь на ключевых вопросах, касающихся здоровья населения. Мы рассматриваем свежие исследования, клинические рекомендации и лучшие практики, которые помогут улучшить качество лечения и профилактики заболеваний. Читатели получат возможность углубиться в различные медицинские дисциплины.
    Полезно знать – Наркологическая клиника «Похмельная служба» в Мытищах.

  17. Douglashewly Douglashewly

    В таблице ниже приведены примеры методов и применяемых средств при лечении пациентов с алкогольной и наркотической зависимостью:
    Исследовать вопрос подробнее – http://narkologicheskaya-klinika-v-krd19.ru

  18. Haroldgoake Haroldgoake

    В данной статье рассматриваются физиологические и эмоциональные аспекты зависимости. Мы обсудим, как организм реагирует на зависимое поведение, и какие методы помогают восстановить здоровье и внутреннее равновесие.
    Читать дальше – стоп алко

  19. PeterHuh PeterHuh

    В этой статье мы рассматриваем разные способы борьбы с алкогольной зависимостью. Обсуждаются методы лечения, программы реабилитации и советы для поддержки близких. Читатели получат информацию о том, как преодолеть зависимость и добиться успешного выздоровления.
    Подробнее можно узнать тут – Наркологическая клиника «Похмельная служба» в Люберцах.

  20. Davisdah Davisdah

    Мы рассмотрим современные вызовы здравоохранения и пути их решения с помощью технологий и научных исследований. В статье собраны данные о новых лекарствах, методах диагностики и системном подходе к улучшению здоровья населения.
    Запросить дополнительные данные – Похмельная служба Геленджик

  21. GeorgeCoilt GeorgeCoilt

    В этой публикации мы рассматриваем важную тему борьбы с зависимостями, включая алкогольную и наркотическую зависимости. Мы обсудим методы лечения, реабилитации и поддержку, которые могут помочь людям, столкнувшимся с этой проблемой. Читатели узнают о перспективах выздоровления и важности комплексного подхода.
    Нажмите, чтобы узнать больше – Наркологическая клиника «Похмельная служба» в Москве

  22. Eugenedaync Eugenedaync

    Вызов нарколога на дом в Каменске-Уральском обеспечивает безопасность пациента, исключая необходимость посещения медицинского учреждения, что особенно актуально при тяжелом состоянии или психологическом сопротивлении. Такая помощь включает в себя детоксикацию, купирование абстинентного синдрома и консультации по дальнейшему лечению.
    Получить больше информации – https://narkolog-na-dom-kamensk-uralskij11.ru

  23. Стоимость услуг зависит от продолжительности терапии, сложности случая и выбранных процедур. Однако клиника предоставляет гибкую систему оплаты, включая рассрочку и страховое покрытие.
    Подробнее можно узнать тут – наркологическая клиника нарколог

  24. DanielDiopy DanielDiopy

    В этом обзоре мы обсудим современные методы борьбы с зависимостями, включая медикаментозную терапию и психотерапию. Мы представим последние исследования и их результаты, чтобы читатели могли быть в курсе наиболее эффективных подходов к лечению и поддержке.
    Читать полностью – Похмельная служба Люберцы

  25. MarioSanda MarioSanda

    В этой медицинской статье мы погрузимся в актуальные вопросы здравоохранения и лечения заболеваний. Читатели узнают о современных подходах, методах диагностики и новых открытий в научных исследованиях. Наша цель — донести важную информацию и повысить уровень осведомленности о здоровье.
    Узнать напрямую – Похмельная служба Люберцы

  26. Danielwhads Danielwhads

    В «Южном МедКонтроле» лечение зависимостей строится поэтапно, с постепенным восстановлением физиологических функций и эмоциональной устойчивости. Врачи используют современные методы детоксикации, фармакотерапию и психотерапию, которые действуют комплексно. Каждый этап направлен на достижение конкретного результата: очищение организма, снятие симптомов абстиненции, стабилизацию состояния и профилактику срывов.
    Изучить вопрос глубже – https://narkologicheskaya-clinika-v-rostove19.ru/narkologiya-rostov-kruglosutochno

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *