Чуваку ногу отстрелили, он отнес ее домой, затем похоронил на Ваганьковском кладбище и панихидку ежегодно правит по ней... Приглашает посетить могилку и утверждает что пушка в Кремле 11-я от входа
Ну я бы не сказал что они обделались и контроль потеряли. Просто резать ролик неохота была, так закачал. Там интервью с посетителями которые это сняли.
Вроде второй чувак какую то фигню с пояса снял и к гриве пристроил - может быстрый впрыск успокоительного снотворного ? Лев наверху уже как то в ногах заплетаться стал.
У меня возникла следующая проблемма неполучается получить данные с ПК по USART-у, отправлять в пк данные получается, а вот получить из него нет. в чем проблема? Использую CVAVR процедуру getchar();
Предположим, в гипер терминале отправляю что то нажатием на клавишу клавиатуры, но функция getchar() ее невидит. if (rx_counter1 !=0){ a=getchar1(); putchar1(a) ;} //или putchar1(getchar1());
#if RX_BUFFER_SIZE1<256 unsigned char rx_wr_index1,rx_rd_index1,rx_counter1; #else unsigned int rx_wr_index1,rx_rd_index1,rx_counter1; #endif
// This flag is set on USART1 Receiver buffer overflow bit rx_buffer_overflow1;
// USART1 Receiver interrupt service routine interrupt [USART1_RXC] void usart1_rx_isr(void) { char status,data; status=UCSR1A; data=UDR1; if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) { rx_buffer1[rx_wr_index1]=data; if (++rx_wr_index1 == RX_BUFFER_SIZE1) rx_wr_index1=0; if (++rx_counter1 == RX_BUFFER_SIZE1) { rx_counter1=0; rx_buffer_overflow1=1; }; }; }
// Get a character from the USART1 Receiver buffer #pragma used+ char getchar1(void) { char data; while (rx_counter1==0); data=rx_buffer1[rx_rd_index1]; if (++rx_rd_index1 == RX_BUFFER_SIZE1) rx_rd_index1=0; #asm("cli") --rx_counter1; #asm("sei") return data; } #pragma used- // Write a character to the USART1 Transmitter #pragma used+ void putchar1(char c) { while ((UCSR1A & DATA_REGISTER_EMPTY)==0); UDR1=c; } #pragma used-
// Declare your global variables here
void main(void) { char a;
// USART1 initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART1 Receiver: On // USART1 Transmitter: On // USART1 Mode: Asynchronous // USART1 Baud Rate: 9600 UCSR1A=0x00; UCSR1B=0x98; UCSR1C=0x06; UBRR1H=0x00; UBRR1L=0x67;
// Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00;
// Global enable interrupts #asm("sei")
while (1) { if (rx_counter1 !=0){ a=getchar1(); putchar1(a); } else putchar1('a') ; }; }