当前位置: 首页 > news >正文

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所得到的频谱
http://www.cnnetsun.cn/news/136827.html

相关文章:

  • 超级Mini小车功能说明
  • STC32G12单片机替换成STC32F12单片机,直接替换的结果
  • SIEMENS 6SL3210-1PE33-0CL0 变频器
  • 软件测试常用的7种方法,最后一个是升职加薪关键!(零基础小白转行IT互联网高效进阶)
  • 【RTOS】EasyLog的移植与使用
  • 在数据库里玩“平行宇宙”:MatrixOne Data Branch 让数据也拥有Git 的分支/合并/对比/回滚(含跨集群同步)
  • 基于单片机的全自动洗衣机系统的设计
  • 5.6 模型部署与智能体集成实战
  • 基于单片机的球赛计分牌的设计
  • ArcGIS Pro 从入门到实战基础篇(10):地图菜单
  • Kotaemon与Redis/Memcached集成:构建高速缓存层
  • 【鸿蒙三方库编译】lycium_plusplus(lycium++)高效完成鸿蒙C/C++编译
  • 2025年度GEO服务商权威甄选指南:技术深度与商业价值的双重考量
  • 收藏备用!Java程序员转AI大模型:从技术沉淀到AI爆发的进阶之路
  • Python 爬虫实战:Session 会话维持爬取需登录内容
  • 基于移相全桥变换器的电池充电仿真模型,采用电压电流双闭环PI控制。 电池先经历CC模式而后进入...
  • 基于COMSOL模拟的水力压裂技术研究:固体力学与达西定理的应用
  • Redis 性能调优(二)
  • Doris 性能调优实践指南(可直接落地)
  • presum|二分try+滑窗cnt
  • Web自动化测试:Unittest单元测试框架
  • Apache2最佳实践
  • 实力派,也可以是偶像派
  • 基于单片机的多功能万年历
  • AI搜索时代:技术演进、产业分化与深度变革
  • SGMICRO圣邦微 SGM2019-2.5YC5G/TR SC70-5 线性稳压器(LDO)
  • 一文搞懂 低功耗蓝牙BLE 中的 ATT、GATT、MTU 与 20 字节限制
  • 别让“大锅饭”逼走你的Top Sales:揭秘薪酬误差的副作用
  • 27827828
  • 12.17 vue递归组件