cortex-m3

    0热度

    3回答

    我的问题特定于手臂皮质M3微控制器。微控制器上的每个外设都是内存映射的,这些内存地址用于处理。 例如:GPIOA-> ODR = 0; 这将在地址0x4001080C处写入0。 该地址在微控制器的特定设备文件中定义。 现在,皮质M3有处理器内核寄存器R0-R12(通用)。我想知道,这些寄存器是否也有像其他外设一样的地址? 所以,如果我有指令:MOV R0,#10; 将R0翻译成某个地址时组装?核心

    1热度

    2回答

    我正在为stm32l152C-discovery板执行arm cortex-m3的C代码,但是我发现main函数调用没有被推入堆栈。我已经分析了这个源的asm代码,但是我发现它是可以的。为了更好的理解,请看这里的C代码生成的汇编代码: main.elf: file format elf32-littlearm *SYMBOL TABLE: 00000010 l d .text 000000

    1热度

    1回答

    Cortex M3处理器有两个堆栈指针:PSP,MSP。 在一些复杂的应用程序中,用户程序使用PSP指向用户程序堆栈。异常处理程序使用指向主堆栈的MSP。 问题是: 用户程序运行时发生中断。在进入中断处理程序之前,R0-R3,R12,LR,PC和xPSR寄存器将被压入堆栈。但是,哪个堆栈用于存储这些寄存器?

    0热度

    1回答

    我正在使用包含Cortex-M3的恩智浦LPC1769。到目前为止,我只能从JTAG接口访问它,但现在我必须以相反的方式进行操作。 IT例程应该读取内存的某些部分,并立即将它们发送到JTAG端口。有没有办法做到这一点? *更新:经过数小时的研究,我发现了一些可能有所帮助的东西:Cortex-M3支持ITM(仪表跟踪宏单元),它可以通过JTAG端口的TDO引脚发送数据。我现在的问题是,怎么会这样做呢

    0热度

    1回答

    我目前正在制作一个使用串行通信将文件保存到ST32 Contact ARM Cortex-M3 Secure Microcontroller (ST32F384)的Visual Basic.NET应用程序,我对数据的方式有些困惑上传到微控制器。我已经完成了有关向设备发送串行数据和从设备发送串行数据的研究,但却无法找到关于如何实际将文件保存到闪存扇区的任何信息。任何帮助是极大的赞赏。谢谢!

    2热度

    2回答

    我一直坚持一段时间如何设置一个回调时发生异常。 我有这样的测试代码: void main() { long * bad = (long*)0x0A000000; //Invalid address //When the following line gets executed //it causes an error and the debugger sends

    0热度

    1回答

    在此之前,我尝试IDE Keil和她的工作,但作为IDE它是可怕的。 因此,我试图使用CLion 2016.3为Ubuntu 16.04上的STM32L100RCx目标构建嵌入式C++项目。但我不能解开如何正确设置。阅读Jetbrain的博客并不能帮助我。编译后有一些错误,它无法从* .ld文件中找到某个调用。 cmake的标志: SET(CMAKE_C_FLAGS "-mcpu=cortex-m

    0热度

    2回答

    现在我试图了解STM32F103x的启动顺序。你已经知道这是基于cortex-m3的。 所以我试图找到这种引导的概念,如STM32F103x .. 但我找不到文档中的任何地方 我在哪里可以找到引导序列为STM32 ARM memory map? 因为我想知道系统内存实际上工作的是什么? 当前。我试图了解皮层m3地址映射中的系统内存。大多数例子说,“有2个区域,如0x08000000闪存区和0x1F

    1热度

    2回答

    我正试图编写一个函数,它将重置我的Cortex M3平台上的GPIO0。我正在使用Keil编译器。 目标是将“1”写入地址0x40041014。我写了一个代码: static void resetGPIO0() { __asm { MOV R0, #0x01 MOV R1, #0x1000 MOVT R1, #0x4004 STR R0

    0热度

    1回答

    我在cortex-m3的“HELLO”示例中遇到了Keil的uVision中的警告消息。 警告:函数 'ITM_SenderChar' 隐式声明是无效的C99 当我实现ITM_SendChar( '\ r'); 我应该怎么做才能解决这个问题? 下面 被代码段 int fputc(int c, FILE *f) { if (c == '\n') { ITM_SendChar('\