找回密码
 注册
关于网站域名变更的通知
查看: 208|回复: 3
打印 上一主题 下一主题

实现LED的控制功能

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-8-12 10:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
开发板上能直接提供给用户使用的就是按键和LED。那我就先来实现LED的控制功能,也就是GPIO的输入输出功能。, m3 }( f7 k4 I! A: {" F
一,首先了解硬件接口$ B7 @2 E( |3 [6 C- ]" r% X1 m

1 W* G/ F" Y  L* p" O0 p      三个LED可以供控制,分别使用GPIO为PB8,PB9,PB10。" m' C3 {5 }- o8 _8 W
  S8 F8 _' f9 Y, z3 @% z$ s
二,通过gd32F3x0_Firmware_Library_V1.0.0库文件新建工程project。% Q* F- ^% y- q- ?' R6 o5 X! H& M
$ I- E; N% y! o% U) s) U
本来是想移植freeRtos的,但是RAM太小,还是放弃了。接下来实现软件功能。+ c, V" m( w  u# h: J; \# @* Q
1,时钟
8 r8 c% ^7 J& H$ D初始化时钟,开发板上没有焊接外部时钟,这里只能使用内部时钟了。6 n$ E. l  {6 T
时钟控制单元提供了一系列频率和时钟功能, 包括一个内部 8M RC 振荡器时钟 (IRC8M) 、 一个内部 48M RC 振荡器时钟 (IRC48M) 、 一个内部 28M RC 振荡器时钟 (IRC28M) 、 一个外部高速晶体振荡器时钟 (HXTAL) 、 一个内部低速 RC 振荡器时钟 (IRC40K) 、 一个外部低速晶体振荡器时钟 (LXTAL) 、 一个锁相环 (PLL) 、 一个 HXTAL 时钟监视器、 时钟预分频器、 时钟多路复用器和时钟选通电路。
& n% c3 T/ |1 BAHB 、 APB 和 Cortex™ -M4 时钟都源自系统时钟 (CK_SYS) , 系统时钟的时钟源为 IRC8M 、 HXTAL 或 PLL 。系统时钟的最大运行时钟频率可以达到 108MHz 。独立看门狗定时器定时器有独立的时钟源( IRC40K ), 实时时钟 (RTC) 使用 IRC40K 、 LXTAL 或 HXTAL/32 作为时钟源 。5 P8 R; b; w/ f# c
! F  @" y  _* U; ?3 j
预分频器可以配置 AHB 、 APB2 和 APB1 域的时钟频率。 AHB 、 APB2 和 APB1 域的最高时钟频率分别为 108MHz 、 54MHz 和 54MHz 。 RCU 通过 AHB 时钟 (HCLK)8 分频后作为 Cortex 系统定时器 (Systick) 的外部时钟。通过对 SysTick 控制与状态寄存器的设置,可选择上述时钟或 Cortex(HCLK) 时钟作为 SysTick 时钟 。3 b% }" F2 p* i8 ]/ h6 Q% m4 R
系统复位后, IRC8M 时钟被选为系统时钟, 改变时钟配置寄存器 RCU_CFG0 中的系统时钟变换位 SCS 可以切换系统时钟源为 HXTAL 或 PLL 。当 SCS 的值改变, 系统时钟将使用原来的时钟源继续运行直到转换的目标时钟源稳定。 当一个时钟源被直接或通过 PLL 间接作为系统时钟时,它将不能被停止。  |4 J- D- b8 U: g: W% B8 c) L/ T0 v
上文明显说复位后 IRC8M 时钟被选为系统时钟,但是在没有对时钟进行初始化时,打印出来的时钟就是108Mhz,太胡扯了。2 a: b- N0 C4 f- z1 z9 d0 n" M
通过重定向串口输出
4 F: E. n) m" X5 z2 o# c+ s0 C
可以通过开发的USB输出printf打印信息。5 G# [/ A( t4 F8 J
2,设置系统滴答时钟. x4 N! z# {; e& p+ j

: }' J8 f  G% E; {: q定义1ms中断。6 f5 l8 y, U' a" ^' N, u7 X

7 N; S. r+ L: A. t" W2 ^6 s( J) I中断处理函数,1s闪烁一次。
9 C' d3 b% a- C7 u: Q3,编译下载
) m/ D" W) T$ f+ M/ G仿真器选择% O+ Q" o3 _- ~2 K2 `

1 ?( ?- }/ U1 t& z6 O; V直接download下载后程序运行部起来。通过仿真调试模式,点击三次运行按钮,程序正常运行。我初始化时钟也是这样,还未查明原因。

该用户从未签到

2#
发表于 2022-8-12 11:22 | 只看该作者
感谢提供,支持支持。学习学习

该用户从未签到

3#
发表于 2022-8-12 14:40 | 只看该作者
好辛苦了我学习看看

该用户从未签到

4#
发表于 2022-8-12 16:34 | 只看该作者
非常感谢!!!学习学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-24 01:31 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表