Ich war ja sicher, dass ich das so gemacht hatte - aber was heißt das schon. Also alles nochmal - genau nach Kochbuch und mit dieser Quelle:.. 328PB .. schon mit dem Studio 7 geproggt. .. Man muss aber in der IDE den richtigen Controller bereits auswählen und dem auch sagen, das es sich um ein C executable Projekt handelt .. Auch die Library delay.h ist zu includieren .. Vorher muss aber die F_CPU defined werden ..
Und . . . es geht nicht. Fehlermeldungen:Code:/* * Cm328PB-04.c * * Created: 04.06.2019 17:43:36 * Author : bbt */ // ============================================================================= = // ============================================================================= = #define F_CPU 20000000 #include <avr/io.h> #include <avr/delay.h> // ============================================================================= = // ============================================================================= = // ### Programm pausieren lassen !! Der Pausenwert ist nur experimentell !! void wms(uint16_t ms) { for(; ms>0; ms--) { uint16_t __c = 2000; __asm__ volatile ( "1: sbiw %0,1" "\n\t" "brne 1b" : "=w" (__c) : "0" (__c) ); } } // // ============================================================================= = // ============================================================================= = // ============================================================================= = // ============================================================================= = int main(void) { /* Replace with your application code */ uint8_t i; // // - - - - - - - - - - - - - - - // Ports+Pins als Ein- (0) od Ausgänge (1) konfigurieren, Pull Ups (1) aktivieren // A = Ausgang, E = Eingang ohne , EU = Eingang MIT PullUp // DDRB = 0b01111111; // siehe aktuell oben PORTB = 0b10000000; // und Port/Pull Ups (1) aktivieren // = DDRC = 0b11111111; // PC0..7 PORTC = 0b00000000; // // DDRD = 0b00111111; // -> siehe Schaltplan PORTD = 0b11000011; // Pull Ups aktivieren, NICHT bei extINT0/~1 // // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - for(i=0; i<1000; i++) // LED(PD1) blinken lassen bevor Interrupts erlaubt sind, { // um ungewollte Resets u.ä. besser erkennen zu können PORTD |= (1<<PD1); // rtLED=PD1 ein wms(970); // ###>>> LED(s) schalten Aode -<|- Portpin <<<### PORTD &= ~(1<<PD1); // rtLED=PD1 aus wms(30); // } // Ende von for(i=0; i<1000; i++) PORTD = ~(1<<PD1); // rtLED/ auf JEDEN Fall aus // // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - while (1) { } } // Ende // ============================================================================= = // ============================================================================= =
Mal ein Versuch: im File *.cproj den Button [Cange Device...] klicken, nen mega328P auswählen, F7 drücken, flashen, fertig. Es blinkt - etwa 1x pro Sekunde. Wie beabsichtigt. Sieht aus wie erwartet - nur eben als mega328P :-/Code:Severity Code Description Project File Line Error for each function it appears in.) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 43 Error MCU 'atmega328pb' supported for assembler only Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 1 Error 'DDRB' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 43 Error (Each undeclared identifier is reported only once Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 43 Error 'PORTB' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 44 Error 'DDRC' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 46 Error 'PORTC' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 47 Error 'DDRD' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 49 Error 'PORTD' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 50 Error 'PD1' undeclared (first use in this function) Cm328PB-04 D:\D_pro-fils\compu_MC\C7\Cm328PB-04\Cm328PB-04\main.c 55
Vermutlich findet der Compiler keinen passenden File zum mega328PB - und ich (ich Blödel) habe das Installationsprogramm von meinem (alten) Atmel Studio 7 (Version: 7.0.1417) gelöscht . . . Leider - weil ich einfach den Neuigkeiten/den Jungs von microchip ziemlich misstrauisch gegenüberstehe. Aber ob das wirklich ein Fehler im System ist oder meine falsche Bedienung wage ich nun überhaupt nicht zu behaupten.







Zitieren

Lesezeichen