Hallo,
ich habe ein leichtes Problem mit meiner Umsetzung von Mr. Data, die
AD-Wandler funktionieren klasse nur die GPS-Komunikation will ned
hinhauen, nur Datensalat. Ich vermute dass da was mit der Baudrate nicht
hinhaut, und für die brauch ich die Frequenz des ATmega's.
Habe daher mal folgendes Programm geschieben:
1 | #define PORT_LED PORTB
|
2 | #define PIN_LED 2 //PORTB
|
3 |
|
4 | int main(void) {
|
5 | int j=0;
|
6 | while(1){
|
7 | for(j=0;j<=49;j++){
|
8 | PORT_LED &= ~PIN_LED;
|
9 | //PORT_LED |= PIN_LED;
|
10 | }
|
11 | for(j=0;j<=49;j++){
|
12 | //PORT_LED &= ~PIN_LED;
|
13 | PORT_LED |= PIN_LED;
|
14 | }
|
15 | }
|
16 | return 0;
|
17 | }
|
Am Oszi messe ich jetzt 1,2279KHz. Mir ist klar dass ich die
Programmlaufzeit grad ignoriere, aber die sollte ja nur wenige Prozent
(wenn überhaupt) ausmachen.
Zu den Fusebits:
SUT_CKSEL steht auf Int. RC Osc. 8 MHz 6CK/14CK + 65ms
Ich Programmier mit dem AVRStudio in C. Erfahrung mit C hab ich, leider
jedoch nur sehr sehr wenig in Verbindung mit Atmegas.
Zur Hardware: ATmega88 in TQFP Bauform. Am XTAL1 ist nichts angelötet,
an PB1 messe ich. Versorgt wird der AtMega mit 3,3V.
Könnt Ihr mir sagen wie ich meinen ATmega wieder auf 1MHZ oder 8MHZ
bekomme? Oder eignet sich mein Programm einfach nur nicht um die
Frequenz zu messen?
Grüße!
KobiP