当前位置: 首页 > news >正文

【极光 Orbit•STC8A-8H】02. STC8 单片机工程模板创建

【极光 Orbit•STC8A-8H】02. STC8 单片机工程模板创建

七绝·单片机

小小芯片大乾坤,
集成世界在其中。
初学虽感千重难,
实践方知奥妙通。

今天的讲法和过去不同,直接来一个多文件模块化的工程模板创建,万事开头难,我们把难事开头做,后面的就简单了,一个月之后感谢我吧。

本教程将详细指导你完成 STC8A8K64S4 单片机工程模板的创建与使用。我们将基于 Keil C51 开发工具,详细讲解每一步操作,包括文件结构的创建、移植过程、移植文件名称及对应目录,以及 Keil 分组目录和对应文件的说明。


1️⃣ Keil C51 开发环境安装

1.1 Keil C51 介绍

Keil C51 是 Keil 公司推出的用于 8051 系列单片机的集成开发环境(IDE),支持 C 语言和汇编语言开发。

1.2 Keil C51 下载与安装

  1. 访问下载页面
    打开 Keil 官网:https://www.keil.com,下载 Keil C51 安装包。

  2. 安装 Keil C51

    • 右键以管理员身份运行安装包。
    • 按照提示选择安装路径(路径中不能包含中文)。
    • 填写个人信息(可随意填写)。
    • 等待安装完成。
  3. 激活 Keil C51

    • 以管理员身份运行 Keil C51。
    • 点击 File -> License Management
    • 点击 Get LIC via Internet,按照提示填写信息并获取激活码。
    • 将激活码粘贴到 New License ID Code (LIC) 中,点击 Add LIC 完成激活。

2️⃣ STC8A8K64S4 器件支持安装

2.1 下载 STC-ISP 工具

  1. 访问 STC 官网
    打开 STC 官网:https://www.stcmcudata.com,下载 STC-ISP 工具。

  2. 安装 ST极-ISP 工具

    • 双击安装包,按照提示完成安装。

2.2 添加 STC 器件支持

  1. 打开 STC-ISP 工具
    安装完成后,打开 STC-ISP 工具。

  2. 添加器件支持

    • 在 STC-ISP 工具中,点击 Keil 仿真设置 选项卡。
    • 点击 添加 STC 仿真驱动到 Keil 中,选择 Keil 的安装路径。
    • 等待驱动添加完成。
  3. 验证器件支持

    • 打开 Keil C51,点击 Project -> Manage -> Pack Installer,查看是否已添加 STC8A8K64S4 器件支持。

3️⃣ 工程模板创建与使用

3.1 创建新工程

  1. 新建工程文件夹
    在本地创建一个文件夹,例如 STC8A_Project,注意路径中不能包含中文。

  2. 打开 Keil C51 并创建工程

    • 打开 Keil C51,点击 Project -> New uVision Project
    • 选择刚才创建的文件夹,输入工程名称,例如 STC8A_Template
    • 点击 Save
  3. 选择芯片型号
    在弹出的窗口中选择 STC8A8K64S4(根据实际芯片型号选择),点击 OK

3.2 文件结构创建

  1. 创建文件夹结构
    在工程文件夹 STC8A_Project 中创建以下文件夹:
    • Projects:存放不同 IDE 的工程文件。
      • MDK-RAM:存放 Keil C51 极工程文件。
    • Drivers:存放所有驱动相关文件。
      • BSP:存放底层相关的支持包。
      • Module:存放各类软件模块,如定时器、状态机等。
      • Core:存放核心文件。
      • Libraries:存放 STC8A 外设库文件。
    • APP:存放应用程序,由用户编写,包含 main 函数。
  2. 目录结构图示
STC8A_Project/
├── Projects/
│   └── MDK-RAM/
├── Drivers/
│   ├── BSP/
│   ├── Module/
│   ├── Core/
│   └── Libraries/
└── User/
  1. 复制库文件与启动文件
    从 STC8A 外设库中复制以下文件到对应文件夹:
    • Drivers/Core
    • Drivers/STC8A_Libraries

3.3 Keil 分组目录与对应文件

  1. 在 Keil 中添加分组
    • 右键 Target 1,选择 Add Group,创建以下分组:
      • User
      • BSP
      • Module
      • Core
      • Libraries
  2. 添加文件到分组
    • BSP 分组:添加 Drivers/BSP 文件夹中的文件。
    • Module 分组:添加 Drivers/Module 文件夹中的文件。
    • Libraries 分组:添加 Drivers/Libraries/Src 文件夹中的所有 .c 文件。
    • Core 分组:添加 Drivers/Core 文件夹中的 所有 .c` 文件。
    • User 分组:添加 APP` 文件夹中的文件。
  3. 添加头文件路径
    • 点击 Project -> Options for Target -> C/C++
    • Include Paths 中添加以下路径:
      • Drivers/BSP
      • Drivers/Module
      • Drivers/Libraries/Inc
      • Drivers/Core
      • User

3.4 编写主程序

  1. 创建 main.c 文件

    • 右键 User 分组,选择 Add New Item to Group,创建 main.c 文件。
  2. 编写代码
    main.c 中添加以下代码:

#include "stc8a8k64s4.h"
#include "board_init.h"void Delay(uint32_t count) {while (count--);
}int main(void) {// 板子初始化Board_Init();// 配置 P1.0 为推挽输出P1M0 |= 0x01;  // P1.0 推挽输出P1M1 &= ~0x01;while (1) {P1_0 = 0;  // 点亮 LEDDelay(1000000);P1_0 = 1;  // 熄灭 LEDDelay(1000000);}
}

3.5 编译与下载

  1. 编译工程
    点击 Build 按钮(或按 F7),确保没有错误和警告。

  2. 下载程序
    连接开发板,点击 Download 按钮(或按 F8),将程序下载到开发板。


4️⃣ 使用例程或模板

4.1 复制模板工程

  1. 从 STC8A 外设库中复制模板
    找到 STC8A 外设库,将其复制到本地并重命名。

  2. 打开工程
    在 Keil C51 中打开复制的工程文件(.uvprojx)。

4.2 修改头文件路径

  1. 调整头文件路径
    点击 Project -> Options for Target -> C/C++,修改头文件路径为相对路径。

4.3 编译与下载

  1. 编译工程
    点击 Build 按钮,确保没有错误和警告。

  2. 下载程序
    连接开发板,点击 Download 按钮,将程序下载到开发板。


5️⃣ 总结

通过本教程,你已经完成了 STC8A8K64S4 开发环境的安装、器件支持的添加以及工程模板的创建与使用。接下来,你可以基于模板开发自己的应用程序,探索 STC8A8K64S4 的更多功能!🌟

http://www.lryc.cn/news/547454.html

相关文章:

  • Spring Boot WebFlux 中 WebSocket 生命周期解析
  • PostgreSQL中的事务隔离
  • 基于Rye的Django项目通过Pyinstaller用Github工作流简单打包
  • ubuntu 20.04 C++ 源码编译 cuda版本 opencv4.5.0
  • 【VUE】第一期——初使用、基本语法
  • 计算光学成像与光学计算概论
  • 开启科创服务新篇章:八月瓜科技CRM数字化管理系统成功上线
  • AI提示词(Prompt)的理解和学习指南
  • 记录一些面试遇到的问题
  • OpenHarmony4.0_Linux环境搭建
  • DeepSeek开源Day5:3FSsmallpond技术详解
  • Java集合面试篇
  • plt和cv2有不同的图像表示方式和颜色通道顺序
  • Sqlserver安全篇之_手工创建TLS用到的pfx证书文件
  • 基于RapidOCR与DeepSeek的智能表格转换技术实践
  • 创建阿里云CDN
  • tomcat的web管理
  • 【Linux系统】-----进程初相识:原理与概念全解析
  • 分布式系统设计(架构能力)
  • 171. Excel 表列序号
  • 在 Java 中使用 Apache POI 为 Word 文档添加水印
  • 贪心算法二
  • 【大模型安全】大模型的技术风险
  • Java 线程池中 shutdown 与 shutdownNow 的区别是什么?
  • 基于Spring Boot的共享学习经验系统的设计与实现
  • 【简单的C++围棋游戏开发示例】
  • 单片机中的基础外设GPIO的知识和应用—(6)
  • 10-Agent循环分析新闻并输出总结报告
  • 十二、Redis Cluster(集群)详解:原理、搭建、数据分片与读写分离
  • 贪心算法解题框架+经典反例分析,效率提升300%