PCONPEQU0xE01FC0C4 AD0CREQU0xE0034000 AD0DR5EQU0xE0034024 AD0STATEQU0xE0034030 PCLKSEL0EQU0xE01FC1A8; peripheral clock selection register '0' PINSEL3EQU0xE002C00C PINMODE3EQU0xE002C04C SCSEQU0xE01FC1A0; System Controls and Status Register FIO1DIREQU0x3FFFC020; direction of pins FIO1SETEQU0x3FFFC038; pin set FIO1CLREQU0x3FFFC03C; pin reset __main ; LED initialization LDRR1, =SCS; fast work mode LDRR2, [R1] ORRR2, R2, #0x1 STRR2, [R1] LDRR1, =FIO1DIR LDR R2, [R1] LDR R3, =0x07F80000; exit LED mode ORR R2, R2, R3 STR R2, [R1] ; ADC initalization LDRR1, =PCONP; ADC power/clock control bit MOVR2, #0x1000 STRR2, [R1] LDRR1, =AD0CR; Control register initialization MOVR2, #0x2B0000 ORRR2, R2, #0x0420 STRR2, [R1] LDRR1, =PCLKSEL0; clock peripheral selection MOVR2, #0x1000000 STRR2, [R1] LDRR1, =PINSEL3; selection of pin AD0.5 MOVR2, #0xC0000000 STRR2, [R1] LDRR1, =PINMODE3; pull up/down register control MOVR2, #0xC0000000 STRR2, [R1] ; LEDs AGAINBLTURNOFF LDR R3, =0x04000000; turn on LED 1 BLTURNON BLDELAY BLTURNOFF LDR R3, =0x02000000; turn on LED 2 BLTURNON BLDELAY BLTURNOFF LDR R3, =0x01000000; turn on LED 3 BLTURNON BLDELAY BLTURNOFF LDR R3, =0x00800000; turn on LED 4 BLTURNON BLDELAY BLTURNOFF LDR R3, =0x00400000; turn on LED 5 BLTURNON BLDELAY BAGAIN TURNOFFLDR R1, =FIO1CLR LDR R2, [R1] LDR R3, =0x07F80000; turn off LED ORR R2, R2, R3 STR R2, [R1] MOVPC, LR TURNONLDR R1, =FIO1SET LDR R2, [R1] ORR R2, R2, R3; turn on LED STR R2, [R1] MOVPC, LR DELAYMOV R4, #100 LDRR1, =AD0DR5; delay LDRR2, [R1] SUBR2, R2, #0xC0000000 ADDR2, R2, #1 MULR4, R2, R4 LOOPSUBSR4, #1 BPLLOOP MOV PC, LR END |