Added a delay function that would be able to be adjusted more easily; also used the _NOP() function instead of asm() since it is more easily found in the header files

This commit is contained in:
William Miceli
2021-06-08 19:04:40 -04:00
parent e7159baebc
commit c8e86c2917

View File

@@ -20,16 +20,24 @@
void clock_init(void); void clock_init(void);
static inline void delay(void) static inline void delay(void){
{
volatile int jj; volatile int jj;
volatile int ii; volatile int ii;
// Using count-down since it uses one less instruction to compare (not really necessary here, but CCS recommends it anyway): Ultra-Low Power Advisor > Rule 13.1 (https://software-dl.ti.com/ccs/esd/documents/dmed/HTML/MSP430/1544.html) // Using count-down since it uses one less instruction to compare (not really necessary here, but CCS recommends it anyway): Ultra-Low Power Advisor > Rule 13.1 (https://software-dl.ti.com/ccs/esd/documents/dmed/HTML/MSP430/1544.html)
for (ii = 4; ii > 0; ii--) for (ii = 4; ii > 0; ii--){
{ for (jj = 1000; jj > 0; jj--){
for (jj = 1000; jj > 0; jj--) _NOP();
{ }
asm(" nop"); //The space is necessary or else the assembler thinks "nop" is a label! }
}
static inline void delayMultiplied(int multiplier){
volatile int jj;
volatile int ii;
// Using count-down since it uses one less instruction to compare (not really necessary here, but CCS recommends it anyway): Ultra-Low Power Advisor > Rule 13.1 (https://software-dl.ti.com/ccs/esd/documents/dmed/HTML/MSP430/1544.html)
for (ii = 4 * multiplier; ii > 0; ii--){
for (jj = 1000; jj > 0; jj--){
_NOP();
} }
} }
} }