MAIN.c(1): warning C318: can’t open file ‘STC8G.H’ 报错 解决 分析

代码编辑器环境:

在这里插入图片描述

过程:

你曾经编译过stc89C52RC或者STC89C51等。

条件:第一次 运行主控芯片是STC8G1K08-38I-TSSOP20,也就是STC8G1K08系列。

报错:

MAIN.c(1): warning C318: can't open file 'STC8G.H' 这个报错,

报错原因

warning C318: can't open file 'STC8G.H'

意思:Keil 编译器找不到 STC8G.H 这个头文件。

解决思路:找到包含或者自己创建文件夹包含这个头文件!

1:打开软件"STC-ISP"

2:点击

截图就是 STC‑ISP 的【头文件】标签页,已经自动生成好了 STC8G 系列的头文件源码,下面给你 2 套方案:方案 A(推荐,最简单,复制进工程文件夹) ;方案 B(安装到 Keil 系统 INC 目录,全局可用)

方案A:不过多赘述;

方案B:

把 STC8G.H 安装到 Keil 系统 INC 目录,全局使用(以后所有 STC8G 工程都能用#include <STC8G.H>)

⚠️必须右键,以管理员身份运行 STC-ISP软件,否则无法写入 Keil 安装目录

  1. STC‑ISP 顶部切换到【Keil 仿真设置】标签页
  2. 点击【添加 STC 单片机到 Keil 中】,选择你的 Keil 安装目录( 文件夹)也就是本文章的第一张截图的
    在弹出文件夹选择窗口,选中文件夹:D:\software\KEILC51(选这一层!不要点进 C51文件夹 里面)
  3. ,确认,会自动把 STC8G.H 写入C51\INC\STC文件夹
  4. 打开 Keil,打开魔法棒(Options for Target → C51 选项卡)
  5. 在 Include Paths 点添加,填入路径:C:\Keil_v5\C51\INC\STC(改成你自己 Keil 实际路径)
  6. main.c 写:#include <STC8G.H>
  7. 编译,警告消除。
总结:
  1. 重新编译,can't open file 'STC8G.H'警告消失。

校验是否成功

打开文件夹 D:\software\KEILC51\C51\INC\STC,如果里面出现STC8G.H,代表导入成功。

烧录补充:

芯片选择要带上针脚数量,否则报错芯片不匹配

相关推荐
Sarvartha10 小时前
内部类知识
java·开发语言
Logic10111 小时前
C语言/数据结构欧几里得算法题解:长方形切割最大正方形——贪心划分计数
c语言·数据结构·算法·贪心算法·时间复杂度·空间复杂度·欧几里得算法
FPGA小徐11 小时前
【一生一芯 / PA】异常响应机制:RISC-V 中 ecall → mtvec → mret 的完整代
开发语言·数据库·c#
北京盛世宏博11 小时前
工业环境监测选型:Modbus TCP以太网温湿度传感器部署、调试、避坑全指南
开发语言·网络·php
沫璃染墨11 小时前
《Linux工程实践篇(二):线程池实战——从线程安全单例到完整源码实现》
linux·开发语言·c++·单例模式·设计模式·系统架构
泡海椒11 小时前
JQuick-Excel 多字段 TRANSFORM:让当前行字段、JContext 与展示列各归其位
开发语言·python·excel
JPower_mr.g11 小时前
SmartCall 音色管理技术解析:基于 SPI 的可扩展音色注册架构
java·开发语言·人工智能·ai·架构·开源
ly768912 小时前
MongoDB 副本集选举风暴排查:从心跳超时到 Journal 刷盘阻塞
数据库·mongodb·php·mongodb 副本集·选举风暴·journal 刷盘·writeconcern
源图客12 小时前
浏览器开发者工具使用
开发语言·php
念何架构之路12 小时前
go-grpc核心抽象接口
开发语言·后端·golang