From d3e577db0bb3b3343ac58dad1c3e9ab06f051d0b Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Mon, 14 Dec 2015 20:41:48 +0100 Subject: o Adding debug output test. --- test1.cpp | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'test1.cpp') diff --git a/test1.cpp b/test1.cpp index 85dee38..cd9f801 100644 --- a/test1.cpp +++ b/test1.cpp @@ -47,14 +47,23 @@ void HardFault_Handler_C(uint32_t * hardfault_args) { } while (1); } -/* - * Each of the general-purpose I/O ports has two 32-bit configuration registers (GPIOx_CRL, - * GPIOx_CRH), two 32-bit data registers (GPIOx_IDR, GPIOx_ODR), a 32-bit set/reset - * register (GPIOx_BSRR), a 16-bit reset register (GPIOx_BRR) and a 32-bit locking register - * (GPIOx_LCKR). - */ +__attribute__((naked)) +void send_command(int command, void* message) { + __asm volatile ( + "mov r0, %[cmd] \n\t" + "mov r1, %[msg] \n\t" + "bkpt #0xAB" : : [cmd] "r" (command), [msg] "r" (message) : "r0", "r1", "memory" + ); +} int main() { + uint32_t message[] = { + 2, + (uint32_t)"Hello World!\r\n", + 14 + }; + send_command(0x05, &message); + SystemInit(); SCB->SHCSR |= SCB_SHCSR_USGFAULTENA_Msk | SCB_SHCSR_MEMFAULTPENDED_Msk | SCB_SHCSR_BUSFAULTENA_Msk; -- cgit v1.2.3