GD32F303 使用PA8输出内部时钟频率

news2024/11/24 1:00:27

前面给小伙伴介绍过串口发送和接收异常可能的一些原因,其中就有说到时钟频率对于异步通讯的重要性。而我们通过程序去配置的时钟都是理论值,那如果想要获得内部一些时钟频率的实际值,需要怎样做呢?今天,我们以GD32F303为例来教大家如何通过PA8口输出内部时钟频率(有些GD32系列不一定是使用PA8口,小伙伴们需要自行查找资料确认)。

首先我们来看下GD32F303的时钟树:

其中左下角的位置有一个CK_OUT0的链接图:

根据图示,我们看到通过CK_OUT0可以将系统时钟(CK_SYS)、内部高速晶振(CK_IRC8M)、外部晶振(CK_HXTAL)以及PLL的二分之一频率输出出来,实际上,CK_OUT0就是PA8引脚,我们来看下GD32F303 Datasheet中的管脚定义:

可以看到PA8口的一个Alternate类型功能为CK_OUT0,所以我们需要配置PA8为复用类型。

另外在库文件gd32f30x_rcu.c中定义了时钟输出函数rcu_ckout0_config,在函数注释中已经将可调用的参数列出,但需要注意,红色方框以外的参数仅可用于GD32F305/307即互联型(CL)产品,小伙伴们可以自行查看GD32F30x系列HD和CL产品系列时钟树的不同哦。

好,了解到以上内容,使用输出PA8口输出内部时钟频率就很简单了,比如想要实现PA8输出外部高速晶振的频率,可以编写程序如下:

将这段程序下载到GD32F303开发板上,使用示波器测量PA8口,就能测量到外部高速晶振的频率啦。

这里需要说一下,外部高速晶振起振后,是一个正弦波

而通过PA8输出的波形,是一个方波:

以上就是今天的内容,小伙伴们还想要了解什么,欢迎评论区留言哦。

更多GD32 MCU相关咨询:https://www.gd32bbs.com/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1869232.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小项目——MySQL集训(学生成绩录入)

ddl语句 -- 创建学生信息表 CREATE TABLE students (student_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 学生ID,name VARCHAR(50) NOT NULL COMMENT 学生姓名,gender ENUM(男, 女) NOT NULL COMMENT 性别,class VARCHAR(50) NOT NULL COMMENT 班级,registration_date DATE CO…

RabbitMQ实践——定制一致性Hash交换器的路由字段

大纲 Property法定制交换器绑定队列测试 Header法定制交换器绑定队列测试 代码工程参考资料 在《RabbitMQ实践——利用一致性Hash交换器做负载均衡》一文中,我们熟悉了一致性Hash交换器的使用方法。默认的,它使用Routing key来做Hash的判断源。但是有些时…

基于Python的数码产品销售平台

1 项目介绍 1.1 研究目的和意义 本研究旨在设计和实现一个基于Python的数码产品销售平台,其核心目的在于通过先进的技术手段,提升数码产品销售的效率和用户体验,进而推动数码产品市场的繁荣发展。通过利用Python这一强大且灵活的编程语言&a…

可的哥视频会议(Meeting): 开启智能云端会议新纪元!

随着远程办公和全球化协作需求的不断增长,企业亟需一种更高效、更便捷的会议解决方案。在这样的背景下,可的哥(Codigger)视频会议(Meeting)应运而生,为企业提供了全新的沟通与协作方式。 可的哥…

AUTOSAR以太网之IPv4

系列文章目录 返回总目录 文章目录 系列文章目录一、IPv4报文格式二、主要函数1.IPv4_Init()2.IPv4_Receive()3.IPv4_Transmit()一、IPv4报文格式 二、主要函数 1.IPv4_Init() 这个函数除了对模块配置进行初始化,如果有分包和组包使能,则会对一些相关配置进行初始化如buf长…

Codeforces Round 954 (Div. 3) A~F

A.X Axis(暴力) 题意: 在 X X X轴( 1 ≤ x i ≤ 10 1\leq x_i\leq 10 1≤xi​≤10)上有三个点,其整数坐标分别为 x 1 x_1 x1​、 x 2 x_2 x2​和 x 3 x_3 x3​。您可以选择 X X X轴上任何一个整数坐标为 …

免费恢复微信好友的聊天记录(已删除的好友不能恢复)

非常简单,适用于未删除的微信好友的聊天记录恢复,支持导出 1、下载楼月微信聊天记录导出恢复助手 - 导出手机微信聊天记录 2、官方原文教程链接:官方原文教程链接https://www.louyue.com/weixin.htm

高考填报志愿,要做到知己知彼兼顾平衡

寒窗苦读,无非就是希望能够考上一所理想的大学,不过自从高考改革以后,高考结束后只是第一阶段,接下来第二阶段应对高考填报志愿也同样重要。 如何选择合适的院校、专业,考生和家长都需要做好充足的准备,在收…

视频组合其他内容生成二维码的方法,多内容二维码的生成技巧

现在通过二维码来播放视频的使用场景越来越多,通过这种方式能够更加简单便捷的让用户获取内容,无需下载视频内容,有效提升用户的体验效果。那么在制作视频二维码时,怎么加入其他的内容呢,比如图片、文件、文本、音频等…

springboot校BA篮球网站-计算机毕业设计源码29210

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,校BA篮球网站当然也不能排除在外。校BA篮球网站是以实际运用为开发背景,运用软件工程原理和开发方法&#x…

【LeetCode】五、哈希表相关:统计重复元素 + 找不同

文章目录 1、哈希表结构2、Java中的哈希表3、leetcode217:统计重复元素4、leetcode389:找不同5、leetcode496:下一个更大元素 1、哈希表结构 又叫散列表,存键值对,将key用哈希函数转为数组下标索引 当两个不同的key经…

【代码安全】如何通过实现代码加密与魔改Python,防止代码泄露、恶意窃取

如何通过实现代码加密与魔改Python,防止代码泄露、恶意窃取 文章目录 如何通过实现代码加密与魔改Python,防止代码泄露、恶意窃取前言概述代码运行演示Step 0: 正常代码运行Step 1: 代码加密Step 2: 加密代码在魔改环境运行Step 3: 加密代码在正常环境运…

数字孪生如何赋能智慧加油站?

在当今数字化转型的浪潮中,智慧城市的构建正以前所未有的速度推进,而智慧加油站作为智慧城市生态系统的重要组成部分,其升级转型显得尤为重要。随着国家“十四五”规划对智慧城市和数字化建设的明确指引,以及“碳达峰、碳中和”目…

51WORLD发布电力行业输电网自动生成与GIM解析技术,引领智慧电网加速进化!

电力行业是国民经济发展的重要支柱性产业。近年来,5G、大数据、人工智能、数字孪生等新技术新应用的高速发展,数字化、智能化已成为传统电力行业转型发展的重要方向。 大趋势下,以智能电网等为代表的新业态、新模式、新技术蓬勃兴起&#xf…

PyTorch入门:探索Tensor的基本操作(2)

torch.cat() a torch.zeros((2,4)) b torch.ones((2,4)) out torch.cat((a,b), dim1) print(out)运行结果如下: tensor([[0., 0., 0., 0., 1., 1., 1., 1.],[0., 0., 0., 0., 1., 1., 1., 1.]])torch.stack()&…

分析零信任三大产品板块的发展

众所周知,增强型身份管理(IAM)、软件定义边界(SDP)和微隔离(MSG)是零信任的三大支撑技术。在中国市场,零信任的产品板块也按照这三大技术进行划分。2023年,IAM、SDP和MSG…

PageOffice国产版在线编辑word文件

PageOffice国产版支持统信UOS、银河麒麟等国产操作系统。调用客户端WPS在线编辑word、excel、ppt等文件。在线编辑效果与本地WPS一致。如图所示: web系统集成pageofficeV6.0国产版的文档:PageOfficeV6.0国产版最简集成代码(Springboot) PageOffice最简集…

linux的安全技术和防火墙

一、安全技术 1.入侵检测系统:特点式不阻断网络访问,主要式提供报警和事后监督,不主动介入,默默的看着你(相当于360安全卫士) 2.入侵防御系统:透明模式工作,对数据包,网…

Micrometer+ZipKin分布式链路追踪

目录 背景MicrometerMicrometer与ZipKin之间的关系专业术语分布式链路追踪原理 ZipKin安装下载 MicrometerZipKin 案例演示相关文献 背景 一个系统页面上的按钮点击到结果反馈,在微服务框架里,是由N个服务组成返回结果,中间可能经过a->b-…

【数据结构与算法】哈希表 详解

开放定址哈希表的存储结构是什么样的? 开放定址哈希表的存储结构: #define SUCCESS 1 #define UNSUCCESS 0 #define DUPLICATE -1int hashsize[] {997, /*...*/}; // 哈希表容量递增表,一个合适的素数序列typedef struct {ElemType *elem;…