Hi,
Quartz am 90S2313 ist 4MHz. Angesteurt wird der von einem ATmega32 in C. Baudrate ist 9600.
Code:#include <avr/io.h> #include <stdio.h> #include <string.h> #include <avr/signal.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <avr/delay.h> #include "lcd.h" #include "main.h" #include "pwm.h" #include "texte.h" #include "timer.h" void print5(unsigned int x) { unsigned int y; y=x/10000;lcd_putc(y+0x30);x-=(y*10000); y=x/1000;lcd_putc(y+0x30);x-=(y*1000); y=x/100;lcd_putc(y+0x30);x-=(y*100); y=x/10;lcd_putc(y+0x30);x-=(y*10); lcd_putc(x+0x30); } void USART_transmit (unsigned char c) { while(!(UCSRA & (1<<UDRE))); UDR = c; } int main(void) { UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x67; unsigned int temp; sei(); for(;;) { USART_transmit(0x23); USART_transmit(0x53); USART_transmit(0x31); USART_transmit(1); _delay_ms(2000); USART_transmit(0x23); USART_transmit(0x53); USART_transmit(0x31); USART_transmit(255); _delay_ms(2000); } }







Zitieren

Lesezeichen