CC2530開發試題(四)
阿新 • • 發佈:2021-11-10
試題
程式碼部分
#include <ioCC2530.h> typedef unsigned int uint16; typedef unsigned char uint8; uint8 ledLightIndex; uint8 ledRegister[4] = {0x06, 0x05, 0x14,0xC}; uint8 running; uint16 checkKeyICycle = 2000; void Init_Port() { P1SEL &= ~0xFF; P1DIR |= 0xFF; P1DIR &= ~0x04; P1 = 0x04; } void DelayMs(uint16 ms) { for(uint16 i = 0; i < ms; i++) for(uint16 j = 0; j < 535; j++); } void main(void) { Init_Port(); while(1) { for(uint16 i = 0; i < checkKeyICycle; i++) { DelayMs(1); if(P1_2 == 0) { DelayMs(10); if(P1_2 == 0) { running = running == 1 ? 0 : 1; while(P1_2 == 0); } } } if (running == 1) { P1 = ledRegister[ledLightIndex]; if(ledLightIndex == 2) P1_7 = P1_7 == 1 ? 0 : 1; if(ledLightIndex == 3) ledLightIndex = 0; else ++ledLightIndex; } else P1 = 0x04; } }