Una hoja de aplicación sugirió que al deshabilitar el fusible de interfaz JTAG (JTAGEN), el consumo de corriente de la MCU disminuirá un poco. ¿Se puede hacer esto desde el propio código?
Una hoja de aplicación sugirió que al deshabilitar el fusible de interfaz JTAG (JTAGEN), el consumo de corriente de la MCU disminuirá un poco. ¿Se puede hacer esto desde el propio código?
Puede desactivar JTAG con el bit JTAGD en MCUCR. No estoy seguro de si esto tendrá el mismo efecto de ahorro de energía o no.
No lo creo. El punto de fusión de los bits es un ajuste permanente que generalmente se realiza en una fábrica. Sin embargo, no he investigado esto.
No puede cambiar el fusible JTAG (o cualquier fusible en un AVR) en el software.
Sin embargo, puede desactivar la interfaz JTAG en tiempo de ejecución configurando el bit JTAGD
en el registro MCUCR
.
Aquí hay un código para hacer eso ...
// Disable JTAG interface as per 4.18.6
void inline disableJTAG() {
CCP = CCP_IOREG_gc; // Enable change to IOREG
MCU.MCUCR = MCU_JTAGD_bm; // Setting this bit will disable the JTAG interface
}
Tenga en cuenta que probé este código en un ATXMEGA64B3 y deshabilitar el JTAG de esta manera no parece tener un impacto medible en el uso de energía. Medí 0.8uA @ 3V para dormir con el bit establecido y no configurado. La resolución de mi medidor es 0.1uA (100nA).
También intenté deshabilitar el JTAG borrando el bit de fusible JTAGEN
usando un programador externo y esto tampoco tuvo un impacto medible en el uso de la energía del sueño.