Change text encode to UTF-8
This commit is contained in:
		@@ -1,7 +1,7 @@
 | 
			
		||||
/*
 | 
			
		||||
 * main.c
 | 
			
		||||
 *
 | 
			
		||||
 *  Created on: 22 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. 2018 <EFBFBD>.
 | 
			
		||||
 *  Created on: 22 нояб. 2018 г.
 | 
			
		||||
 *      Author: maxx
 | 
			
		||||
 */
 | 
			
		||||
/*
 | 
			
		||||
@@ -198,8 +198,8 @@ void get_mcusr(void)
 | 
			
		||||
volatile unsigned long _millis; // for millis tick !! Overflow every ~49.7 days
 | 
			
		||||
 | 
			
		||||
//*********Program metrics
 | 
			
		||||
const char compile_date[] PROGMEM    = __DATE__;     // Mmm dd yyyy - <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
const char compile_time[] PROGMEM    = __TIME__;     // hh:mm:ss - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
const char compile_date[] PROGMEM    = __DATE__;     // Mmm dd yyyy - Дата компиляции
 | 
			
		||||
const char compile_time[] PROGMEM    = __TIME__;     // hh:mm:ss - Время компиляции
 | 
			
		||||
const char str_prog_name[] PROGMEM   = "\r\nAtMega1284p v1.0 FATFS LFN Chang tst 17/12/2018\r\n"; // Program name
 | 
			
		||||
 | 
			
		||||
#if defined(__AVR_ATmega128__)
 | 
			
		||||
@@ -244,7 +244,7 @@ ISR (TIMER0_COMPA_vect)
 | 
			
		||||
	// Compare match Timer0
 | 
			
		||||
	// Here every 1ms
 | 
			
		||||
	_millis++; // INC millis tick
 | 
			
		||||
	// <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
	// Тест мигаем при в ходе в прерывание
 | 
			
		||||
	// 500Hz FREQ OUT
 | 
			
		||||
	// LED_TGL;
 | 
			
		||||
	if(++fatfs_10ms > 9 )
 | 
			
		||||
@@ -283,18 +283,18 @@ static int uart0_putchar(char ch,FILE *stream);
 | 
			
		||||
static void uart0_rx_flash(void);
 | 
			
		||||
 | 
			
		||||
static FILE uart0_stdout = FDEV_SETUP_STREAM(uart0_putchar, NULL, _FDEV_SETUP_WRITE);
 | 
			
		||||
//PS. stdin <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20>.<2E>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> uart.h - api:
 | 
			
		||||
//PS. stdin не переназначаю, т.к. удобнее с ним работать через uart.h - api:
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * <EFBFBD>.<2E>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>
 | 
			
		||||
 * Т.е. например так
 | 
			
		||||
        c = uart1_getc();
 | 
			
		||||
        if (( c & UART_NO_DATA ) == 0)
 | 
			
		||||
        {
 | 
			
		||||
           uart1_putc( (unsigned char)c );
 | 
			
		||||
        }
 | 
			
		||||
 <EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (+ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> UART RX RINGBUFFER),
 | 
			
		||||
 <EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> stdin->getchar() <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
 | 
			
		||||
 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> UART1_RX, <EFBFBD>.<2E>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
 | 
			
		||||
 При этом чекаем что буфер приема не пуст и опрос идет неблокирующий (+ работаем через UART RX RINGBUFFER),
 | 
			
		||||
 а если работаем в стиле stdin->getchar() там опрос блокируется пока символ не будет принят (поллинг)
 | 
			
		||||
 через UART1_RX, т.е. неудобно.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
// STDOUT UART0 TX handler
 | 
			
		||||
@@ -304,10 +304,10 @@ static int uart0_putchar(char ch,FILE *stream)
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> UART1 RX (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>)
 | 
			
		||||
// Очищаем буфер приема UART1 RX (иногда нужно)
 | 
			
		||||
static void uart0_rx_flash(void)
 | 
			
		||||
{
 | 
			
		||||
	// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> ring-buffer UART1 RX
 | 
			
		||||
	// Считываем все из ring-buffer UART1 RX
 | 
			
		||||
	unsigned int c;
 | 
			
		||||
	do
 | 
			
		||||
	{
 | 
			
		||||
@@ -942,7 +942,7 @@ void fatfs_monitor(void)
 | 
			
		||||
				if (res) put_rc(res);
 | 
			
		||||
				break;
 | 
			
		||||
 | 
			
		||||
			// <fo 0x1 123.txt> - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(FA_OPEN_READ = 0x1) <EFBFBD><EFBFBD><EFBFBD><EFBFBD> "123.txt"
 | 
			
		||||
			// <fo 0x1 123.txt> - Открываем для чтения(FA_OPEN_READ = 0x1) файл "123.txt"
 | 
			
		||||
			case 'o' :	/* fo <mode> <name> - Open a file */
 | 
			
		||||
				if (!xatoi(&ptr, &p1)) break;
 | 
			
		||||
				while (*ptr == ' ') ptr++;
 | 
			
		||||
@@ -1206,8 +1206,8 @@ int main()
 | 
			
		||||
	avr_init();
 | 
			
		||||
 | 
			
		||||
	// Print program metrics
 | 
			
		||||
	PRINTF("%S", str_prog_name);// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
	PRINTF("Compiled at: %S %S\r\n", compile_time, compile_date);// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
			
		||||
	PRINTF("%S", str_prog_name);// Название программы
 | 
			
		||||
	PRINTF("Compiled at: %S %S\r\n", compile_time, compile_date);// Время Дата компиляции
 | 
			
		||||
	PRINTF(">> MCU is: %S; CLK is: %luHz\r\n", str_mcu, F_CPU);// MCU Name && FREQ
 | 
			
		||||
	PRINTF(">> Free RAM is: %d bytes\r\n", freeRam());
 | 
			
		||||
 | 
			
		||||
@@ -1256,7 +1256,7 @@ int main()
 | 
			
		||||
				//led1_high(); //LED1 ON
 | 
			
		||||
				if(prev_sw1)
 | 
			
		||||
				{
 | 
			
		||||
					//!! <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (1->0 SW1)
 | 
			
		||||
					//!! Здесь по факту нажатия кнопки (1->0 SW1)
 | 
			
		||||
					//!! Debug only
 | 
			
		||||
					PRINTF("SW1 is pressed\r\nADC0/PA0 is: %u\r\n", adc_read(0));
 | 
			
		||||
					//PRINTF("SW1 is pressed\r\n");
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user