Пишу для включения лок-бита в IAR 4.20 a:

// flash part
AT91C_BASE_MC->MC_FMR = ((AT91C_MC_FMCN)&(50 <<16)) | AT91C_MC_FWS_1FWS;
while ((AT91C_BASE_MC->MC_FSR & AT91C_MC_FRDY) != AT91C_MC_FRDY );
if ((AT91C_BASE_MC->MC_FSR & AT91C_MC_SECURITY) != AT91C_MC_SECURITY){
AT91C_BASE_MC->MC_FCR = AT91C_MC_FCMD_SET_SECURITY ;
while ((AT91C_BASE_MC->MC_FSR & AT91C_MC_FRDY) != AT91C_MC_FRDY );
}

насколько я понял, после етого включается лок-бит. Как сказано в даташите, должен отрубиться JTAG и вообще все операции обмена с внешним миром.
.... как ни странно, после етого отладка происходит по прежнему корректно, и не отваливается.
Кроме того, меня терзает еще одно смутное сомненье. Насколько я понял из чтения конференции, для прошивки контроллера, пользуясь средсвами SAMBA необходимо несколькими шаманскими пассами загнать в бут загрузчик и работать с ним. При етом залив в контроллер данных идет через USB, или Serial Debug Port. Так вот, я никак не могу понять, почему через JTAG интерфейс можно отлаживаться, но нельзя втупую заливать хексы, или я просто не догнал еще как ето делается ?

Разрешите мои сомненья, плз.