Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 5199

General • Re: Bare-metal Bit Banging GPIO (AQA Assembly style)

$
0
0
This is my first attempt:

Code:

  .syntax unified  .cpu cortex-m0plus  .thumb  .alignrelease: ldr r0, =0x4000f000 movs r1, #32 str r1, [r0]sio: ldr r0, =0x400140C8 movs r1, #8 str r1, [r0]turnOn25: ldr r0, =0xd0000014 movs r1, #33554432 str r1,[r0]
release:
store 00100000 in 0x400140C8 to release the reset on IO_BANK0

sio: (simple io)
store 00001000 in 0x400140C8 (set gpio 25 as simple io)

turnOn25:
Store 0000000010000000000000000000000000 in 0xd0000014 (turn on pin 25 in SIO)

and lo ....

Code:

srichards@trinitycs2:~$ arm-none-eabi-as blink.s -o blink.oblink.s: Assembler messages:blink.s:20: Error: invalid immediate: 33554432 is out of rangeblink.s:20: Error: value of 02000000 too large for field of 2 bytes at 0000000e

Statistics: Posted by morphy_richards — Tue Jul 02, 2024 2:59 pm



Viewing all articles
Browse latest Browse all 5199

Trending Articles