FreshMan писал(а):есть вот такая програмка.................., мне здесь непонятен смысл команды printf("Off");..........., где должнен печатать это слово ПК ???
так наверно через терминал принимает,а показывает в окошке терминала
FreshMan писал(а):есть вот такая програмка.................., мне здесь непонятен смысл команды printf("Off");..........., где должнен печатать это слово ПК ???
ChipKiller писал(а):..а погуглить тяжело?FreshMan писал(а):приведи полное название книжек, плиз
Евстифеев AVR, Лебедев AVR и сразу море ссылок....

да смотрел я уже эти книжки..., от лица начинающих скажу так: они не очень хороши т.к не разжовывают все по порядку и толково................, а для меня главное понять ПОЧЕМУ ЧТО-ТО ПРОИСХОДИТ ТАК А НЕ ИНАЧЕ, а в них этого нет..........., тобишь они ориентированны на более продвинутого пользователя
но как это использовать не поймуАналоговый компаратор сравнивает входные напряжение на положительном входе PB0 (AIN0) и отрицательном входе (AIN1).
зачем столько мороки ??????
Код: Выделить всё
while (1)
{
if (PIND.0==1) // Проверка состояния переключателя
{
rab = 0b10000000; // Сдвиг вправо
while (rab!=0)
{
PORTB=rab^0xFF; // Запись в порт с инверсией
rab = rab >> 1; // Сдвиг разрядов
delay_ms (200); // Задержка на 200 мсек
}
}
else
{
rab = 0b00000001; // Сдвиг влево
while (rab!=0)
{
PORTB=rab^0xFF; // Запись в порт с инверсией
rab = rab << 1; // Сдвиг разрядов
delay_ms (200); // Задержка на 200 мсек
}
}
};
}gavrila писал(а):Подскажите, как и чем можно отследить изменение напряжения?
МК Attiny90S2313 читаю-читаю, вроде как для этого можно использовать аналоговый компаратор
в русском даташите написаноно как это использовать не поймуАналоговый компаратор сравнивает входные напряжение на положительном входе PB0 (AIN0) и отрицательном входе (AIN1).![]()
подкиньте, плз, простой примерчик или ссылку где посмотреть или почитать
почему просто в данном случае нелзя присвоить регистру rab=0b01111111, а потом уже в теле цикла с помощью команды rab = rab >> 1 сдвигать первоначальное значение ? зачем столько мороки ??????
Mr.Denis писал(а):С новым годом друзья!!!)))))
Купил набор avr910 USB программатора, сейчас его собрал, а он не работает.(((
При попытки запрограммировать МК пишит: AVRProg error entering programming mode.
Подскажите что делать???
Mr.Denis писал(а):Mr.Denis писал(а):С новым годом друзья!!!)))))
Купил набор avr910 USB программатора, сейчас его собрал, а он не работает.(((
При попытки запрограммировать МК пишит: AVRProg error entering programming mode.
Подскажите что делать???
Неужели не кто не знает в чем проблемам?
kotelectron писал(а):что под ВСЕ локальные переменные программы в CV сразу выделена память.
BCluster писал(а):BCluster
спасибоBerZerK-ku писал(а):BerZerK-ku
Код: Выделить всё
/*****************************************************
Chip type : ATtiny44
AVR Core Clock frequency: 8,000000 MHz
Memory model : Tiny
External RAM size : 0
Data Stack size : 64
*****************************************************/
#include <tiny44.h>
int gsumm1 = 0;
int gsumm2 = 0;
int gsumm3 = 0;
void func1(char chr1, char chr2)
{
int summ;
int s;
summ = chr1 + chr2;
summ /= 12;
gsumm1++;
gsumm2++;
gsumm3++;
s = gsumm1 + gsumm2 + gsumm3;
gsumm1 = s - summ;
}
void func2(char chr1, char chr2)
{
int summ;
int s;
summ = chr1 + chr2;
summ /= 12;
gsumm1++;
gsumm2++;
gsumm3++;
s = gsumm1 + gsumm2 + gsumm3;
gsumm2 = s - summ;
}
void main(void)
{
gsumm1=8;
gsumm2=23;
gsumm3=3;
func1(12,gsumm2);
if(gsumm3)func2(15,45);
while (1);
}
Garin писал(а):Люди помогите практическим примером, есть например число 12:34:56 нужно чтобы число 34 имело вид мигающего курсора...
Исходник приложил .
Спасибо.
Код: Выделить всё
if (kursor){
switch(kursor){
case 1 : if (data_show1){data_show1=00;}
else{data_show1=daTa1;}}
break;
case 2 : if (data_show2){data_show2=00;}
else{data_show2=daTa2;}}
break;
case 3 : if (data_show3){data_show3=00;}
else{data_show1=daTa1;}}
break;
defoult :break;
}//switch
}//if
Код: Выделить всё
while (1)
{
lcd_gotoxy(3,0);
lcd_putsf(" ");
lcd_putchar((daTashow1/10)%10+0x30);
lcd_putchar(daTashow1%10+0x30);
lcd_putsf(":");
lcd_putchar((daTashow2/10)%10+0x30);
lcd_putchar(daTashow2%10+0x30);
lcd_putsf(":");
lcd_putchar((daTashow3/10)%10+0x30);
lcd_putchar(daTashow3%10+0x30);
};
}