MPLAB X IDE/XC32/SAMD21XPlained Pro/printf() не работает

я использую SAMD21XPlained Proдоска на Mac (OS Big Sur)с MPLAB X IDE v6.00 (XC32 compiler)и в настоящее время у меня возникает проблема при попытке отобразить сообщение на моем терминале с помощью функции.

Я новичок в программировании встраиваемых систем и стараюсь следовать этому руководству о последовательной связи STDIO : https://www.youtube.com/watch?v=3pwdpYj5s_A&t=397s .

Основываясь на этом уроке, я сначала попытался сделать только a, но ничего не увидел на терминале (я не пробовал scanf()для этой первой попытки). Единственное, что я изменил, это то, что я включил файл stdio.h и провел второй тест с baud rate 9600(потому что я действительно не знаю, как определить скорость передачи данных, и я хотел проверить это).

Я читал на нескольких форумах, что проблема связана с тем, что компилятор по умолчанию использует UART2в то время как printf()должны использовать для отображения на терминале. Несколько человек предлагают включить, чтобы переопределить значение по умолчанию UART1( __XC_UART = 1), но, похоже, это работает только для микроконтроллеров. Согласно моим исследованиям в файлах компилятора, xc.hфайл для отличается от файла для PIC32/SAMи только один для определяет __XC_UART.

Я также попытался применить то, что предлагается в « Справке разработчика Microchip » для « Перенаправление stdout для использования с printf() » в категории: https://microchipdeveloper.com/xc32:redirect-stdout

Проблема в том, что это также, кажется, только для µCs ( p32xxxx.hфайл, включенный в начало кода, существует только для PIC32MXв XC32компилятор).

После нескольких дней исследований я перепробовал множество решений, предложенных на разных форумах, но до сих пор не могу найти то, которое работает, поэтому мне интересно, есть ли у вас идея?

Благодарю вас !

0 ответов

Другие вопросы по тегам