Цитата(novikovfb @ Dec 27 2017, 15:48)
фильтр 0x100, маска 0x700. Маска указывает, какие биты проверять, фильтр - чему они должны быть равны.
то есть все что в фильтре нули то пропускается и то что в маске единицы то тоже пропускается?
а для стандартного ИД мне достаточно лоу? хай не трогать?
Код
//CAN_FilterInitStructure.CAN_FilterIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterIdLow = 0x0100;
//CAN_FilterInitStructure.CAN_FilterMaskIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterMaskIdLow = 0x0700;
а. я понял.
MASK = 0 and ID =0 - бит проходит
MASK = 1 and ID =0 - бит блокируется
получается должно быть так
Код
//CAN_FilterInitStructure.CAN_FilterIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterIdLow = 0x01FF;
//CAN_FilterInitStructure.CAN_FilterMaskIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterMaskIdLow = 0xFE00;
нет. вот так.
Код
//CAN_FilterInitStructure.CAN_FilterIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterIdLow = 0x0100;
//CAN_FilterInitStructure.CAN_FilterMaskIdHigh = 0x0000;
CAN_FilterInitStructure.CAN_FilterMaskIdLow = 0xFEFF;
Сообщение отредактировал Jenya7 - Dec 27 2017, 11:40