【STM32开发指南】STM32F103内核Cortex-M3详解

【STM32】STM32系列产品以及新手入门的STM32F103 📢 STM32F103xC/D/E 系列是一款高性能、低功耗的 32 位 MCU,适用于工业、汽车、消费电子等领域;,适合复杂嵌入式应用,,适用于电池供电设备。 阅读详情
AI摘要

本文深入解析了STM32F103系列微控制器所采用的Cortex-M3内核架构及特性。涵盖总线架构、系统外设、寄存器组等内容,并介绍了Cortex-M3的工作模式、异常与中断处理机制。

目录

【前言】

Cortex-M3内核概述

Cortex-M3内核架构

​编辑

总线架构

系统外设

寄存器组

通用寄存器

特殊功能寄存器

Cortex-M3内核的工作模式

线程模式(Thread Mode)

异常模式(Handler Mode)

特权级别

Cortex-M3内核的异常与中断

异常(Exception)与中断(Interrupt)

中断与异常的处理流程

中断优先级与嵌套

NVIC(嵌套向量中断控制器)

STM32F103与Cortex-M3的结合

高性能处理

丰富的外设资源

低功耗设计

强大的调试支持

总结


【前言】

在嵌入式系统领域,STM32F103系列微控制器因其高性能、丰富的外设资源以及低功耗特性而备受青睐。其核心部分采用了ARM公司的Cortex-M3处理器内核,本文将详细解析这一内核的架构、特性及其在STM32F103中的应用。

如果大家对ARM公司还不太了解,可以通过这篇博文先了解下什么是ARM。

【ARM入门指南】一文搞懂什么是ARM-优快云博客文章浏览阅读567次,点赞11次,收藏10次。在单片机与嵌入式系统的浩瀚宇宙中,ARM架构犹如一颗耀眼的星辰,持续引领着技术创新的潮流。对于刚刚踏入这一领域的初学者而言,深入了解ARM是迈入嵌入式开发大门的关键一步。ARM,这个名字背后,不仅代表着一家在半导体设计领域举足轻重的公司,更象征着一种高效能、低功耗的处理器架构,本文将引领你一同探索ARM的世界。https://blog.youkuaiyun.com/debug602/article/details/141504704?spm=1001.2014.3001.5502

Cortex-M3内核概述

Cortex-M3是ARM公司专为微控制器(MCU)设计的32位RISC处理器内核,属于ARMv7-M架构。该内核旨在满足嵌入式系统对低成本、低功耗、高性能以及实时性的要求。Cortex-M3不仅具备强大的计算性能,还拥有先进的中断系统和丰富的调试接口,使得其在嵌入式应用中表现出色。

Cortex‐M3处理器内核是单片机的中央处理单元(CPU)。完整的基于CM3的MCU还需要很多其它组件。在芯片制造商得到CM3处理器内核的使用授权后,它们就可以把CM3内核用在自己的硅片设计中,并添加其它外设功能模块。因此不同厂家设计出的单片机会有不同的配置,包括存储器容量、类型、外设等都各具特色。

Cortex-M3内核架构

总线架构

Cortex-M3内核采用了哈佛结构,拥有独立的指令总线和数据总线,允许取指和数据访问并行进行,从而提高了处理性能。其主要总线包括:

  • AHB(Advanced High-performance Bus):用于高性能系统模块的连接,支持突发数据传输和单个数据传输方式,最大速度可达72MHz。
  • APB(Advanced Peripheral Bus):分为APB1和APB2,APB1速度限于36MHz,而APB2则可达72MHz,用于连接较低性能的外设。

系统外设

Cortex-M3内核集成了多种系统外设,包括中断控制、内存保护以及系统调试和跟踪功能。这些外设极大地增强了处理器的功能性和易用性。

寄存器组

通用寄存器

Cortex-M3内核拥有13个32位通用寄存器(R0-R12),这些寄存器在处理器执行指令时起到关键作用,用于存储操作数、地址等。其中,R0-R7也被称为低组寄存器,因为它们可以被所有指令访问;而R8-R12则被称为高组寄存器,它们的访问受到指令类型的限制,但支持更广泛的32位操作。

特殊功能寄存器

除了通用寄存器外,Cortex-M3内核还包括几个特殊功能寄存器,它们在处理器的工作过程中扮演着重要角色:

  • R13(SP):栈指针寄存器,用于实现栈的访问。实际上,Cortex-M3提供了两个栈指针——主栈指针MSP和进程栈指针PSP。MSP在复位后或处理器处于特权模式(如进中断)时会被使用,而PSP则用于线程模式,特别是在支持任务或线程切换的实时操作系统(RTOS)中。

  • R14(LR):链接寄存器,也称为返回地址寄存器。在函数或子程序调用时,返回地址(即调用指令后面那条指令的地址)会被保存到LR寄存器中,以便在函数或子程序结束时能够返回到正确的地址继续执行。

  • R15(PC):程序计数器,用于存储当前执行的指令地址。对PC的写操作会引起程序的跳转,而不会更新LR寄存器。

  • xPSR(程序状态寄存器):这是一个包含多个状态标志的寄存器,用于指示处理器的当前状态。xPSR可以分解为应用PSR(APSR)、执行PSR(EPSR)和中断PSR(IPSR)三个部分,分别用于表示应用状态、执行状态和中断/异常状态。这些状态标志对于控制程序流程、处理中断和异常至关重要。

  • PRIMASK、FAULTMASK和BASEPRI:这些是中断/异常屏蔽寄存器,用于控制中断和异常的优先级和屏蔽状态。PRIMASK用于禁止所有可屏蔽异常,FAULTMASK用于禁止所有Fault异常(包括HardFault、MemManage、BusFault和UsageFault),而BASEPRI则用于设置处理器可响应的最低异常优先级阈值。

  • CONTROL寄存器:该寄存器用于控制处理器的一些特殊功能,如栈指针的选择(MSP或PSP)、是否允许在特权级别下访问FPU(浮点单元)等。

Cortex-M3内核的工作模式

Cortex-M3内核支持两种主要的工作模式,这些模式用于区分处理器在执行不同类型的代码时的行为。这两种模式分别是线程模式(Thread Mode)和异常模式(Handler Mode),它们也常被称为代码执行模式。

线程模式(Thread Mode)

  • 定义:线程模式用于执行非异常代码,即用户编写的应用程序代码。在这种模式下,处理器运行用户定义的任务,处理常规的业务逻辑。
  • 特性:
    • 可以访问非特权资源和特权资源(取决于处理器的当前特权级别)。
    • 支持任务切换和上下文保存,特别是在使用RTOS时。
    • 在复位后,处理器默认进入线程模式。

异常模式(Handler Mode)

  • 定义:异常模式用于执行异常代码,如中断服务程序(ISR)。当外部事件(如定时器溢出、外部中断触发等)或内部事件(如指令执行错误)发生时,处理器会进入异常模式以处理这些事件。
  • 特性:
    • 总是运行在特权级别,确保异常处理程序能够访问所有系统资源。
    • 处理器在执行异常处理程序时,会自动保存当前的程序计数器(PC)、程序状态寄存器(xPSR)和链接寄存器(LR)的值,以便在异常处理完成后能够恢复到异常发生前的状态。
    • 支持嵌套中断,即一个中断处理过程中可以被另一个更高优先级的中断打断。

特权级别

与这两种工作模式紧密相关的是处理器的特权级别。Cortex-M3内核支持两种特权级别:特权级(Privilege)和用户级(User)。

  • 特权级:能够访问所有硬件资源,包括所有寄存器和内存地址空间,能够执行所有指令。这是处理器处理异常代码时的默认级别,也是操作系统内核代码运行的级别。
  • 用户级:对用户代码的限制较多,通常禁止使用MSR和MRS指令访问特殊功能寄存器(APSR除外),不能执行CPS指令修改控制寄存器,对系统控制空间的访问也有限制。这是为了保护系统资源不被用户程序意外修改。

在STM32F103的应用中,我们需要理解这些工作模式和特权级别的概念,以便正确编写和调试中断服务程序,以及在使用RTOS时合理管理任务和资源。

Cortex-M3内核的异常与中断

异常(Exception)与中断(Interrupt)

在Cortex-M3内核中,异常和中断是处理器响应系统中突发事件的一种机制。它们允许处理器暂停当前正在执行的程序,转而处理更高优先级的任务,处理完毕后再返回原程序继续执行。虽然异常和中断在概念上有所不同,但在Cortex-M3内核中,它们通常被统一处理。

  • 异常:异常通常是由处理器内部事件引起的,如指令执行错误(如除零错误)、调试事件或系统请求(如SVC指令)。异常具有固定的优先级,并且总是被处理器立即响应。
  • 中断:中断则是由外部设备或系统事件引起的,如定时器溢出、外部引脚电平变化等。中断具有可编程的优先级,允许开发者根据应用需求设置中断的响应顺序。

 在Cortex-M3内核中,异常和中断的数量是固定的,并且由内核的架构决定。具体来说,Cortex-M3内核支持多达256个中断,这些中断包括内核异常和外部中断。然而,在实际应用中,并不是所有的STM32F103系列微控制器都会使用到Cortex-M3内核支持的全部中断,它实际支持的中断数量包括16个内核异常(也被称为系统异常)和一定数量的可屏蔽外部中断。这些内核异常包括复位(RESET)、硬错误(HardFault)等,它们是固定的,且优先级不可编程。而外部中断的数量则根据具体的STM32F103型号而有所不同,STM32F103系列通常支持60个外部中断。

中断与异常的处理流程

当异常或中断发生时,Cortex-M3内核会执行以下处理流程:

  1. 保存上下文:处理器会自动将当前的程序计数器(PC)、程序状态寄存器(xPSR)、链接寄存器(LR)以及部分通用寄存器(R0-R3、R12)的值保存到堆栈中,以便在异常或中断处理完毕后能够恢复到异常发生前的状态。

  2. 获取向量地址:处理器通过读取中断向量表(IVT),找到与异常或中断号对应的向量地址。向量地址指向了异常或中断服务程序(ISR)的入口点。

  3. 执行ISR:处理器跳转到ISR的入口点开始执行。ISR是开发者编写的用于处理特定异常或中断的代码段。

  4. 恢复上下文:ISR执行完毕后,处理器会执行出栈操作,恢复异常或中断发生前的上下文,并返回到被中断的程序继续执行。

中断优先级与嵌套

Cortex-M3内核支持可编程的中断优先级,允许开发者根据应用需求设置中断的响应顺序。中断优先级分为抢占优先级和子优先级(也称为响应优先级):

  • 抢占优先级:决定了中断是否可以嵌套。抢占优先级高的中断可以打断抢占优先级低的中断处理函数,先执行高优先级的中断处理函数,待其执行完毕后再继续执行被打断的低优先级中断处理函数。
  • 子优先级:在抢占优先级相同的情况下,决定了中断的响应顺序。子优先级高的中断会先于子优先级低的中断被响应。

STM32F103系列微控制器作为Cortex-M3内核的具体实现,继承了这些中断和异常处理机制。开发者可以通过配置NVIC(嵌套向量中断控制器)来管理中断和异常,包括设置中断优先级、使能或禁用中断等。

NVIC(嵌套向量中断控制器)

NVIC是Cortex-M3内核中用于管理中断和异常的关键组件,它提供了丰富的中断控制功能,包括:

  • 中断使能与禁用:允许开发者根据需要使能或禁用特定的中断。
  • 优先级设置:允许开发者为中断设置抢占优先级和子优先级。
  • 中断挂起与解除挂起:提供了中断挂起和解除挂起的功能,允许开发者手动控制中断的触发时机。
  • 中断分组:通过中断分组功能,开发者可以灵活分配抢占优先级和子优先级的位数,以适应不同的应用需求。

STM32F103系列微控制器通过NVIC提供了强大的中断和异常处理能力,使得开发者能够轻松实现复杂的嵌入式应用。

STM32F103与Cortex-M3的结合

STM32F103系列微控制器基于Cortex-M3内核设计,集成了高性能的处理器内核和丰富的外设资源,使其成为嵌入式系统开发的理想选择。

以下是STM32F103与Cortex-M3内核结合的一些关键特性:

高性能处理

STM32F103的工作频率高达72MHz,结合Cortex-M3内核的三级流水线设计,能够在单个周期内完成绝大多数指令的执行,极大提高了处理器的吞吐率。

丰富的外设资源

STM32F103提供了包括USB、CAN、ADC、DAC、SPI、I2C、USART等多种通信接口和外设,这些外设通过APB总线与Cortex-M3内核相连,使得STM32F103能够应对各种复杂的嵌入式应用需求。

低功耗设计

Cortex-M3内核结合STM32F103的灵活电源和时钟管理功能,支持多种低功耗模式,如睡眠、停止和待机模式,以适应不同的能耗需求,延长设备的使用时间。

强大的调试支持

STM32F103支持JTAG和SWD接口调试,结合Cortex-M3内核的调试组件(如FPB、DWT、ITM、ETM等),提供了强大的调试功能,便于开发者进行程序调试和性能分析。

总结

STM32F103系列微控制器以其强大的Cortex-M3内核和丰富的外设资源,在嵌入式系统领域占据了重要地位。通过对Cortex-M3内核的深入解析,我们可以更好地理解STM32F103的高性能、低功耗和易调试等特性,从而更加高效地进行嵌入式系统开发。无论是初学者还是资深开发者,STM32F103都是一个值得深入学习和应用的优秀平台。

如果大家读完这篇文章后想深入学习下CortexM3内核,可以点个关注后台私信我获取“Cortex-M3权威指南”

STM32F103系列芯片的地址映射和寄存器映射原理,以及GPIO端口的初始化设置 阅读详情

相关推荐

【嵌入式学习-STM32F103-USART串口通信】

本文记录了作者学习STM32串口通讯的内容,主要资料来源于江科大视频

weixin_43251807的博客 7196

STM32F103中文参考手册(754页)

STM32F103 中文参考手册

marlon666的博客 5万+

32位入门级MCU(ARM Cortex-M3内核)STM32F103系列

与此同时,DAC模块及其余功能模块所具有的出色的集成性,减少了系统设计的复杂性和成本,‌同时也减小了自身体积,缩小了对电路板的空间占用。‌如果只有一组VDD,‌当负载增大时,‌VDD电流产生突变,‌路径距离越长,‌产生的压降越大,‌电源波动越明显。在这款‌芯片的设计中,pad的数量要大于外部引脚的数量,‌是为了满足电源供应、‌信号传输和接地连接的多方面需求,‌以确保芯片的正常工作和性能发挥。‌包括串行线调试(‌SWD)‌和JTAG接口,‌以及Cortex-M3嵌入式跟踪宏单元,‌便于开发和调试。

Eric的博客 2231

STM32F103简介

自从大学毕业之后,已经很久没有接触STM32控制器了,最近打算学习一下LVGL,控制芯片计划使用STM32F103RTC6,因此这里我们会简单介绍有关STM32F103RTC6的知识。 一、STM32F103RTC6介绍 1.1 命名规则 我从网上买了一块STM32F103RTC6开发板,STM32F103RCT6 各个字段的含义: STM32(芯片系列):STM32代表ARM Cortex-...

Graceful_scenery的博客 7910

STM32F103与ARM Cortex-M3内核深度解析

微控制器(MCU)是嵌入式系统的核心载体,其性能与实时性取决于底层架构设计。ARM Cortex-M系列基于RISC精简指令集,采用哈佛架构与确定性流水线,兼顾代码密度与执行效率;其Thumb-2混合指令长度机制和嵌套向量中断控制器(NVIC)显著优化了中断响应与资源占用。作为该架构的典型实现,STM32F103不仅集成高性能32位内核、丰富外设与低功耗管理模块,更依托ARM开放IP生态实现跨厂商开发一致性。在工业控制、电机驱动、物联网终端等对实时性、可靠性与成本敏感的应用场景中,理解其时钟树配置、HAL/

weixin_42600407的博客 393

Keil下载配置Cortex-M内核STM32全面讲解

深入讲解如何通过keil下载并完成Cortex-M内核的STM32开发环境配置,涵盖关键步骤与常见问题解决,帮助开发者高效实现keil下载与芯片适配。

weixin_31591833的博客 931

【STM32学习笔记1】Cortex-M3与STM32基本概念

文章目录前言ARM处理器Cortex-M3与STM32概述STM32产品命名规则STM32F103x系列Cortex-M3总线接口 前言 本系列文章统一围绕STM32F103C8T6最小系统开发板进行记录,如涉及其他开发板将会特别说明。 ARM处理器 ARM(Advanced RISC Machine)是一个32位精简指令集(RISC)处理器架构,应用于许多嵌入式系统设计中。其中,自从ARMv7系列架构开始,ARM公司推出了Cortex系列,并根据不同的应用场景推出了Cortex-M,Cortex-A

kevinyya的博客 1万+

深入解析STM32F103:ARM Cortex-M3内核与微控制器实战入门

本文深入解析STM32F103微控制器,重点介绍其基于ARM Cortex-M3内核的架构特点与实战应用。通过GPIO配置、定时器使用及UART/SPI/I2C通信接口详解,帮助开发者快速入门嵌入式开发,并提供了智能温湿度监测系统的实战案例与调试技巧。

efc123456的博客 631

32位入门级MCU(ARM Cortex-M3内核)中的六边形战士—STM32F103系列

许多芯片界的龙头企业,如意法半导体(ST),恩智浦(NXP),瑞萨(Renesas)、英飞凌(Infineon)、德州仪器(TI)等,都有设计生产出不同系列的MCU的产品,内核也是五花八门,有ARM的,有RSIC-V,还有自家内核的。‌如果只有一组VDD,‌当负载增大时,‌VDD电流产生突变,‌路径距离越长,‌产生的压降越大,‌电源波动越明显。在这款‌芯片的设计中,pad的数量要大于外部引脚的数量,‌是为了满足电源供应、‌信号传输和接地连接的多方面需求,‌以确保芯片的正常工作和性能发挥。

2401_86840954的博客 2101

【STM32单片机】STM32F103 串口1 串口2 串口3 串口4 串口5 初始化,标准库 ,支持printf

STM32F103RCT6是一款主流性能系列的单片机,采用Arm Cortex-M3内核,具有256K字节的Flash存储器,72 MHz的CPU频率,支持电机控制、USB和CAN等功能。该产品已经批量生产,10kU的单价为4.0035美元,采用LQFP 64封装,尺寸为10x10x1.4mm。STM32F103xC、STM32F103xD和STM32F103xE性能系列产品采用高性能的ARM Cortex-M3 32位RISC内核,工作频率为72 MHz。

q742971636的博客 1万+

全面解读STM32F103和STM32F107手册与Cortex-M3架构

本文还有配套的精品资源,点击获取 简介:基于ARM的Cortex-M3内核的STM32系列微控制器在嵌入式系统、物联网和工业控制领域得到广泛应用。STM32F103和STM32F107是该系列中的两款产品,前者面向中低端市场,后者增加USB OTG功能。Cortex-M3架构以其高效能、低功耗著称,支持Thumb-2指令集、内建浮点单元(FPU)和快速中断响应,适合于便携式...

weixin_29935511的博客 2019

ARM Cortex-M内核探秘:STM32F103如何重塑嵌入式开发格局

本文深入探讨了ARM Cortex-M3内核在STM32F103微控制器中的革新性设计,详细分析了其哈佛总线架构、Thumb-2指令集和高级中断处理机制如何重塑嵌入式开发格局。通过对比传统8位单片机,展示了STM32F103在性能、能效和外设集成方面的显著优势,为复杂实时系统和物联网应用提供了强大硬件基础。

whisky的博客 649

abb机器人指令手册_ABB机器人配置圆形输送链跟踪

更多内容请点击上方ABB机器人实战技巧关注也可点击公众号下方往期经典浏览更多内容转载请先后台留言,大家一起支持原创,推动机器人使用和发展本公众号对各类ABB机器人应用,仿真,毕业设计提供技术支持,详细后台留言本公众号诚挚希望与各机器人培训机构,机器人使用单元合作,提供技术支持,详细后台留言1. 通常的机器人输送链跟踪,均为直线输送链跟踪,例如下图2. 有些情况,输送链为圆形,例如...

weixin_39849894的博客 2044

嵌入式系统原理及应用《基于ARM Cortex-M3 内核的STM32F103系列微控制器》思维导图

嵌入式思维导图,基于ARM Cortex-M3内核的STM32F103的微控制器

hhhhhzl的博客 5622

Aurora8b10b光口通信实战:复位时序与IP核配置详解

本文深入解析了Aurora 8B10B协议在FPGA高速光口通信中的核心实践,重点剖析了确保链路稳定启动的关键复位时序与IP核配置细节。通过详解全双工与单工模式下的复位流程、Vivado中IP核的物理层与链路层参数设置,并结合用户逻辑设计实例,为工程师实现可靠的高速数据传输提供了清晰的实战指南。

weixin_29280219的博客 177

51单片机自学笔记(六)数码管动态扫描与消影实战

本文详细解析了51单片机数码管动态扫描原理与视觉暂留效应,通过硬件电路分析和C语言代码实战,重点介绍了三种数码管消影技术(段选清零法、位选屏蔽法、硬件消影法),解决了显示重影问题,并提供了常见问题调试技巧与定时器中断优化方案,帮助开发者掌握稳定的多位数码管显示技术。

y9z0a1b的博客 1103

我的STM32学习之路(1)---STM32概述(Cortex-M3)

本文仅为笔者入门学习过程中的总结,对于想深入学习stm32的同志不建议阅读。 参考文献:stm32中文参考手册,cortex m3权威指南,stm32f1开发指南(库函数) 前记 大学以来,一直觉得单片机还有C语言很有用,并且对那种技术大佬表示十分的钦佩。我是从大一开始接触单片机,想着去加一些高大上的实验室,但是奈何从高中到大学,不论是学习,生活还是感情,都发生了很多很多变化,脑海里也仅存着...

HIT_Superfeng的博客 7637

VC Spyglass CDC实战:从TCL脚本到SDC约束的完整避坑指南

本文是一份针对数字IC验证工程师的VC Spyglass CDC实战指南。文章详细阐述了从TCL脚本环境搭建、SDC约束编写到典型CDC违规(如SETUP_PORT_UNCONSTRAINED)诊断与修复的完整流程,旨在帮助读者高效避坑,深入理解工具逻辑,从而完成可靠的时钟域交叉验证。

go5gopher的博客 382

【免费下载】 嵌入式系统原理及应用——基于ARM Cortex-M3内核的STM32F103系列微控制器

嵌入式系统原理及应用——基于ARM Cortex-M3内核的STM32F103系列微控制器 【下载地址】嵌入式系统原理及应用基于ARMCortex-M3内核的STM32F103系列微控制器 嵌入式系统原理及应用——基于ARM Cortex-M3内核的STM32F103系列微控制器 ...

gitblog_09753的博客 1978

BCM-BCP-DRP-运维管理之故障管理——故障的分类与处理流程

ITSM Business Continuity Manage(BCM) BusinessContinuityPlan(BCP) 偏业务 DisasterRecoveryPlan(DRP) 偏IT 天塌了,考虑在天塌了的状态下做什么,怎么开展业务就是BCP; 天塌了,考虑怎么把天撑回去,就是DRP。 DRP+BCP+供应链管理+危机管理等就是BCM (业务连续性管...

mmgithub123的博客 2720

基于STM32F103设计的智能门锁(支持多种开锁解锁方式)

这个智能锁模型是基于STM32平台开发的,支持多种开锁方式。其中,一种是使用RC522射频卡读卡器读取IC卡卡号和内部数据,并验证身份后开锁;另一种是通过连接蓝牙地址来确认业主身份,实现了蓝牙自动开锁功能;最后一种是通过ESP8266连接腾讯云物联网平台,并且用户可以通过微信小程序“腾讯连连”进行远程开锁和关锁。这样,用户就可以选择最方便的方式来进行开锁操作了。

3万+

arm cortex-m stm32启动说明和ram中运行程序特别注意点

cortex-m启动说明 复位后,cotex-m3一定是从0x0取msp,从0x4取pc。stm32提供了boot0和boot1两个引脚,控制将哪儿的存储区域映射到0x00地址来,也就决定了cpu如何运行,原理为:根据这两个引脚电平不同,地址转换器(电路实现,只要通电的,这个地址转换器就在工作)映射(其实叫做取别名也行)不同的地址到0x00地址来,这样的话,0x00地址开始的内容就是我们映射过来的内容了。 启动空间(boot space):就是上电后,要执行的代码 这里举个例: 当bo.

biao2488890051的博客 2827

Agent驱动电商运营:从选品到售后的全链路革新

在当今竞争激烈的电商市场中,传统的电商运营模式面临着诸多挑战。从选品到售后,每个环节都需要大量的人力投入和专业知识。选品需要深入了解市场趋势和消费者需求,营销需要精准定位目标用户,客服需要24小时响应用户咨询。这些工作不仅耗时耗力,而且容易受到人为因素的影响,导致效率低下和成本高企。AI Agent是一种能够感知环境、做出决策并采取行动的智能系统。感知能力:能够获取和处理环境信息。决策能力:能够根据感知到的信息做出决策。行动能力:能够执行决策,对环境产生影响。学习能力。

AI 领航者的博客 354

为什么选择STM32-M3

你了解STM32吗

qq_61945256的博客 5380

备赛电赛学习硬件篇(六):复位电路工作原理

上电复位的工作过程是在加电时,复位电路通过电 容加给RST端一个短暂的高电平信号,此高电平信号随着Vcc对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间。在图2的复位电路中,当Vcc掉电时,必然会使RST端电压迅速下降到0V以下,但是,由于内部电路的限制作用,这个负电压将不会对器件产生损害。在上电或复位过程中,控制CPU的复位状态:这段时间内让CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。

m0_61022809的博客 6771

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

STM32(一)STM32简介

一、什么是STM32?意法半导体(ST)集团于1988年6月成立,是由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。1998年5月,SGS-THOMSON Microelectronics将公司名称改为意法半导体有限公司,是世界最大的半导体公司之一。

zhuxinmingde的博客 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

上一篇: 【ARM入门指南】一文搞懂什么是ARM
下一篇: 单片机相关面试问题精选
程亦寻
博客等级 码龄10年 5473粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程亦寻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值