Проблема с printf или serial?
- Войдите на сайт для отправки комментариев
Переустановил компилятор ардуино и появились проблемы с выводом в ком-порт (монитор порта, использую для отладки). Для вывода использовал printf и serial ( файл "printf.h" на всякий случай привожу ниже),
после проявления проблемы программа гонит в порт набор бессмысленных символов то-ли на другой скорости, то ли с другим фреймом. В программе serial инициализирован Serial.begin(57600);
До переустановки компилятора дуино платы на ком-портах отображались как prolific COM, а после переустановки используется встроенный драйвер.
Посмотрел в windows настройки портов по умолчанию - 9600, 8,N,1. Установил на всякий случай 57600, 8,N,1 - ничего не изменилось, да и не ожидалось тк инициализация порта на 57600 происходит в программе.
PS: сейчас уже не помню по какой причине был вынужден когда-то поместить файл printf.h в один каталог с текстом основной программы (по-моему компилятор не находил его), но все до переустановки компилятора все работало.
/* Copyright (C) 2011 J. Coliz <maniacbug@ymail.com> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. */ /** * @file printf.h * * Setup necessary to direct stdout to the Arduino Serial library, which * enables 'printf' */ #ifndef __PRINTF_H__ #define __PRINTF_H__ #ifdef ARDUINO int serial_putc( char c, FILE * ) { Serial.write( c ); return c; } void printf_begin(void) { fdevopen( &serial_putc, 0 ); } #else #error This example is only for use on Arduino. #endif // ARDUINO #endif // __PRINTF_H__
Посоветуйте как восстановить работоспособность монитора порта, очень нужно для отладки