news 2026/4/23 13:02:21

ST32G12单片机使用表贴晶体:32MHz

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ST32G12单片机使用表贴晶体:32MHz

简 介:本文介绍了使用32MHz表贴晶体替换原25MHz晶体来提升STC32G单片机性能的实验。通过更换1206封装的32MHz晶体并调整并联电容至20pF,成功提高了系统时钟频率。测试表明,该改动使信号采样周期从10ms缩短至7ms,主要得益于时钟频率提升。文中详细记录了电路设计、焊接过程、ADC采样优化及FFT频率分析等关键步骤,验证了外部晶振方案的有效性。同时指出STC32G系列单片机缺乏硬件数学加速单元,性能提升仅源于时钟频率提高。

关键词32MHz晶体外部时钟STC32G150kHz电磁门导航信号幅值估计

00:02:57\\\\\\\\r\\\\\\\\n外部32MHz表贴晶体

  • STC32G12 使用外部晶振
  • 导航信号线性度测量:150kHz
  • 2016贴片无源晶振石英晶体谐振器16M24M25M26M27.12M32M40M50MHZ
  • STC32G中的数学硬件库有多疯狂?

AD\Test\2025\December\Sample150kHzSTC32G12MCP6S21.SchDoc

01部晶体信号


一、背景

昨天测试了基于STC32G 系列的单片机采集150kHz 电磁门导航信号的电路板的功能。 每采集一个通道的数据, 时间大约消耗 10ms。 为了加速采集数据速度。 使用外部 32 MHz 的表贴晶体, 替换原来的 25MHz的晶体。 不仅减小了电路的面积, 同时也提高了电路工作速度。

▲ 图1.1.1 表贴晶体封装说明

二、设计电路

在昨天的实验电路板上, 将晶体修改成 32MHz 表贴晶体。 重新铺设PCB, 此时,全部飞线已经减少到 6 条。 解释通过 0 欧姆的电阻进行飞线。


一分钟之后, 得到了测试电路板。 电路板制作的非常完美。

三、焊接测试

焊接电路板, 其中, 晶体的两个并联电容, 都使用 20pF。 这个 20pF 是购买晶体包装上给出的 并联电容参数。 将之前编写的程序下载, 修改内部对应时钟频率为 32MHz。 可以看到此时, 单片机开始工作, 串口输出字节正常, 表明单片机内部始终为正确的 32MHz 。


▲ 图1.3.1 采集到的256个数据

配置 ADC 的时钟分频系数。 设置为 0, 此时, ADC 采样时钟频率达到最快。 采集 256 个输入信号波形, 由此可以看到采集频率比信号的频率好像大了6倍左右, 对应每个周期采集六个数据。 下面,对采集到的数据进行分析, 得到精确的归一化频率, 并进行正弦信号幅度分析。

四、频率分析

对采集到的数据补零, 使其长度达到原来的 128 倍。 求取它的 快速傅里叶变换, 其中的峰值对应的归一化频率 为 1.88488。 由此可以知道, 对应的采样频率是 信号频率的 3.33 倍。 所以, 处理255个数据, 恰好对应的信号周期的整数倍数。

▲ 图1.4.1 不128倍的0所得到的频谱
#!/usr/local/bin/python# -*- coding: gbk -*-#============================================================# TEST3.PY -- by Dr. ZhuoQing 2025-12-18## Note:#============================================================fromheadmimport*ddim=tspload('sample7','ddim')d=list(ddim[0]-mean(ddim[0]))d0=[0]*len(d)for_inrange(127):d.extend(d0)fftd=abs(fft.fft(d))id=where(fftd[:len(fftd)//2]==max(fftd[:len(fftd)//2]))[0][0]printf(id)omiga=id/128*2*pi/256printf(omiga)printf(2*pi/omiga)plt.plot(fftd,lw=3)plt.xlabel("N",color="steelblue",fontsize=24)plt.ylabel("FFT",color="steelblue",fontsize=24)plt.grid(True,which='both',linestyle='--',alpha=0.7)plt.tight_layout()plt.show()#------------------------------------------------------------# END OF FILE : TEST3.PY#============================================================

下面,测量一下现在晶振频率下, 对于外部信号采样和处理时间。 为此, 还将STC32 的数学库增加上, 不过后来经过测试发现, 加上STC32的数学库, 对于STC32G 系列的单片机来说没有什么用处。 因为这个系列的单片机并不支持硬件数学运算加速。 所以现在,采集信号周期编减小到 7ms 左右, 这些时间的提升主要来自于 时钟频率的增加。

线 ※


文测试了 使用1206表贴封装的晶体, 作为 STC32G 外部时钟。 在并联电容为 20pF的时候, 单片机启动正常。 很可惜, STC32G 系列的单片机内部没有数学加速硬件单元, 所以,数据采样时间减小到 7ms, 主要来自于时钟频率提高所带来的加速效果。


■ 相关文献链接:

  • STC32G12 使用外部晶振
  • 导航信号线性度测量:150kHz-CSDN博客
  • 2016贴片无源晶振石英晶体谐振器16M24M25M26M27.12M32M40M50MHZ
  • STC32G中的数学硬件库有多疯狂?

● 相关图表链接:

  • 图1.1.1 表贴晶体封装说明
  • 图1.3.1 采集到的256个数据
  • 图1.4.1 不128倍的0所得到的频谱
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 18:58:29

通义千问3-VL-Plus - 界面交互(坐标改进)

目录 一、引言 二、代码修改 1. 先引入依赖 2. 核心工具类(含 Point 实体 映射逻辑) 3.OparetionServiceImpl 实现类 三、运行结果演示 一、引言 在前文 通义千问3-VL-Plus - 界面交互(本地图片改进)-CSDN博客 中我们完成了…

作者头像 李华
网站建设 2026/4/23 13:00:14

基于单片机的智能感应台灯设计

摘要 针对传统台灯手动开关、亮度固定导致的能源浪费与使用不便问题,设计了一款基于STM32F103单片机的智能感应台灯。该台灯融合人体感应、环境光检测与智能控制技术,可实现人来灯亮、人走灯灭、亮度自适应调节及定时关闭功能。测试表明,系统…

作者头像 李华
网站建设 2026/4/18 15:23:36

设计模式之-单例模式

1.创建一个单例类 class Singleton {constructor(name){this.namename;}static instance null;getName(){console.log(this.name);}static getInstance(name){if(!Singleton.instance){Singleton.instance new Singleton(name);}return Singleton.instance;} } const a Sing…

作者头像 李华
网站建设 2026/4/21 15:28:05

软考-系统集成项目管理工程师常考案例题:项目范围管理

一、范围管理计划用于指导如下过程和相关工作 1.制定项目范围说明书; 2.根据详细项目范围说明书创建WBS; 3.确定如何审批和维护范围基准; 4.正式验收已完成的项目可交付成果。 二、需求管理计划的主要内容 1.如何规划、跟踪和报告各种需求活动…

作者头像 李华
网站建设 2026/4/20 23:38:32

springcloud基于微服务架构企业员工工作流引擎的研究_pw80f4m7

文章目录 具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 具体实现截图 同行可拿货,招校园代理 springcloud_pw80f4m7 基于微服务架构企业员工工作流…

作者头像 李华
网站建设 2026/4/23 13:00:22

springcloud基于微服务架构的博客博文学习平台的设计与实现_0ov69h80

文章目录具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 同行可拿货,招校园代理 springcloud_ov69h80 基于微服务架构的博客博文学习平…

作者头像 李华