精华内容
下载资源
问答
  • arm m0
    千次阅读
    2021-03-31 16:18:28

    MCU学习笔记

    ARM Cortex M0

    1. ARM的CPU core 的基本概念
    2. ARM Cortex M0组成架构
    3. Cortex-M0 Processo
    

    1. ARM的CPU core 的基本概念

    • A系列:手机上应用;应用于high end application processor; cortex_A5, cortex_A8,
      cortex_A9, cortex_A19等
    • R系列:路由器,汽车等; 应用于高性能的实时系统(high performance real-time system)ARM9E
      series: cortex_R4F, cortex_R4
    • M系列:家电,IOT,便携式低功耗设备; ARM7TDMI; cortex_M0, cortex_M1, cortex_M3,
      cortex_M4

    2. ARM Cortex M0组成架构

    1. ARM V6 architecture的Thumb instruction set指令集
    2. ARM V7 architecture的:memory map, Programmer’s model, exception model, thumb-2 system
    3. Core sight debug architecture的:serial-wire and debug control

    3. Cortex-M0 Processor

    在这里插入图片描述

    1. wakeup interrupt controller(WIC): 连接power management interface, 用于低功耗,微控制器可以进入待机模式,同时处理器的多数部分掉电。WIC可在NVIC和处理器不活动时执行中断屏蔽功能。检测到中断请求,WIC通知电源管理部分,给系统上电,NVIC和处理器继续处理中断的剩余部分。(可配置)
    2. Nested Vector Interrupt Controller(NVIC): 嵌入式向量中断控制器,从外部接收中断请求,最多可以接收32个中断请求信号,和1个 NMI(不可屏蔽的中断);可以比较中断请求和当前优先级之间的关系,自动处理嵌套中断。处理后,再与处理器进行通信。(可配置)
    3. processor core: M0核心模块
    4. Debug subsystem: 调试子系统,包括调试控制,程序断点,数据监视点的各种模块,debug时,处理器内核处于暂停状态,开发人员可以检查处理器的状态。(可配置)
    5. JTAG/SWD(serial-wire debug interface):JTAG/串行线接口单元,提供总线系统和debug功能。根据Coresight调试架构要求,独立于处理器设计。
      JTAG协议:4针(包含测试信号,5针),一般用于IC和PCB测试。
      串行线协议:2根线
    6. Internal Bus System: 内部总线系统,32位字宽
    7. AHB LITE bus interface: 连接存储系统(memory),和外设(peripherals), 32位数据传输. 符合ARM开发以及AMBA规范。

    参考资料:《ARM+Cortex-M0权威指南》
    【注】:个人学习笔记,如有错误,望不吝赐教,这厢有礼了~~~


    更多相关内容
  • ARM M0的FPGA开发文件

    2018-12-08 16:52:35
    运用于FPGA开发的ARM M0的文件集合。包括M0内核,和APB上挂载的各个外设以及ARM官方的文档和testbench。
  • Cortex-M0/M0+, M3/M4 中的中断控制器英文名叫做NVIC,Nested Vectored Interrupt Controller,翻译过来就是嵌套向量中断控制器,所谓中断嵌套是指当正在执行一个中断服务程序时,这时如果来了优先级更高的中断,新...
  • 参考资料以 ARM Cortex-M0 用户指南(ARM Cortex-M0 User Guide)为蓝本。 只针对 LPC111x Cortex-M0 的具体实现做了细微的改动。
  • 基于ARM Cortex-M0的SoC单片机内核程序设计.pdf
  • ARM Cortex®-M0 DesignStart™ Design Kit (代码及文档)
  • ARM M0 RTT打印log配置

    2018-05-15 10:04:52
    RTT 1、M0支持jlink RTT 2、找到segger里面的RTT 3、添加工程文件
  • STM32F030F4P6最小系统板主要由STM32F030F4P6芯片作为主控制芯片,LM1117-3.3V芯片用于稳压输出3.3V给ARM微处理器STM32F030F4P6和各个外围接口供电,同时还有晶振、转接pin脚构成整个电路设计。 具体功能介绍: 1....
  • ARM Cortex-M0权威指南, 中文版PDF,非常实用,仅大学学习使用。
  • 列出ARM CORTEX-M0可能的汇编指令组合,指令的长度,指令周期数和影响的状态字。
  • ARM cortex M0 M0+ SDK包的系统参考设计官方文档,非常详细地介绍了SDK包里的各个组件。
  • ARM cortex M0+ introduction

    2022-01-06 14:24:24
    cortex M0

    参考文件:

    Cortex™-M0+
    Revision: r0p1
    Technical Reference Manual
     

    1、Introduction(介绍)

    1.1 About the processor

    The Cortex-M0+ processor is a very low gate count, highly energy efficient processor that is intended for microcontroller and deeply embedded applications that require an area optimized,low-power processor.

    1.2 Features

    The processor features and benefits are:

    • Tight integration of system peripherals reduces area and development costs.
    • Thumb instruction set combines high code density with 32-bit performance.
    • Support for single-cycle I/O access.
    • Power control optimization of system components.
    • Integrated sleep modes for low power consumption.
    • Fast code execution enables running the processor with a slower clock or increasing sleep mode time.
    • Optimized code fetching for reduced flash and ROM power consumption.
    • Hardware multiplier.
    • Deterministic, high-performance interrupt handling for time-critical applications.
    • Deterministic instruction cycle timing.
    • Support for system level debug authentication.
    • Serial Wire Debug reduces the number of pins required for debugging.
    • Support for optional instruction trace.

    1.3 Interfaces

    The interfaces included in the processor for external access include:

    • External AHB-Lite interface.
    • Debug Access Port (DAP).
    • Optional single-cycle I/O Port.

    1.4 configurable options

    The MULS instruction provides a 32-bit x 32-bit multiply that returns the least-significant 32-bits of the result. The processor can implement MULS in one of two ways:

    • As a fast single-cycle array.
    • As a 32-cycle iterative multiplier.

    The iterative multiplier has no impact on interrupt response time because the processor abandons multiply operations to take any pending interrupt.

    1.5 Design flow and architecture

    TRM:Tecnical Reference Manual

    1.6 Architecture & protocol information

    ARM architecture
    The processor implements the ARMv6-M architecture profile. See the ARMv6-M Architecture Reference Manual.
     

    Advanced Microcontroller Bus Architecture
    The system bus of the processor implements AMBA-3 AHB-Lite. See the ARM AMBA 3 AHB-Lite Protocol Specification.

    Debug Access Port architecture
    The Debug Access Port (DAP) is an optional component, defined by v5.1 of the ARM Debug interface specification, see the ARM Debug Interface v5 Architecture Specification.
     

    2、Functional description

    2.1 About the functions

    The Cortex-M0+ processor is a configurable, multistage, 32-bit RISC processor. It has an AMBA AHB-Lite interface and includes an NVIC component. It also has optional hardware
    debug, single-cycle I/O interfacing, and memory-protection functionality. The processor can execute Thumb code and is compatible with other Cortex-M profile processors.

    Figure 2-1 shows the functional blocks of the processor.

    The implemented device provides:
    A low gate count processor that features:

    • The ARMv6-M Thumb® instruction set.
    • Thumb-2 technology.
    • Optionally, an ARMv6-M compliant 24-bit SysTick timer.
    • A 32-bit hardware multiplier. This can be the standard single-cycle multiplier, or a 32-cycle multiplier that has a lower area and performance implementation.
    • Support for either little-endian or byte invariant big-endian data accesses.
    • The ability to have deterministic, fixed-latency, interrupt handling.
    • Load/store multiple and multicycle multiply instructions that can be abandoned and restarted to facilitate rapid interrupt handling.
    • Optionally, Unprivileged/Privileged support for improved system integrity.
    • C Application Binary Interface compliant exception model.This is the ARMv6-M, C Application Binary Interface (C-ABI) compliant exception model that enables the use of pure C functions as interrupt handlers.
    • Low power sleep-mode entry using Wait For Interrupt (WFI), Wait For Event (WFE) instructions, or the return from interrupt sleep-on-exit feature.

    NVIC that features:

    • Up to 32 external interrupt inputs, each with four levels of priority.
    • Dedicated Non-Maskable Interrupt (NMI) input.
    • Support for both level-sensitive and pulse-sensitive interrupt lines.
    • Optional Wake-up Interrupt Controller (WIC), providing ultra-low power sleep mode support.
    • Optional relocation of the vector table

    Optional debug support:

    • Zero to four hardware breakpoints.
    • Zero to two watchpoints.
    • Program Counter Sampling Register (PCSR) for non-intrusive code profiling, if at least one hardware data watchpoint is implemented.
    • Single step and vector catch capabilities.
    • Support for unlimited software breakpoints using BKPT instruction.
    • Non-intrusive access to core peripherals and zero-waitstate system slaves through a compact bus matrix. A debugger can access these devices,including memory, even when the processor is running.
    • Full access to core registers when the processor is halted.
    • Optional, low gate-count CoreSight compliant debug access through a Debug Access Port (DAP) supporting either Serial Wire or JTAG debug connections.

    Bus interfaces:

    • Single 32-bit AMBA-3 AHB-Lite system interface that provides simple.integration to all system peripherals and memory.
    • Optional single 32-bit single-cycle I/O port.
    • Optional single 32-bit slave port that supports the DAP.

    Optional Memory Protection Unit (MPU):

    • Eight user configurable memory regions.
    • Eight sub-region disables per region.
    • Execute never (XN) support.
    • Default memory map support.

    3、Programmers Model

    This chapter provides an overview of the application-level programmers model. It contains the following sections: omitted
     

    3.1 instruction set summary

    The processor implements the ARMv6-M Thumb instruction set, including a number of 32-bit instructions that use Thumb-2 technology. The ARMv6-M instruction set comprises:

    • All of the 16-bit Thumb instructions from ARMv7-M excluding CBZ, CBNZ and IT.
    • The 32-bit Thumb instructions BL, DMB, DSB, ISB, MRS and MSR.

    Table 3-1 shows the Cortex-M0+ instructions and their cycle counts. The cycle counts are based on a system with zero wait-states.

    3.1.1 arithmetic


     3.1.2 logical & shift

    3.1.3 Push & Pop

    3.1.4 Hint

    3.2 Binary compatibility with other Cortex processors

    The processor implements a binary compatible subset of the instruction set and features provided by other Cortex-M profile processors. You can move software, including system level
    software, from the Cortex-M0+ processor to other Cortex-M profile processors.To ensure a smooth transition, ARM recommends that code designed to operate on other Cortex-M profile processor architectures obey the following rules and configure the Configuration Control Register (CCR) appropriately:

    3.3 Memory Model

    The processor contains a bus matrix that arbitrates the processor core and optional Debug Access Port (DAP) memory accesses to both the external memory system and to the internal
    NVIC and debug components.Priority is always given to the processor to ensure that any debug accesses are as non-intrusive as possible. For a zero wait-state system, all debug accesses to system memory, NVIC, and debug resources are completely non-intrusive for typical code execution.The system memory map is ARMv6-M architecture compliant, and is common both to the debugger and processor accesses. Transactions are routed as follows:

    • All accesses below 0xE0000000 or above 0xEFFFFFFF appear as AHB-Lite transactions on the AHB-Lite master port of the processor.
    • Accesses in the range 0xE0000000 to 0xEFFFFFFF are handled within the processor and do not appear on the AHB-Lite master port of the processor.
    • Data accesses to the AHB-Lite interface from both the debugger and the processor can be hardware configured to appear instead on the single-cycle I/O port.

    The processor supports only word size accesses in the range 0xE0000000 - 0xEFFFFFFF. Table 3-2 shows the code, data, and device suitability for each region of the default memory map. This is the memory map used by implementations without the optional Memory Protection Unit (MPU), or when an included MPU is disabled. The attributes and permissions of all
    regions, except that targeting the Cortex-M0+ NVIC and debug components, can be modified using an implemented MPU.

    3.4 Processor core registers summary

    Table 3-3 shows the processor core register set summary. Each of these registers is 32 bits wide.

    3.5 Exceptions

    NMI:Non-maskable Interrupt

    4、System Control

    4.1 About system control

    This section describes the system control registers that control and configure various system control functions.

    4.2 System control register summary

    Table 4-1 gives the system control registers. Each of these registers is 32 bits wide.

    4.2.1 CPUID register

    5、Nested Vectored Interrupt Controller

    5.1 About NVIC

    External interrupt signals connect to the NVIC, and the NVIC prioritizes the interrupts.Software can set the priority of each interrupt. The NVIC and the Cortex-M0+ processor core
    are closely coupled, providing low latency interrupt processing and efficient processing of late arriving interrupts.
    All NVIC registers are only accessible using word transfers. Any attempt to read or write a halfword or byte individually is Unpredictable.
    NVIC registers are always little-endian. Processor accesses are correctly handled regardless of the endian configuration of the processor.
    Processor exception handling is described in Exceptions on page 3-10.

    5.2 SysTick timer option

    5.3 Low power modes

    5.4 NVIC register summary

    6、MPU(Memory Pretection Unit)

    6.1 About the MPU

    6.2 MPU registers summary

    7、Debug

    展开全文
  • ARM M0+各种定时器驱动的编写

    千次阅读 2013-05-07 23:13:47
    就是一个系统的模块,这个模块是集成在ARM M0+内核中的,其实主要是集成在NVIC 中的,NVIC也是ARM 内部模块,该模块的定时器,用该模块的时钟源来使能该定时器。以及模数计数器。总共只有四个寄存器。控制状态寄存器...

    systick

    系统滴答时间。这个定时器之前的文章已经讲过。这个是一个递减的定时器,有个模数寄存器。在此不多说。就是一个系统的模块,这个模块是集成在ARM M0+内核中的,其实主要是集成在NVIC 中的,NVIC也是ARM 内部模块,该模块的定时器,用该模块的时钟源来使能该定时器。以及模数计数器。总共只有四个寄存器。控制状态寄存器:主要包含一个COUNTFLAG 中断标志位,当计数器计数到0的时候标志该位,CLKSOURCE :可选择时钟源,默认为内核始终,有的厂家还会提供其他外设始终。TICKINT中断使能位,ENABLE计数器使能位。

    RVR重载寄存器:每次计数器计数到0 的时候,都重载该值。

    CVR计数器的值,记录当前的值。

    CALIB校准寄存器:有的厂家将计算好的10ms的ticks值放入该寄存器。也就是说是厂商决定的,厂商烧入,则有,没有设置则没有。

    TPM

    这个寄存器是递增的。有三个模块,

    分为主计数器,和通道计数器,也就是相当于一个计数器,分一个主模数,一个次模数。状态和控制寄存器(SC)中,通过CMOD 可以选计数的模式通过该计数模式可以选择时钟,是选择模块时钟还是选择时钟失效,还是选择异步外设时钟,。再经过PS分频,2(PS次幂)代表分频值,即将该时钟降频。   CPWMS:中心对齐PWM选择(即计数器的计数模式,这个也算该计数器的一个特色吧。比如一般来说计数器是1,2,3,4,5, 然后1,2,3,4,5 。通过该位置1,可以设置成1,2,3,4,5,4,3,2,1)。所以置1只能配出中央对齐的PWM.

    该定时器有一个总的MOD模数值,该值用来控制该模块的一个总的中断请求置状态寄存器的TOF位,当计数器达到该值时,该请求。当然一定有一个中断使能位,就是TOIE中断使能位,。两个值一并即触发了中断服务历程。

    TPM的分通道。每个模块也有自己的模数寄存器的值。就相当于,主计数器模数是5,从1数到5,通道模数是3,即从1数到3的时候就出发了通道相应的事件。

    其实也就是说通过将该模块的计数值。当前通道通过一定的配置 ,根据计数器来进行相应的处理。通道中分为MSnB:MSnA该位控制模式的。ELSNB:ELSNA该两位控制的是边沿和等级。模式有0:输入捕捉(01上升沿,10下降沿,11上升或下降捕捉),1,输出比较(在通道的模数值和计数器的值相等的时候,01翻转电平,10清除电平即置0,11设置电平即置1),2边沿对其PWM(10重新加载的时候是高电平,匹配的时候是低电平,即先高后低,01或11先低电平后高电平),11输出比较(10在匹配的时候打出低电平,X1在匹配的是打出高电平)。后面两种其实是一种,不同的就是在重新加载计数器的时候是否有操作。

    每个通道都有一个状态控制寄存器和模数值,包含一个标志通道的中断的标志位,该标志位每个通道都有,还有一个中断使能位,还有就是刚才提到的模式控制和边沿控制,外加一个DMA使能。

    模数值和计数器的模数值一样都是16位的,

    由于一个模块的通道都比较多,每个通道虽然都有这个中断标志,但是,模块中断只有一个,所以KL25有一个寄存器STATUE将总中断标志位TOF,和每个通道的中断标志位,都映射到一个寄存器中,这个标志都是写1清0的。

    有CONFIG配置寄存器,配置计数器的模式,以及时钟源,以及触发方式,比如让计数器不计数,等到输入捕捉到一个上升沿就开始捕捉。等等。还有在调试模式和在等待模式下用的时间基数。

    根据以上寄存器的功能可以配置一下的几种功能:

    输入捕捉:一般用于编码器

    采集输入脉冲的上升沿,下降沿或者上升沿下降沿都采集。采样周期得是计数器时钟的1/4。这其中还涉及到一个Nyquist定律。输入捕捉的时候,CnV就没有用了。

     

    输出捕捉功能:一般用于打出方波波形,比如步进电机需要的方波波形

    即只有在通道值和模块的计数器的值相等的时候,会操作,可以翻转,默认高,或者默认低。该脉冲周期是计数器周期的两倍

    边沿对其的PWM;即在上面的输出比较功能的基础上添加在重载计数器的值得时候进行设置。形成方波脉冲波形。

    中心对其的PWM:这个就比较复杂了。周期是模数的两倍。就是1,2,3,4,5,模数是5 ,通道的模数是3 ,当开始和结尾的时候有一次溢出中断,总中断,当1数到3的时候触发一次通道中断,当3数到5 再从5数到3的时候又触发一次通道中断,然后再从3数到1.

     

    PIT:  PIT有两个定时器,两个定时器可以连到一起去的。

    该计数器的值和上面不一样,它是倒序的,跟systick有点像,从一个值往下递减,减到0的时候重新加载。该定时器还有两个寄存器表示生命周期,可以用来计算该计算机运行了多久,多长时间,对了,该定时器还有一个功能,就是累加(chain)也可以说连接吧,就比如KL25里面有2个TIMER,当第一个TIMER达到0的时候,第二个TIMER减1.

    控制寄存器CR也没有几个功能,就是一个模块使能。和一个freeze

    每个定时器都有以下的值:

    PIT加载值,该值就是该计数器数到0的时候重新加载的值,

    PIT当前值:计数当前计数器的值,

    PIT时间控制寄存器。可以设置chain累加到前面一个计数器。timer0肯定没有这个功能。TIE中断使能位,TEN时钟使能。

    PIT标志位:该位标志了计数器的值达到timer

    LPTMR

    低功耗定时器:

    一共有四个寄存器:控制状态寄存器。预分频寄存器,比较值寄存器,计数寄存器

    该定时器可以用外部的脉冲来进行使能,一共有4个外部引脚。

    控制寄存器:TCF:定时器比较标志,

                           TIE:中断使能             TPS外部引脚使能    TPP引脚极性(上升沿递增,下降沿递增)  TFC当计数器的值在TCF的时候复位,或者溢出复位。

               TMS:时钟模式选择,定时器或者外部脉冲

    TEN:定时器使能。

    预分频寄存器:分配值,有2~65535     预分频时钟选择:PCS:与四个外部引脚相对应

    比较值寄存器:比较寄存器,存储该值。

    RTC:(实时时钟)

     

    一共有8个寄存器:秒计数器:闹钟定时器,预分频寄存器,补偿寄存器,控制寄存器,状态寄存器,锁定寄存器,中断使能寄存器:

    秒计数器TSR:1s递增一次

    闹钟定时器TAR:当TSR达到TAR的值得时候,触发中断。

    预分频寄存器,该值是对于32.768晶振来起作用的。预分频晶振的值。

    补偿寄存器:可以对预分频进行设置,可以+-127进行配置。

    控制寄存器,根据晶振的电容,CLKO晶振使能。OSCE晶振使能。

     

    状态寄存器,锁定寄存器,中断使能寄存器:

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • ARM Cortex M0是在2009年推出的基于架构ARM v6的一款IP核,最新的还有CM0+ 其低功耗易用性,很快让M0核获得好多厂家的喜爱,其基本架构如下: 其最大特点就是能耗低,在较低频率下可获得较低的功耗: 内核...

    ARM Cortex M0是在2009年推出的基于架构ARM v6的一款IP核,最新的还有CM0+

     其低功耗易用性,很快让M0核获得好多厂家的喜爱,其基本架构如下:

     其最大特点就是能耗低,在较低频率下可获得较低的功耗:

     内核有线程模式和处理模式,分Thumb状

    展开全文
  • 1167_ARM CORTEX-M0了解

    2022-02-17 21:25:21
    CORTEX-M0的内核是一个32bit的RISC指令集架构。 早期的ARM设计其实是在PC领域的,但是随着ARM在比如说手机这样的电池供电的系统中越来越流行的时候,ARM也开始向MCU转换。ARM7可能是最早用于设计MCU的一个内核...
  • ARM+Cortex-M0 PDF中文版

    热门讨论 2014-10-19 16:19:13
    是关于M0应用的,很详细,但对于标准C语法没有任何介绍,若想看懂一些比较专业的32BIT程序,还需要补齐标准C的语法知识
  • ASM-递归-M0 ARM Cortex M0 汇编代码展示了巧妙的优化,以避免在低功耗处理器中使用递归循环。 该代码由两个 ARM Cortex M0 .s 汇编文件组成。 一个是未优化的斐波那契数列计算器,它使用递归循环。 正如预期的那样...
  • 在学习arm的过程中,感觉寄存器,基本不会提供位操作,而是整体的操作, 整体操作的就是要注意在对某位赋值的时候不要影响到其他位,看上去不简单,其实,整体操作有技巧,那么就来总结一下。
  • ARM M0芯片M051 ISP程序

    2015-03-13 16:09:07
    主要是在cortex-M0芯片新塘M051上如何实现在系统编程的代码,可以让技术爱好者实现代码自我更新。
  • 来自于OPENCORE的Verilog语言的embedded_risc软核 SOC设计,包含比较多的内容。可以作为学习参考代码。比较有价值 顶层文件描述: MODULE: Top Level System On A Chip Design FILE NAME: soc.v ...
  • ARM Cortex-M0系统简介

    千次阅读 2022-02-25 15:03:14
    处理器模式包括 Thread mode模式用于执行应用软件。当复位结束时,处理器进入线程模式。 Handler mode异常处理模式。处理器在完成所有异常处理后返回到Thread...ARM 处理器核心寄存器摘要 Memory model 介绍Cortex-
  • ARM+Cortex-M0中文指南

    2018-07-24 09:30:31
    ARM+Cortex-M0中文指南是扫描档,详细的介绍M0的指令集,编译器等
  • 内嵌32位ARM®Cortex®-M0+内核的超低功耗、Low Pin Count和宽电压工作范围(2.5V~5.5V)的MCU,最高可运行在24MHz,内置32K/64K字节的嵌入式Flash,4K字节的SRAM,集成了12位1Msps高精度SAR型ADC、RTC、比较器、多路...
  • ARM M0-M4移植、低功耗

    2021-03-18 06:07:53
  • ARM Cortex M0 keil MDK 运行速度小测试
  • 本项目是使用Arm Cortex-M0 Designstart Eval进行开发,以下内容来自Arm Cortex-M0 DesignStart Eval User Guide。 点击此处下载Arm Cortex-M0 Designstart Eval 开发环境: Win10、MDK5、TD(Tang Dynasty)、安路...
  • ARM Cortex-M0(1)---浅谈ARM Cortex-M0

    千次阅读 2018-09-12 11:13:50
    浅谈ARM Cortex-M0   一、引言  ARM公司在2009年初发布了其嵌入式处理器系列中最小型、最低功耗的CortexM0处理器。CortexM0低功耗、高性能与极精简程序代码的特性,能应用于各种微控制器(MCU)中,并可让研发...
  • ARMv6-M 体系架构参考手册,ARM架构的官方说明手册,适合嵌入式工程师
  • ARM Cortex-M0原理与应用实践

    热门讨论 2012-02-17 17:40:38
    本书单片机的选型以新唐公司ARM Cortex-M0内核的NuMicro M051系列单片机为蓝本。
  • 数字电位器算法:根据逻辑分析仪捕捉的波形来看,其中通道1为P1_8 通道2为P0_2,观察波形可以看到,当P0_2下降沿时,判断P1_8为高电平 则左转;当P1_8上升沿时,判断P0_2为低电平,则为右转(顺时针)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,204
精华内容 4,081
关键字:

arm m0