c - 头文件难点

标签 c header-files microcontroller keil

我正在学习对 8051 微 Controller 进行编程,但在“头文件”方面遇到了一些困难。

基本上,我从 Keil 获取了我的特定微 Controller (AT89S52) 的头文件,并将其插入到我的 IDE 中以“.h”结尾的头文件中。但这不是问题。

当我尝试编译和链接我的工作时,会出现问题,内置调试器声称术语“sfr”和“sbit”未知。具体来说,调试器说

"error: unknown type name 'sbit'"

"error: unknown type name 'sfr'".

我确实明白这是从哪里来的,因为这些没有在我从 Keil 中提取的给定头文件文本中定义,但无论如何,我的错误在哪里以及解决方案是什么?

我在网上查了一下,确实找不到答案。如果您有任何问题,我会尽力尽快回答。头文件的链接如下。我正在使用一个名为“Code Blocks”的 IDE。

http://www.keil.com/dd/docs/c51/atmel/regx52.h

最佳答案

您链接的头文件不适用于您在文本中指定的微 Controller 。您不能将头文件从一种产品重新调整到另一种产品。您必须找到适合您的特定微 Controller 的正确头文件。

关于c - 头文件难点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46398693/

相关文章:

c - 为什么我可以在不包含头文件的情况下编译和运行C程序?

c++ - 我可以将 "using namespace std"放入我的 namespace 中吗?

c - 找到两个最差的值并删除总和

并发访问结构成员

c - 禁用适配器时 NdisFSendNetBufferLists 导致 BSoD

c - FastCGI 在 c 中的分支

c - c语言创建静态变量时

objective-c - Switch 语句常量问题

C undefined reference

c - 如何在RAM上定义const变量?