混合C&部件

时间:2016-05-05 11:42:30

标签: c assembly

我使用的是软核Cortex-M0,keil uvision 5,vivado 14.4 我用我的手臂架构连接了一个加法器 首先,我使用汇编语言和vivado模拟器中的模拟工作正常。

我的第一个汇编代码--->

@Path("api/v1/cars")
public class CarsService {
    @GET
    @Path("/api/v1/users/{userId}/cars")
    public Response getUserCars(@PathParam("userId") Long userId) {
        // ...
    }

    @GET
    public Response getCars() {
        // ...
    }

}

现在,我想使用C和汇编语言,但模拟不起作用,它无法访问加法器寄存器

第二个集会 - >

Reset_Handler PROC
GLOBAL Reset_Handler
ENTRY
LDR R1,=0x59000000
LDR R0,=0x33
STR R0,[R1]`

C代码 - >

Reset_Handler PROC
GLOBAL Reset_Handler
ENTRY
IMPORT __main
LDR R0, =__main 
BX R0
ENDP

1 个答案:

答案 0 :(得分:1)

我的汇编代码

; Vector Table Mapped to Address 0 at Reset

                    PRESERVE8
                    THUMB

                    AREA    RESET, DATA, READONLY               
                    EXPORT  __Vectors

__Vectors DCD 0x0000FFFC DCD Reset_Handler DCD 0
DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0 DCD 0

                    ; External Interrupts

                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0
                    DCD     0

            AREA |.text|, CODE, READONLY

;Reset Handler Reset_Handler PROC GLOBAL Reset_Handler ENTRY
IMPORT __main LDR R0, =__main
BX R0

            ENDP
            ALIGN       4                    
            END