Код (C++): ISR(USART_RX_vect) //завершение приема { a=UDR0;//забираем принятые данные b=a; c=0; if ((a>=48) && (a<=57)) {// преоброзование с символа на чисел c = c * 10 + (a - 48); } for (int i;i < 10;i++) {Danie1[i]=c; } } //*****uart******** ISR (USART_UDRE_vect)//регистр данных на передачю пуст { if (Temp < 10) {UDR0 = Danie1[Temp]; Temp++; } else { UCSR0B &=~(1 << UDRIE0); //прерывания по опусташение регистра данных на передачю зап } } Принимаемые данные повторяются
код бредятина. Если вам надо передать числа - так и передавайте числа сразу! Зачем вы их сначала в символы переводите, а потом в приемнике - обратно? Глупо передавать число 128 как три символа "1", "2" и "8" - когда можно отправить всего 1 байт. И принимать так же.
слышал есть библиотеки sleep и avr/power в которых можно отключать перефирию МК . Конкретно интересует отключение АЦП англ ADC , короче говоря аналогово-цифрового преобразователя.
Если изначально в программе периферия не включалась, то соответствующие выводы - обычные GPIO (вход/выход) и ничего отключать не надо. Исключения для Reset и еще некоторых. Пример: Как только будет в программе $baud = 9600 - будет включен UART. Если этой команды нет - ножки Rxt и Txd - обычные GPIO.
Как это не надо? Оно же тактируется и кушает электричество. Чтобы выключить абсолютно всё, есть макрос Код (C++): power_all_disable();
Только после старта МК в ADEN - всегда "0", как и во всем ADCSRA, а если не было в программе разрешений на работу АЦП, то и отключать-то уже нечего...
Честно - 128 не изучал. Но бит ADEN - это разрешение работы АЦП, а не управление тактированием. В других мк для этого есть регистр PRR и все его биты при сбросе в единице. 128 мега - она же не picopower?
Я привел для примера 128-ю, т.к. на этот МК есть грамотный перевод ДШ. http://kazus.ru/forums/attachment.php?attachmentid=2518&d=1259869371 Для других МК достаточно сопоставить разделы ДШ, чтоб выявить разницу или внести поправки. Если есть необходимость использовать другой регистр, то (см. выше) опять же нет необходимости в библиотеках.
Ну я чтение даташита всегда начинаю с таблицы регистров. А уже потом углубляюсь в нюансы. Английский ни разу не останавливал.