
华清远见
文章平均质量分 82
晚风凉111
这个作者很懒,什么都没留下…
展开
-
L9-D23IIC控制器与MPU6050
MPU6050可以使用IIC总线和其他器件进行数据交互,我们可以使用IIC总线向MPU6050中的控制寄存器写入数据来设置MPU6050的工作参数 也可以使用IIC总线从MPU6050中的数据寄存器读取数据来获取加速度、角速度等信息。2.主机发送从机地址(MPU6050的地址)及读写方向(写)2.主机发送从机地址(MPU6050的地址)及读写方向(写)7.主机发送从机地址(MPU6050的地址)及读写方向(读)9.从机发送一个字节数据(要读的寄存器中的数据)4.主机发送一个字节数据(要写的寄存器的地址)原创 2023-05-19 00:49:35 · 318 阅读 · 0 评论 -
L9-D22IIC总线原理
IIC总线IIC总线是Philips公司在八十年代初推出的一种串行、半双工总线主要用于近距离、低速的芯片之间的通信;IIC总线有两根双向的信号线一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步;IIC总线硬件结构简单,成本较低,因此在各个领域得到了广泛的应用。IIC总线是一种多主机总线,连接在IIC总线上的器件分为主机和从机主机有权发起和结束一次通信,而从机只能被主机呼叫;当总线上有多个主机同时启用总线时,IIC也具备冲突检测和仲裁的功能来防止错误产生;原创 2023-05-18 15:16:09 · 377 阅读 · 0 评论 -
L9-D21PWM实验
有源蜂鸣器有源蜂鸣器只要接上额定电源就可以发出声音。无源蜂鸣器无源蜂鸣器利用电磁感应原理,为音圈接入交变电流后形成的电磁铁与永磁铁相吸或相斥而推动振膜发声。PWM(Pulse Width Modulation)即脉冲宽度调制,通过对脉冲的宽度进行调制,来获得所需要波形。原创 2023-05-17 21:45:02 · 183 阅读 · 0 评论 -
L9-D20RTC实验
RTC(Real Time Clock)即实时时钟,它是一个可以为系统提供精确的时间基准的元器件,RTC一般采用精度较高的晶振作为时钟源,有些RTC为了在主电源掉电时还可以工作,需要外加电池供电。原创 2023-05-16 16:55:15 · 381 阅读 · 0 评论 -
D9-19ADC实验
ADC(Analog to Digital Converter)即模数转换器,指一个能将模拟信号转化为数字信号的电子元件。ADC主要参数:分辨率ADC的分辨率一般以输出二进制数的位数来表示,当最大输入电压一定时,位数越高,分辨率越高;n位的ADC能区分输入电压的最小值为满量程输入的1/2^n;比如一个12位的ADC,最大输入电压为1.8v,那么该ADC能区分的最小电压为1.8v/2^12≈0.00044v,因此,当转换的结果为m时,则实际的电压值为m*(1.8v/2^12);原创 2023-05-16 02:35:10 · 331 阅读 · 0 评论 -
D9-18中断处理
不同的处理器对异常的处理的流程大体相似,但是不同的处理器在具体实现的机制上有所不同;比如处理器遇到哪些事件认为是异常事件遇到异常事件之后处理器有哪些动作、处理器如何跳转到异常处理程序如何处理异常、处理完异常之后又如何返回到被打断的程序继续执行等我们将这些细节的实现称为处理器的异常处理机制。:处理器在正常执行程序的过程中可能会遇到一些不正常的事件发生,这时处理器就要将当前的程序暂停下来转而去处理这个异常的事件,异常事件处理完成之后再返回到被异常打断的点继续执行程序。start.S文件里添加。原创 2023-05-15 01:06:31 · 222 阅读 · 0 评论 -
L9-16轮询与中断
轮询 CPU执行程序时不断地询问硬件是否需要其服务,若需要则给予其服务,若不需要一段时间后再次询问,周而复始。中断 CPU执行程序时若硬件需要其服务,对应的硬件给CPU发送中断信号,CPU接收到中断信号后将当前的程序暂停下来,转而去执行中断服务程序,执行完成后再返回到被打断的点继续执行。DMA 硬件产生数据后,硬件控制器可将产生的数据直接写入到存储器中,整个过程无需CPU的参与。原创 2023-05-13 19:07:57 · 370 阅读 · 0 评论 -
L9-15WDT实验
Watch Dog Timer即看门狗定时器,其主要作用是当发生软件 故障时可产生复位信号使SOC复位,其本质是一个计数器。原创 2023-05-13 17:50:14 · 309 阅读 · 0 评论 -
L9-D14UART实验
Universal Asynchronous Receiver Transmitter 即通用异步收发器,是一种通用的串行、异步通信总线该总线有两条数据线,可以实现全双工的发送和接收在嵌入式系统中常用于主机与辅助设备之间的通信。:波特率用于描述UART通信时的通信速度,其单位为bps(bit per second)即每秒钟传送的bit的数量。串口通信不允许连续发送,每次通信最多发送一个字节(8位)。发送完,重新通信发送新数据,时间重新计算。串口协议规定发送数据时,先发送低位,串口可发5位,不多于8位。原创 2023-05-13 17:46:03 · 749 阅读 · 0 评论 -
L9-D13C工程与寄存器封装
text_start:/**/b resetb .b .b .b .b .b .b .reset:/**//**//**//**//**//**//**/b main/**申请各个模式下的栈空间*/.datastack_svc:.space 512stack_und:.space 512stack_abt:.space 512stack_irq:.space 512stack_fiq:.space 512。原创 2023-04-25 13:29:47 · 388 阅读 · 1 评论 -
L9-D12GPIO实验
GPIO(General-purpose input/output)即通用型输入输出,GPIO可以控制连接在其之上的引脚实现信号的输入和输出芯片的引脚与外部设备相连,从而实现与外部硬件设备的通讯、控制及信号采集等功能。LED实验步骤1. 通过电路原理图分析LED的控制逻辑2. 通过电路原理图查找LED与Exynos4412的连接关系3. 通过数据手册分析GPIO中哪些寄存器可以控制LED4. 通过程序去操控对应的寄存器完成对LED的控制。原创 2023-04-24 10:49:22 · 120 阅读 · 0 评论 -
L9-D11FS4412开发环境搭建
元器件查找1.搜索丝印 2.查找目录网络标号电路图中网络标号相同的节点在电气上是连接在一起的。原创 2023-04-21 14:16:50 · 218 阅读 · 0 评论 -
L9-D10伪操作与混合编程
1.简述ATPCS协议的主要内容是什么主要内容包括以下几个方面:1. 寄存器使用规范:ATPCS规定了在函数调用过程中哪些寄存器需要被保存,哪些可以被修改,哪些需要被恢复。具体来说,ATPCS规定了R0-R3、R12、lr、pc寄存器需要被保存,其他寄存器可以被修改。2. 参数传递规范:ATPCS规定了函数参数的传递方式,即前四个参数通过R0-R3寄存器传递,其他参数通过栈传递。3. 栈使用规范:ATPCS规定了栈的使用方式,包括栈的增长方向、栈帧的组成、栈帧的大小等。原创 2023-04-20 15:58:24 · 129 阅读 · 0 评论 -
L9-D9专用指令
指令是控制程序运行时的机器代码运作的,是CPU执行的依据,编程、编译、执行都是有效的。伪指令本身不是指令,编译器可以将其替换成若干条等效指令,编译完成后,伪指令的作用也就消失了。1.编程实现通过状态寄存器传送指令,将ARM处理器的模式修改成USER模式并将FIQ与IRQ使能。MRC 将协处理器中寄存器中的数据传送到ARM处理器中的寄存器。MCR 将ARM处理器中寄存器中的数据传送到协处理器中的寄存器。STC 将协处理器中的数据写入到存储器。1.6 协处理器指令:操控协处理器的指令。原创 2023-04-19 16:48:39 · 272 阅读 · 0 评论 -
L9-D8栈的种类与应用
栈指针指向最后一次压入到栈中的数据的相邻位置,压栈时可直接压栈,之后需要将栈指针移动到相邻位置。不同点:A从指定地址存,B从指定地址存先加4再存。A先存数据后增长地址,B先增长地址后存数据。不同点:A从指定地址存,B从指定地址存先减4再存。A先存数据后减少地址,B先减少地址后存数据。:栈指针指向最后一次压入到栈中的数据,压栈时需要先移动栈指针到相邻位置然后再压栈。:压栈时栈指针越来越大,出栈时栈指针越来越小。:压栈时栈指针越来越大,出栈时栈指针越来越小。STMIA与STMIB。STMDA与STMDBA。原创 2023-04-18 16:48:28 · 90 阅读 · 0 评论 -
L9-D7跳转与存储器访问指令
1.使用汇编语言实现100以内的正整数之和。注:将最终的运算结果存储在R2寄存器。原创 2023-04-18 00:48:54 · 120 阅读 · 0 评论 -
L9-D5D6ARM指令集仿真环境搭建
c回顾1.语句a++;2.注释//3.预编译指令#if 1...#else...#endif@汇编中的符号@1.指令:能够编译成一条32bit机器码,并且能被CPU识别和执行@2.伪指令:本身不是指令,编译器可以将其替换成若干条指令@3.伪操作:不会生成指令,只是在编译阶段告诉编译器怎么编译@ARM指令集@1.数据处理指令:进行数学运算、逻辑运算@2.跳转指令:实现程序的跳转,本质是修改了PC寄存器@3.Load/Srore指令:访问(读写)内存。原创 2023-04-17 00:49:46 · 189 阅读 · 0 评论 -
L9-D4ARM异常处理
处理器在正常执行程序的过程中可能会遇到一些不正常的事件发生,这时处理器就要将当前的程序暂停下来转而去处理这个异常的事件,异常事件处理完成之后再返回到被异常打断的点继续执行程序。不同的处理器对异常的处理的流程大体相似,但是不同的处理器在具体实现的机制上有所不同;比如处理器遇到哪些事件认为是异常事件遇到异常事件之后处理器有哪些动作、处理器如何跳转到异常处理程序如何处理异常、处理完异常之后又如何返回到被打断的程序继续执行等我们将这些细节的实现称为处理器的异常处理机制。导致异常产生的事件称为异常源。原创 2023-04-14 00:38:03 · 147 阅读 · 0 评论 -
L9-D3ARM寄存器组织
CPSR寄存器分为四个域,[31:24]为条件域用F表示、[23:16]为状态域用S表示、[15:8]为预留域用X表示、[8:0]为控制域用C表示。> 产生异常时,对应异常模式下的LR会自动保存被异常打断的指令的下一条指令的地址,异常处理结束后将LR的值复制到PC可实现程序返回。> 产生异常时,对应异常模式下的LR会自动保存被异常打断的指令的下一条指令的地址,异常处理结束后将LR的值复制到PC可实现程序返回。,当前程序状态寄存器,控制CPU的状态和模式,显示CPU内部运算的状态,有无进位等。原创 2023-04-13 16:55:15 · 179 阅读 · 0 评论 -
L9-D2ARM处理器概论
指令能够指示处理器执行某种运算的命令称为指令(如加、减、乘 ...);指令在内存中以机器码(二进制)的方式存在;每一条指令都对应一条汇编;程序是指令的有序集合。指令集处理器能识别的指令的集合称为指令集;不同架构的处理器指令集不同;指令集是处理器对开发者提供的接口。大多数ARM处理器都支持两种指令集:ARM指令集所有指令(机器码)都占用32bit存储空间代码灵活度高、简化了解码复杂度执行ARM指令集时PC值每次自增4Thumb指令集所有指令(机器码)都占用16bit存储空间。原创 2023-04-13 14:51:09 · 201 阅读 · 0 评论 -
L9-D1计算机硬件基础
CPU串行工作程序,运算器一条一条执行指令。指令的执行过程一条指令的执行分为三个阶段1.取址:CPU将PC寄存器中的地址发送给内存,内存将其地址中对应的指令返回到CPU中的指令寄存器(IR)。2.译码:译码器对IR中的指令进行识别,将指令(机器码)解析成具体的运算。3.执行:控制器控制运算器中对应的运算单元进行运算,运算结果写入寄存器。每执行一条指令后PC的值会自动增加指向下一条指令。原创 2023-04-12 16:13:34 · 87 阅读 · 0 评论