Проблема с 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__
Посоветуйте как восстановить работоспособность монитора порта, очень нужно для отладки