最近准备面试,把本科到现在的一些比赛相关的东西整理一下。那些年在飞思卡尔在K60单片机上的UCOSII移植(哎,心酸...) 一、首先看下UCOSII的文件结构:一些核心的文件解释: 【1、头文件】: includes.h:每个.c文件需要包含的头文件,注释掉不需要的头文件,可以配合裁剪 os_cfg.h:对系统的配置和裁剪;(选择宏定义关闭某些功能(设置时间频率1000hz,配合滴答定时器的load值可以确定ucos的时基,用来确定调度的频率),如下图比如说关闭hooks和debug); os_cpu.h:为了适应数据类
本系列笔记为基于FPGA平台实现ARMCortex-M0SOC集创赛作品复盘Platform:ARMCortex-M0DesignSrartAT510XLINXFPGAARMMDK5CM0-Designstart是ARM公司放出的一个免费的ARM内核学习版本,它比M3还要简单,并且官方把整块代码模糊化,我们只能看到对外的操作接口,因此上手起来很快。对比一些RISCV的开源处理器,这个封装其实是让学习更简单了,可以更加专注于AHB/APB和嵌入式的学习。一、Cortex®-M0DesignStart源码介绍本人使用的版本号是:AT510-MN-80001-r2p0-00rel0,最新版本的代码在
每篇前言☀️作者简介:大家好我是汤姆凯特,大家可以叫我汤姆🐋个人主页:IM汤姆凯特的CSDN博客🎁系列专栏:【ARM嵌入式基础】🌱每日一句:不要试图鹤立鸡群,离开那群鸡。文章目录求三个数的阶乘并求和一、用子程序求阶乘1.确定子程序的输入值2.循环累乘求解3.确定返回主程序的返回值二、3个数分别调用子程序1.从内存取到值作为子程序输入2.将3个数暂存到r1~r33.将返回值存到指定寄存器三、三个数求和1.两两求和2.压栈输出,出栈结束完整代码运行结果求三个数的阶乘并求和求解这个问题的目的是:练习汇编中子程序的建立和调用。想求三个数的阶乘并求和,一共分为两个步骤,先对三个阶乘分别求阶乘,然后将三个
实验要求 掌握Linux内核的编译与安装掌握Linux系统调用基本概念设计和添加linux系统调用 (1)修改或返回指定进程的优先级(nice值和prio值)(详见教材P328)提示:可能参考的内核函数:set_user_nice(). (2)改变主机名称为自定义字符串(自选题目) 1、Linux内核的编译与安装 (使用华为云,完成openEuler内核的编译与安装)(1)登录系统并查看当前内核版本[root@openEuler~]#uname-r (2)安装工具,构建开发环境[root@openEuler~]#yumgroupinstall-y"Developm
一、目的Linux驱动开发中有一个特别重要的知识点必须掌握,即并发访问、竞态以及同步。什么是并发?多个执行单元(进程、线程、中断)同时对一个共享资源进行访问;此处的共享资源可以是外设、内存或者软件层面的全局变量静态变量等;只要并发的多个执行单元存在对共享资源的访问,竞态就有可能发生。什么是竞态?多个执行单元访问(修改)共享单元势必会造成逻辑上的不一致,导致程序异常或者崩溃(Crash)。什么是同步?为了保证某个时刻只能有一个执行单元对共享资源进行操作,就需要进行同步(即独占访问,即A在访问资源时,B只能忙等待或者休眠;只有A释放其对共享资源的占用后,B才能进行访问)。同步的基本原理就是将并发的
文章目录1.1ARMCoresight介绍1.1.1ARMCoresight发展历史1.2ARMCoresight框架介绍1.1.1Trace通路1.1.3Debug通路1.1.4Trigger通路1.1ARMCoresight介绍ARMCoresight是ARM公司提供的一种调试和跟踪技术,用于ARM处理器的调试和性能分析。它通过在处理器内部集成一组硬件组件,提供了对处理器内部状态和执行信息的可观察性。Coresight技术包括多个组件,如调试接口、调试逻辑和跟踪组件等。调试接口提供了与处理器进行通信的接口,用于调试器与处理器之间的数据交换。调试逻辑是一组硬件逻辑,用于控制和管理调试操作。跟
linux系列目录:linux基础篇(一)——GCC和Makefile编译过程linux基础篇(二)——静态和动态链接ARM裸机篇(一)——i.MX6ULL介绍ARM裸机篇(二)——i.MX6ULL启动过程ARM裸机篇(三)——i.MX6ULL第一个裸机程序ARM裸机篇(四)——重定位和地址无关码ARM裸机篇(五)——异常和中断linux系统移植篇(一)——linux系统组成linux系统移植篇(二)——Uboot使用介绍linux系统移植篇(三)——Linux内核使用介绍linux系统移植篇(四)——根文件系统使用介绍linux驱动开发篇(一)——Linux内核模块介绍linux驱动开发篇(
文章目录ARM汇编宏介绍ARM汇编宏的使用下篇文章:ARM64常见汇编指令学习12–ARM汇编函数的学习上篇文章:ARM64常见汇编指令学习10–无符号位域提取指令BFXILARM汇编宏介绍在ARM汇编中,“.macro”是用来定义一个宏的指令。宏可以看作是一个可以在汇编程序中重用的代码段。当调用宏时,汇编器会将宏的内容插入到调用位置。一个简单的使用示例是:.macroadd_and_mov,dst,src1,src2add\dst,\src1,\src2mov\dst,\src1.endm在这个例子中,我们定义了一个名为’add_and_mov’的宏,它接受三个参数:dst、src1和src
文章目录DynamIQ技术背景DynamIQ技术详解DynamIQ与big.LITTLEDynamIQcluster分类硬件支持DynamIQ为什么适合人工智能?DynamIQ技术背景2017年3月21日下午,ARM在北京金隅喜来登酒店召开发布会,正式发布了全新的有针对人工智能及机器学习进行优化的DynamIQ技术,ARM称DynamIQ将是下一代计算革命的开始,将重新定义计算,可以覆盖覆盖从端到云的安全、通用平台。将被广泛应用于汽车、家庭以及数不胜数的各种互联设备,这些设备所产生的数据会在云端或者设备端被用于机器学习,以实现更先进的人工智能,从而带来更自然、更直观的用户体验。DynamIQ技
一、异常二、异常处理机制三、ARM异常源四、ARM异常模式五、ARM异常响应CPSR寄存器ARM寄存器六、异常向量表七、异常返回八、IRQ异常举例九、异常优先级十、FIQ和IRQ一、异常概念处理器在正常执行程序的过程中可能会遇到一些不正常的事件发生这时处理器就要将当前的程序暂停下来转而去处理这个异常的事件异常事件处理完成之后再返回到被异常打断的点继续执行程序二、异常处理机制不同的处理器对异常的处理的流程大体相似,但是不同的处理器在具体实现的机制上有所不同;比如处理器遇到哪些事件认为是异常事件遇到异常事件之后处理器有哪些动作、处理器如何跳转到异常处理程序如何处理异常、处理完异常之后又如何返回到被