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,代表导入成功。

烧录补充:

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

相关推荐
guo_wen_qiang10 小时前
使用spring-data-mongodb操作mongo记录
数据库·mongodb
qq_4017004110 小时前
Qt 组播(Multicast)实战详解
开发语言·qt
Sapphire~10 小时前
odoo-095 视图的重写规则(全部重写还是部分改写)
开发语言·javascript·ecmascript
利威尔xu11 小时前
Go GMP 调度器 10 个高频追问:3 个线上故障让 P99 从 80ms 飙到 2s、10 万 goroutine 泄漏
开发语言·后端·面试·性能优化·golang
中电金信11 小时前
从业务调优到分层缓存:DeepSeek V4 Flash的PPU实践
java·开发语言
梦影_11 小时前
MySQL进阶教程(二)—— 储存过程与触发器(下)
开发语言·数据库·后端·sql·mysql·oracle·数据库开发
lg_cool_11 小时前
Python 代码打包
开发语言·python
木雷坞11 小时前
PHP两项9.2分漏洞:Docker容器更新与版本核验教程
开发语言·docker·php
2601_9628857211 小时前
如何用 Python 做 MACD 金叉全市场选股?
开发语言·python
FfHUCisI11 小时前
无锁 Reactor 网络模型与 gnet / evio 架构拆解
服务器·开发语言·后端·golang