打印
[KungFu32位 MCU]

KF32-c语言使用-特殊功能寄存器的操作

[复制链接]
757|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
4.1 简介
本章主要介绍 C 语言和汇编语言中如何访问特殊功能寄存器。
4.2 特殊功能寄存器的操作
特定于处理器的头文件是一些包含了在 C 或汇编语言中使用的特殊功能寄存器(Special Function Register, SFR)的外部声明的文件。依照约定,每SFR 都使用数据手册中的相同名称进行命名,OSC_CTL1 代表振荡器控制寄存器 1。定义结构以实现寄存器的位声明,如_HFCLKCAL。同时约定前面添加前缀“_”。举例,地址为 0x40000004 的特殊功能寄存器 OSC_CTL1C 头文件的声明如下





使用特权

评论回复
沙发
HuangHongLun|  楼主 | 2020-8-25 19:43 | 只看该作者
KF32 芯片特殊功能寄存器为芯片固定地址,且芯片支持 32 位地址空间访 问,故 SFR 仅需在头文件中将其地址声明。如上所述,KF32 芯片的每一个 SFR 都被定义为一个结构(联合体),其中 reg 为 32 位数据访问,bits 可访问一组 位,bit 可访问每一个位。 特殊功能寄存器OSC_CTL1在汇编头文件的声明如下:

使用特权

评论回复
板凳
HuangHongLun|  楼主 | 2020-8-25 19:44 | 只看该作者
在应用程序中使用 SFR 时,需要执行 2 个步骤。

使用特权

评论回复
地板
HuangHongLun|  楼主 | 2020-8-25 19:44 | 只看该作者

使用特权

评论回复
5
zeshoufx| | 2020-8-27 09:20 | 只看该作者
谢谢分享【KF32-c语言使用】

使用特权

评论回复
6
哈根达斯uz| | 2020-10-30 23:53 | 只看该作者
c语言的

使用特权

评论回复
7
heisexingqisi| | 2021-1-14 22:06 | 只看该作者
终于看到位段的应用了。

使用特权

评论回复
8
詹求实| | 2021-1-15 12:04 | 只看该作者
特定于处理器的头文件是一些包含了在 C 或汇编语言中使用的特殊功能寄存器(Special Function Register, SFR)的外部声明的文件。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

440

帖子

2

粉丝