ICode9

精准搜索请尝试: 精确搜索
  • ARM base instruction -- 协处理器2022-02-25 09:34:42

    /*  * 协处理器  */     cdp p3, 2, c12, c10, c3, 4    // 完成协处理器 p3 的初始化.     ldc p3, c4, [r0]            // r0 所指向的存储器中的字数据传送到协处理 p3 的 C4 中.     stc p3, c4, [r0]            // p3 的 c4 中的字数据

  • Docker镜像上传2022-02-21 20:02:01

    目录 一、基于Alpine制作JDK镜像 1、上传jre安装包 2、增加glibc安装包 3、修改Dockerfile 4、下载镜像  二、配置阿里云 1、登录阿里云账号 3、在实例列表中创建个人实例 ​  4、新建一个命名空间  5、创建镜像仓库 (1)、填写仓库信息 (2)、设置代码源  三、阿里云上传、下载

  • 【ARM学习笔记一】链接器2022-02-07 12:29:59

    链接器的作用 c文件和汇编文件会被编译为.o 文件,链接器把所有.o文件链接为二进制可执行文件。 有三种可执行文件:一种是.elf,一种是.bin,.hex是一种特殊的可执行文件 链接器的工作步骤: 1.符号解析(Symbol Resolution) 2.重定向(Relocating) 1.符号解析 ## main.s arr: .byte 1

  • U-Boot relocate_code功能2022-02-06 23:35:26

     所谓的relocation,就是重定位,uboot运行后会将自身代码拷贝到sdram的另一个位置继续运行。新版uboot跟老版uboot不太一样的地方在于新版uboot不管uboot的load addr(entry pointer)在哪里,启动后会计算出一个靠近sdram顶端的地址,将自身代码拷贝到该地址,继续运行。 uboot的编译选项发现

  • U-Boot _main函数2022-02-04 19:02:20

    _main函数主要完成的工作: 先设置用于调用board_init_f()函数的初始环境,该环境仅仅是提供了堆栈和存储位置GD('global data')结构,两者都是位于可以使用的RAM(SRAM,locked cache...)中,在调用board_init_f()函数前,GD应该被清0; 调用board_init_f()函数,该函数的功能为从system RAM(DRA

  • freertos临界段保护2022-01-29 15:02:45

    freertos临界段保护 中断的基础知识cortex-m里面开中断、关中断指令关中断和开中断进入临界段和退出临界段 中断的基础知识 嵌套: 嵌套向量中断控制器 NVIC(Nested Vectored Interrupt Controller与内核是紧耦合的。提供如下的功能:可嵌套中断支持、向量中断支持、动态优

  • [kernel 启动流程] (第五章)第一阶段之——临时内核页表的创建【转】2022-01-26 01:31:38

    转自:https://blog.csdn.net/ooonebook/article/details/52850433 本文是基于arm平台。例子都是以tiny210(s5pv210 armv7)为基础的。 [kernel 启动流程]系列: [kernel 启动流程] 前篇——vmlinux.lds分析[kernel 启动流程] (第一章)概述[kernel 启动流程] (第二章)第一阶段之——设置SVC、

  • 【FreeRTOS】prvStartFirstTask2022-01-19 15:32:37

      1 __asm void prvStartFirstTask( void ) 2 { 3 /* *INDENT-OFF* */ 4 PRESERVE8 5 6 /* Use the NVIC offset register to locate the stack. */ 7 ldr r0, =0xE000ED08 // 将 0xE000ED08 加载到 R0 8 ldr r0, [ r0 ] // 将 0xE000ED08 地址中

  • Cannot execute binary file 之原因2022-01-17 20:34:04

    文章目录 1. 写在最前面2. 排查方向2.1 非 root 用户2.2 编译目标与执行环境不同2.3 程序需要的动态库或静态库缺失2.3.1 解决办法 4. 等等4.1 真·解决办法4.1.1 使用 CGO_ENABLED=04.1.2 更换依赖的基础镜像 5. 碎碎念6. 参考资料 1. 写在最前面 问题:笔者用 kaniko

  • pwnable.kr wp leg2022-01-17 17:35:12

    题目 Daddy told me I should study arm. But I prefer to study my leg! Download : http://pwnable.kr/bin/leg.c Download : http://pwnable.kr/bin/leg.asm ssh leg@pwnable.kr -p2222 (pw:guest) 题解 #include <stdio.h> #include <fcntl.h> int key1(){ as

  • uboot源码学习(9)DDR初始化程序分析2022-01-14 23:30:35

    本文分析S5PV210板的DDR初始化程序。 一、IO部分配置。从下图管脚定义表来看,Xm1管脚只有单个功能Func0,所以不用配置管脚复用功能。 memory.S文件,20行-40行 mem_init: //1、设置DMC0 Drive Strength (Setting 2X) ldr r0,=ELFIN_GPIO_BASE ldr r1,0x0000AAAA str r1,[r0,

  • 计算机组成原理——TEC-2运算器实验2022-01-14 18:34:03

    《计算机组成原理》 实验名称: TEC-2实验计算机运算器实验 实验地点:10-413 一.实验目的 1.     了解和掌握Am2901运算器的组成结构和工作原理; 2.     认识和掌握TEC-2机运算器的组成和工作原理; 3.    认识和掌握TEC-2机运算器相关控制信号的含义和使用方法; 二.实验

  • 9. 代码生成2022-01-13 10:58:50

    9. 代码生成 代码生成的核心问题; 指令选择寄存器分配指令调度 指令选择 为每条中间语言语句选择恰当的目标机指令或指令序列 首先原则是保证语义的一致性 直接为中间语言语句找到语义一致的指令序列模板: a=b+c MOV b, R0 // 将b装入R0 ADD R0, c // 将c加到R0 MOV R0, a //

  • STM32F103寄存器方式点亮LED流水灯2022-01-12 18:05:05

    STM32F103寄存器方式点亮LED流水灯 寄存器介绍GPIO地址初始化设置低电平 创建项目配置GPIO,RCC时钟详细代码led.cled.hdelay.cdelay.hmain.c 烧录运行汇编实现 寄存器介绍 GPIO地址 时钟地址 则打开三个IO口的时钟需要将三个位都置1: #define RCC_APB2ENR (*(unsigned

  • A\D接口技术2022-01-09 13:02:59

    文章目录 前言 一、ADC0809的应用 总结 前言 以ADC0809为例,它是逐次逼近型,内部有8路模拟开关,可以实现8路模拟电压的的分时转换。使用的是汇编语言。 一、ADC0809的应用 1)确定通道的地址 2)启动AD:MOVX @DPTR,A 3)转换是否结束?延时或者查询EOC或者中断方式 4)读取装换结果:MOVX

  • python3-pyqtchart-5.13.1-r0 do_fetch: Failed to fetch URL2022-01-09 11:32:52

    WARNING: python3-pyqtchart-5.13.1-r0 do_fetch: Failed to fetch URL https://www.riverbankcomputing.com/static/Downloads/PyQtChart/5.13.1/PyQtChart-5.13.1.tar.gz, attempting MIRRORS if available ERROR: python3-pyqtchart-5.13.1-r0 do_fetch: Fetcher failure:

  • 前期准备——2.基本汇编语法2022-01-06 22:35:19

      在做裸机开发前,我们要掌握一些基础的ARM汇编语法,因为即使后面我们用C去写驱动,也要用汇编去执行配置指针、中断、清除session等操作。我们使用的芯片是I.MX6UL,这是款Cortex-A7的内核芯片,所以使用的就是Cortex-A的汇编指令,这里有两份资料可以参考点击下载(提取码:l1rg)。还好我们

  • s5pv210 汇编开栈 C语言流水灯2022-01-05 20:37:34

    makefile final.bin: start.o led.o arm-linux-ld -Ttext 0x0 -o start.elf $^ arm-linux-objcopy -O binary start.elf final.bin %.o : %.S arm-linux-gcc -o $@ $< -c -nostdlib    //不连接系统标准启动文件和标准库文件,只把指定的文件传递给连接器 %.

  • ARMv8 汇编指令集查询2021-12-29 09:02:01

    转载地址:https://blog.csdn.net/qq_40531974/article/details/83897559 一.汇编数据处理指令 1.数据传送指令 【MOV指令】:它的传送指令只能是把一个寄存器的值(要能用立即数表示)赋给另一个寄存器,或者将一个常量赋给寄存器,将后边的量赋给前边的量。 MOV指令的格式为:MOV{条件}{S}

  • 一.LED灯的点亮——从简单的汇编开始了解2021-12-25 13:03:19

    首先,我们一步步从汇编开始点亮板子上的LED灯! 为什么要先从汇编开始呢?一般来说我们只用C写程序就行了,但是系统上电以后要对SOC的外设、DDR进行初始化(我们用的是I.MX6U,不需要这一步),设置堆栈指针(一般指向DDR),设置好C语言的环境关闭看门狗等流程,但这些功能用C是无法实现的,必须通过

  • arm 函数调用2021-12-23 15:05:28

    基本概念:ATPCS(ARM-Thumb Procedure Call Standard) 规定了一些子程序间调用的基本规则,这些规则包括子程序调用过程中寄存器的使用规则,数据栈的使用规则,参数的传递规则。有了这些规则之后,单独编译的C语言程序就可以和汇编程序互相调用。 使用ADS的C语言编译器编译的C

  • STM32 RTTHREAD线程编写知识2021-12-18 14:34:01

    STM32 RTTHREAD线程编写知识 知识储备: CORTEX-M3/M4寄存器组 1.R0-R12 寄存器R0〜R12为通用目的寄存器,前8个(R0-R7)也被称作低寄存器。由于指令中 可用的空间有限, 许多16位指令只能访问低寄存器。高寄存器(R8-R12)则可以用于32位 指令和几个16位指令,如 MOV(move)。R0-R12的初

  • 联德胜微W806移植RTthread-Nano2021-12-11 11:03:53

    联德胜微W806移植RTthread-Nano 移植前知识点 1、W806芯片基于平头哥E804 CPU内核,该芯片数据手册下载链接: datasheet/玄铁E804用户手册_v04.pdf · ZH-OuYangLei/W806-RTT-Nano - 码云 - 开源中国 (gitee.com) 2、E804处理器存在两种运行模式: 普通用户模式和超级用户模式,芯片在

  • 机组 指令周期2021-12-04 15:31:42

    肥学有话说 小伙伴们大家好呀!

  • ARM汇编基础指令2021-12-03 22:04:48

    Cortex-A7 常用汇编指令 一、处理器内部数据传输指令 1.mov 将数据从一个寄存器拷贝到另外一个寄存器,或者将一个立即数传递到寄存器里面 MOV R0,R1 @将寄存器 R1 中的数据传递给 R0,即 R0=R1 MOV R0, #0X12 @将立即数 0X12 传递给 R0 寄存器,即 R0=0X12 2.MRS 将特殊寄存器(如 CPSR

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有