INT main (void) { vInitPipe(); USART_Init ( 9600 ); vSetPendingTask(vServoL); sei(); USART_Transmit_string((unsigned char*)"*:SERVO_READY:#"); while(TRUE){ vDispathTask(); } }
INT main (void) { LED_1_ON LED_2_ON LED_3_ON USART_Init ( 9600 ); sei(); USART_Transmit_string((unsigned char*)"Probna transmisja\n"); // USART_Transmit(USART_Receive()); // USART_Transmit_string((unsigned char*)"TEST\n"); while(1); }
int main(void) { /* insert your hardware initialization here */ InitPeripherals(); #ifdef MASTER USART USART_CHANNEL; USART_CHANNEL.USART_BAUDRATE = 9600; USART_CHANNEL.USART_RECEIVER_STATUS = RECEIVER_ENABLE; USART_CHANNEL.USART_TRANSMITTER_STATUS = TRANSMITTER_ENABLE; USART_CHANNEL.USART_STOP_BIT = 1; USART_CHANNEL.USART_PARITY = PARITY_EVEN; USART_Init(USART_CHANNEL); clear(TCCR1B, CS12); clear(TCCR1B, CS11); set(TCCR1B, CS10); // prescalar is 1 set(TCCR1B, WGM13); set(TCCR1B, WGM12); set(TCCR1A, WGM11); clear(TCCR1A, WGM10); set(TCCR1A, COM1A1); set(TCCR1A, COM1A0); set(DDRB, 1); ICR1 = (int)(8000000/500000) - 1; OCR1A = (int)((float)ICR1 * 0.5); // common minus output 500KHz signals set(DDRD, 5); set(PORTD, 5); // COIL3 PLUS on // unsigned long frequency = 500000; // float duty_cycle = 0.5; // unsigned int pulse_number = 3; // init_coil(frequency, duty_cycle, pulse_number); // // COIL3_PLUS_ON; // // drive_coil_communication(); sei(); #endif #ifdef SLAVE // unsigned long frequency = 500000; // float duty_cycle = 0.5; // unsigned int pulse_number = 3; // init_coil(frequency, duty_cycle, pulse_number); // COIL1_MINUS_ON; set(DDRD, 4); set(PORTD, 4); // COIL2_MINUS on set(DDRD, 1); set(PORTD, 1); // USART TX is high set(DDRB, 3); set(PORTB, 3); // turn on receiver #endif m_green(ON);m_yellow(ON);m_blue(ON); m_wait(1000); m_green(OFF);m_yellow(OFF);m_blue(OFF); m_wait(2000); for(;;){ /* insert your main loop code here */ #ifdef MASTER set(PORTD, 5); USART_Transmit_string("MODLAB!\n\r"); clear(PORTD, 5); m_wait(1000); #endif #ifdef SLAVE m_blue(TOGGLE); #endif } return 0; /* never reached */ }
int main(void) { BL_OUTPUT; // DS_OUTPUT; BL_ON; GLCD_Initalize(); // Initalize LCD GLCD_ClearText(); // Clear text area GLCD_ClearCG(); // Clear character generator area GLCD_ClearGraphic(); // Clear graphic area GLCD_TextGoTo(0,0);// set text coordinates GLCD_WriteString("Hello"); // write text GLCD_Circle(32,32,20); // draw circle GLCD_Rectangle(8,8,24, 48); // draw rectangle // GLCD_FillRectangle(0, 0, 96, 8); USART_Init(MYUBRR); USART_Transmit_string("Hi\n"); LED_OUTPUT; BLINK3; GLCD_ClearText(); GLCD_TextGoTo(0,0);// set text coordinates ADCSRA = 0b10000111; data_flag=0; sei(); uint16_t T = 0; uint8_t i; while(1) { if (data_flag == 1) { //BLINK00; // Heh nasty error when it is here, if 'g' followed by newline comes, because it rewrites data here :D if (data == 't') { T = DS_get(6); GLCD_TextGoTo(0,0); i = (uint8_t)(T>>8); USART_Transmit_num(i); GLCD_WriteChar(i/10 + '0'); GLCD_WriteChar(i%10 + '0'); USART_Transmit('.'); GLCD_WriteChar('.'); i = (uint8_t)(T); USART_Transmit_num(i); GLCD_WriteChar(i/10 + '0'); GLCD_WriteChar(i%10 + '0'); USART_Transmit('C'); GLCD_WriteChar('C'); USART_Transmit('\n'); } if (data == 'g') { ADMUX = 0x00; sbi(ADCSRA, ADSC); while (qbi(ADCSRA, ADSC)) ; uint16_t val = ADC; GLCD_TextGoTo(0,0); } data_flag=0; } }