Gast
#1390516
Hallo,
vieleicht kann mir einer helfen bei meinem Problem??
Versuche die crc16 einzusetzen, aber es kommt die Fehlermeldung
"warning: implicit declaration of function"
hier mein Code:
#include <avr\io.h>
#include <avr\interrupt.h>
#include <avr\pgmspace.h>
#include <avr\wdt.h>
#include <util/crc16.h>
//Makro-Definitionen
#define SETBIT(ADRESS,BIT) (ADRESS|=(1<<BIT))
#define CLEARBIT(ADRESS,BIT) (ADRESS&=~(1<<BIT))
#define CHECKBIT(ADRESS,BIT) (ADRESS&(1<<BIT))
unsigned int crc_flash;
uint16_t p_flash;
//Ausgänge definieren auf Port B
#define Ausgang PORTB
#define out1 PB0
#define Eingang PORTD
#define test PD0
void Port_Init(void)
{
PORTB = 0x00 ;
DDRB = 0x01 ;
PORTD = 0x41;
DDRD = 0x00;
}
void Flash_test(void)
{
unsigned char temp;
for(p_flash = 0; p_flash < FLASHEND; p_flash++);
{
temp = pgm_read_byte(&p_flash);
crc_flash = crc_update(crc_flash, temp); //Überprüfung
des Flashspeichers
wdt_reset();
if(crc_flash == 1234)
{
CLEARBIT(PORTB, out1);
}
}
}
int main()
{
while(1)
{
if(!(CHECKBIT(Eingang, test))) //Test aktiv ? (bei aktiv low)
{
SETBIT(PORTB, out1);
//hier erfolgt der Speichertest
Flash_test();
}
else
{
CLEARBIT(PORTB, out1);
}
}
return 0;
}