Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- AREA MAIN_CODE, CODE, READONLY
- GET LPC213x.s
- ENTRY
- __main
- __use_two_region_memory
- EXPORT __main
- EXPORT __use_two_region_memory
- Digit_0 RN R8
- Digit_1 RN R9
- Digit_2 RN R10
- Digit_3 RN R11
- Curr_Dig RN R12
- ldr r4, =IODIR0
- ldr r5, =0xF0000
- str r5, [r4]
- ldr r4, =IODIR1
- ldr r5, =0xFF0000
- str r5, [r4]
- ldr Digit_0,=0
- ldr Digit_1,=0
- ldr Digit_2,=0
- ldr Digit_3,=0
- ldr Curr_Dig,=0
- main_loop
- ldr r4, =IOCLR0
- ldr r5, =0xF0000
- str r5, [r4]
- ldr r4, =IOSET0
- ldr r5, =0x80000
- lsr r5,Curr_Dig
- str r5, [r4]
- cmp Curr_Dig,#0
- moveq r6,Digit_0
- cmp Curr_Dig,#1
- moveq r6,Digit_1
- cmp Curr_Dig,#2
- moveq r6,Digit_2
- cmp Curr_Dig,#3
- moveq r6,Digit_3
- adr r4,TABLE
- ldrb r6,[r4,r6]
- lsl r6,#16
- ldr r4, =IOCLR1
- ldr r5, =0xFF0000
- str r5, [r4]
- ldr r4, =IOSET1
- str r6, [r4]
- add Digit_0,#1
- cmp Digit_0,#10
- eoreq Digit_0,Digit_0
- addeq Digit_1,#1
- cmp Digit_1,#10
- eoreq Digit_1,Digit_1
- addeq Digit_2,#1
- cmp Digit_2,#10
- eoreq Digit_2,Digit_2
- addeq Digit_3,#1
- cmp Digit_3,#10
- eoreq Digit_3,Digit_3
- add Curr_Dig,#1
- cmp Curr_Dig,#4
- eoreq Curr_Dig,Curr_Dig
- ldr r0,=5
- bl Delay
- b main_loop
- Delay
- ldr r4,=15000
- mul r0,r4,r0
- Loop
- subs r0,#1
- bne Loop
- bx lr
- TABLE
- DCB 0x3f,0x06,0x5B,0x4F,0x66,0x6d,0x7D,0x07,0x7f,0x6f
- END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement