
STM32F103
文章平均质量分 83
STM32F103教程,非常详细,江科大STM32F103C8T6配套学习笔记。
Print World
这个作者很懒,什么都没留下…
展开
-
【STM32】STM32学习笔记-串口发送和接收(27)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-09 20:40:38 · 5678 阅读 · 3 评论 -
【STM32】VSCode打开STM32工程时结构体和宏报错问题解决
按ctrl+shlft+p 搜C/C++: 编辑配置(UI)使用VS Code打开STM32项目的时候宏报错。配置好之后,结构体和宏不在报错误啦。找到编译器路径,选择正确安装路径。原创 2025-01-06 14:00:00 · 1020 阅读 · 0 评论 -
【STM32】点击下载按钮时,提示No ST-LINK detected
如果没找到ST-LINK对应的设备,可以重新插拔ST-LINK,同时观察设备管理器列表有没有刷新,如果有刷新,请再仔细查找刷新后有变动的地方,如果没有刷新,可能是ST-LINK损坏或者电脑USB口损坏。\2. 找到ST-LINK对应的设备后,如果ST-LINK出现在设备管理器的。电脑没有检测到有ST-LINK设备,一般是ST-LINK驱动的问题。列表里,并且图标带有黄色感叹号,则说明电脑未安装ST-LINK驱动。界面,看看有没有ST-LINK的设备。安装结束后,ST-LINK设备出现在。原创 2025-01-06 09:13:16 · 1045 阅读 · 0 评论 -
【STM32】编译时出现 parameter references not allowed in naked functions错误
新版软件可能默认使用新版本的编译器,新版编译器不再支持老版程序的写法了。打开工程选项,选择ARM Compiler为版本5。原创 2025-01-03 19:04:58 · 473 阅读 · 0 评论 -
【STM32】编译时出现last line of file ends without a newline警告
警告直译成中文的意思是:文件的最后一行没有以换行符结束。这是编译器的一个规定,要求所有文件的最后一行必须是空行,否则就会报这个警告。最后一行什么都不要有,空格也不行。在程序最后一行输入一个回车,,保证文件以换行符结束。原创 2025-01-03 15:45:24 · 283 阅读 · 0 评论 -
【STM32】江科大STM32学习笔记汇总(50)
STM32是一系列由ST Microelectronics(意法半导体公司)推出的微控制器(MCU)。这些微控制器基于ARM Cortex-M架构,并且提供各种不同的封装和引脚配置。STM32系列中一些受欢迎的微控制器包括STM32F103,STM32F407和STM32F429。 STM32微控制器以其低功耗,高性能和广泛的功能而闻名。它们通常用于物联网设备,可穿戴技术和其他需要低功耗和高性能的应用。 总体而言,STM32微控制器是许多开发人员的首选,因为它们的多功能性,可靠性和广泛的功能。——————原创 2024-03-01 16:41:04 · 18158 阅读 · 6 评论 -
【STM32】STM32学习笔记-读写内部FLASH 读取芯片ID(49)
STM32F10xxx内嵌的闪存存储器可以用于在线编程(ICP)或在程序中编程(IAP)烧写。在线编程(In-Circuit Programming – ICP)方式用于更新闪存存储器的全部内容,它通过JTAG、SWD协议或系统加载程序(Bootloader)下载用户应用程序到微控制器中。ICP是一种快速有效的编程方法,消除了封装和管座的困扰。原创 2024-03-01 15:10:56 · 3711 阅读 · 0 评论 -
【STM32】STM32学习笔记-FLASH闪存(48)
STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程读写FLASH的用途:利用程序存储器的剩余空间来保存掉电不丢失的用户数据通过在程序中编程(IAP),实现程序的自我更新在线编程(In-Circuit Programming – ICP)用于更新程序存储器的全部内容,它通过JTAG、SWD协议或系统加载程序(Bootloader)下载程序。原创 2024-02-29 15:15:11 · 3253 阅读 · 0 评论 -
【STM32】STM32学习笔记-独立看门狗和窗口看门狗(47)
WDG(Watchdog)看门狗看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,保证系统的可靠性和安全性看门狗本质上是一个定时器,当指定时间范围内,程序没有执行喂狗(重置计数器)操作时,看门狗硬件电路就自动产生复位信号STM32内置两个看门狗独立看门狗(IWDG):独立工作,对时间精度要求较低窗口看门狗(WWDG):要求看门狗在精确计时窗口起作用。原创 2024-02-29 15:11:55 · 2559 阅读 · 0 评论 -
【STM32】STM32学习笔记-WDG看门狗(46)
WDG(Watchdog)看门狗看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,保证系统的可靠性和安全性看门狗本质上是一个定时器,当指定时间范围内,程序没有执行喂狗(重置计数器)操作时,看门狗硬件电路就自动产生复位信号STM32内置两个看门狗独立看门狗(IWDG):独立工作,对时间精度要求较低窗口看门狗(WWDG):要求看门狗在精确计时窗口起作用。原创 2024-02-28 19:57:03 · 2779 阅读 · 0 评论 -
【STM32】STM32学习笔记-修改主频 睡眠模式 停止模式 待机模式(45)
PWR(Power Control)电源控制PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能可编程电压监测器(PVD)可以监控VDD电源电压,当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务低功耗模式包括睡眠模式(Sleep)、停机模式(Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间。原创 2024-02-28 19:54:15 · 2465 阅读 · 0 评论 -
【STM32】STM32学习笔记-PWR电源控制(44)
•PWR(Power Control)电源控制•PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能•可编程电压监测器(PVD)可以监控VDD电源电压,当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务•低功耗模式包括睡眠模式(Sleep)、停机模式(Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间。原创 2024-02-27 09:55:37 · 2773 阅读 · 0 评论 -
【STM32】STM32学习笔记-读写备份寄存器和实时时钟(43)
备份寄存器是42个16位的寄存器,可用来存储84个字节的用户应用程序数据。他们处在备份域里,当V DD 电源被切断,他们仍然由VBAT 维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位。此外,BKP控制寄存器用来管理侵入检测和RTC校准功能。复位后,对备份寄存器和RTC的访问被禁止,并且备份域被保护以防止可能存在的意外的写操作。执行以下操作可以使能对备份寄存器和RTC的访问。● 通过设置寄存器RCC_APB1ENR的PWREN和BKPEN位来打开电源和后备接口的时钟。原创 2024-02-27 09:51:03 · 2248 阅读 · 0 评论 -
【STM32】STM32学习笔记-BKP备份寄存器和RTC实时时钟(42)
备份寄存器是42个16位的寄存器,可用来存储84个字节的用户应用程序数据。他们处在备份域里,当V DD 电源被切断,他们仍然由VBAT 维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位。此外,BKP控制寄存器用来管理侵入检测和RTC校准功能。复位后,对备份寄存器和RTC的访问被禁止,并且备份域被保护以防止可能存在的意外的写操作。执行以下操作可以使能对备份寄存器和RTC的访问。● 通过设置寄存器RCC_APB1ENR的PWREN和BKPEN位来打开电源和后备接口的时钟。原创 2024-01-26 14:22:14 · 3142 阅读 · 0 评论 -
【STM32】STM32学习笔记-Unix时间戳(41)
当原子钟计时一天的时间与地球自转一周的时间相差超过0.9秒时,UTC会执行闰秒来保证其计时与地球自转的协调一致。•GMT(Greenwich Mean Time)格林尼治标准时间是一种以地球自转为基础的时间计量系统。•Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒。C语言的time.h模块提供了时间获取和时间戳转换的相关函数,可以方便地进行秒计数器、日期时间和字符串之间的转换。C 标准库原创 2024-01-26 09:20:02 · 3422 阅读 · 0 评论 -
【STM32】STM32学习笔记-硬件SPI读写W25Q64(40)
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I2S音频协议。SPI接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。在小容量和中容量产品上,不支持I2S音频协议。串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠通信。I2S也是一种3引脚的同步串行接口通讯协议。原创 2024-01-25 15:50:57 · 2758 阅读 · 0 评论 -
【STM32】STM32学习笔记-SPI通信外设(39)
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I2S音频协议。SPI接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。在小容量和中容量产品上,不支持I2S音频协议。串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠通信。原创 2024-01-25 11:13:31 · 2589 阅读 · 0 评论 -
【STM32】STM32学习笔记-软件SPI读写W25Q64(38)
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I 2 S音频协议。SPI接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。在小容量和中容量产品上,不支持I 2 S音频协议。串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠通信。原创 2024-01-24 16:29:21 · 2334 阅读 · 0 评论 -
【STM32】STM32学习笔记-W25Q64简介(37)
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I 2 S音频协议。SPI接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。在小容量和中容量产品上,不支持I 2 S音频协议。串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠通信。原创 2024-01-24 10:08:24 · 2026 阅读 · 0 评论 -
【STM32】STM32学习笔记-SPI通信协议(36)
在大容量产品和互联型产品上,SPI接口可以配置为支持SPI协议或者支持I 2 S音频协议。SPI接口默认工作在SPI方式,可以通过软件把功能从SPI模式切换到I2S模式。在小容量和中容量产品上,不支持I 2 S音频协议。串行外设接口(SPI)允许芯片与外部设备以半/全双工、同步、串行方式通信。此接口可以被配置成主模式,并为外部从设备提供通信时钟(SCK)。接口还能以多主配置方式工作。它可用于多种用途,包括使用一条双向数据线的双线单工同步传输,还可使用CRC校验的可靠通信。原创 2024-01-23 15:42:31 · 3815 阅读 · 1 评论 -
【STM32】STM32学习笔记-硬件I2C读写MPU6050(35)
I2C(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下可达 3.4Mbit/s。原创 2024-01-23 15:37:00 · 3679 阅读 · 0 评论 -
【STM32】STM32学习笔记-I2C通信外设(34)
I2C(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下可达 3.4Mbit/s。原创 2024-01-16 17:58:00 · 2347 阅读 · 0 评论 -
【STM32】STM32学习笔记-软件I2C读写MPU6050(33)
I2C(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下可达 3.4Mbit/s。原创 2024-01-16 17:54:53 · 3880 阅读 · 0 评论 -
【STM32】STM32学习笔记-MPU6050简介(32)
•MPU6050是一个6轴姿态传感器,可以测量芯片自身X、Y、Z轴的加速度、角速度参数,通过数据融合,可进一步得到姿态角,常应用于平衡车、飞行器等需要检测自身姿态的场景•3轴加速度计(Accelerometer):测量X、Y、Z轴的加速度•3轴陀螺仪传感器(Gyroscope):测量X、Y、Z轴的角速度。原创 2024-01-15 18:06:45 · 2691 阅读 · 0 评论 -
【STM32】STM32学习笔记-I2C通信协议(31)
I2C(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下可达 3.4Mbit/s。原创 2024-01-15 17:56:48 · 5218 阅读 · 0 评论 -
【STM32】STM32学习笔记-FlyMCU串口下载和STLINK Utility(30)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-13 21:01:40 · 2714 阅读 · 0 评论 -
【STM32】STM32学习笔记-USART串口收发HEX和文本数据包(29)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-13 20:52:34 · 3684 阅读 · 0 评论 -
【STM32】STM32学习笔记-USART串口数据包(28)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-09 21:10:31 · 2597 阅读 · 0 评论 -
【STM32】STM32学习笔记-串口发送和接收(27)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-08 21:27:16 · 1437 阅读 · 0 评论 -
【STM32】STM32学习笔记-USART串口外设(26)
串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式, 电子工程师在调试设备时也经常使用该通讯方式输出调试信息。在计算机科学里,大部分复杂的问题都可以通过分层来简化。如芯片被分为内核层和片上外设;STM32标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性, 确保原始数据在物理媒体的传输。原创 2024-01-08 11:58:42 · 4339 阅读 · 0 评论 -
【STM32】STM32学习笔记-USART串口协议(25)
而并行通讯一般是指使用8、16、32及64根或更多的数据线进行传输的通讯方式, 它们的通讯传输对比说明见图 并行通讯与串行通讯的对比图 ,并行通讯就像多个车道的公路, 可以同时传输多个数据位的数据,而串行通讯,而串行通讯就像单个车道的公路,同一时刻只能传输一个数据位的数据。而单工则像单行道,另一方向的车辆完全禁止通行。在同步通讯中,数据信号所传输的内容绝大部分就是有效数据,而异步通讯中会包含有帧的各种标识符,所以同步通讯的效率更高, 但是同步通讯双方的时钟允许误差较小,而异步通讯双方的时钟允许误差较大。原创 2024-01-07 12:19:17 · 5529 阅读 · 1 评论 -
【STM32】STM32学习笔记-DMA数据转运+AD多通道(24)
小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。互联型产品是指STM32F105xx和STM32F107xx微控制器。原创 2024-01-07 11:00:56 · 3944 阅读 · 0 评论 -
【STM32】STM32学习笔记-DMA直接存储器存储(23)
小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。互联型产品是指STM32F105xx和STM32F107xx微控制器。原创 2024-01-06 15:35:58 · 3861 阅读 · 0 评论 -
【STM32】STM32学习笔记-ADC单通道 ADC多通道(22)
小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。互联型产品是指STM32F105xx和STM32F107xx微控制器。12位ADC是一种逐次逼近型模拟数字转换器。原创 2024-01-06 11:50:10 · 4683 阅读 · 0 评论 -
【STM32】STM32学习笔记-ADC模数转换器(21)
小容量产品是指闪存存储器容量在16K至32K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。中容量产品是指闪存存储器容量在64K至128K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101xx和STM32F103xx微控制器。互联型产品是指STM32F105xx和STM32F107xx微控制器。12位ADC是一种逐次逼近型模拟数字转换器。原创 2024-01-05 11:58:33 · 6043 阅读 · 0 评论 -
【STM32】STM32学习笔记-编码器接口测速(20)
【代码】【STM32】STM32学习笔记-编码器接口测速(20)原创 2024-01-04 20:21:57 · 2499 阅读 · 0 评论 -
【STM32】STM32学习笔记-TIM编码器接口(19)
Encoder Interface 编码器接口编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度每个高级定时器和通用定时器都拥有1个编码器接口两个输入引脚借用了输入捕获的通道1和通道2。原创 2024-01-04 19:53:21 · 2883 阅读 · 0 评论 -
【STM32】STM32学习笔记-输入捕获测频率和占空比(18)
【代码】【STM32】STM32学习笔记-输入捕获测频率和占空比(18)原创 2024-01-01 18:22:46 · 3486 阅读 · 1 评论 -
【STM32】STM32学习笔记-TIM输入捕获(17)
IC(Input Capture)输入捕获输入捕获模式下,当通道输入引脚出现指定电平跳变时,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数每个高级定时器和通用定时器都拥有4个输入捕获通道可配置为PWMI模式,同时测量频率和占空比可配合主从触发模式,实现硬件全自动测量。原创 2024-01-01 17:55:20 · 3843 阅读 · 0 评论 -
【STM32】STM32学习笔记-PWM驱动LED呼吸灯 舵机 直流电机(16)
【代码】【STM32】STM32学习笔记-PWM驱动LED呼吸灯 舵机 直流电机(16)原创 2023-12-31 17:42:44 · 7999 阅读 · 3 评论