IBAH (27.10.2017 21:01, просмотров: 480) ответил AlexG на Использую иногда встроенный в IAR С-STAT, он становится доступен если пользоваться кейгеном, а не кряком. Ну или купить :) Иногда выдает дельные предупреждения о говонокоде, иногда прикапывается к моментам, которые специально так сделаны и не
Попробовал... туповат! или я или анализатор, например упрощенно
if(((AdresWord+KolvoWord)>90) || KolvoWord>16)
{
return 0;
}
for(int i=0;i<KolvoWord;i++)
{
Paket[3+(i<<1)]=(unsigned char)(OutReg[AdresWord+i]>>8);
Paket[4+(i<<1)]=(unsigned char)(OutReg[AdresWord+i]);
}
Ругается "Array `OutReg' 1st subscript interval [0,105] may be out of bounds [0,89]"
то есть он одновременно считает KolvoWord равным 0 и 15.
зато внезапно, привет из солнечной Индии, Value assigned to variable `tmp1' is never used
uint32_t tmp1 = 0U, tmp2 = 0U, tmp3 = 0U;
/* Check the parameters */
assert_param(IS_OB_RDP(OB_RDP));
tmp1 = (uint32_t)(OB->RDP & FLASH_OPTR_RDPROT);
#if defined(FLASH_OPTR_WPRMOD)
/* Mask WPRMOD bit */
tmp3 = (uint32_t)(OB->RDP & FLASH_OPTR_WPRMOD);
#endif
/* calculate the option byte to write */
tmp1 = (~((uint32_t)(OB_RDP | tmp3)));
tmp2 = (uint32_t)(((uint32_t)((uint32_t)(tmp1) << 16U)) | ((uint32_t)(OB_RDP | tmp3)));