51单片机(STC8) -- 开发环境搭建(Keil C51)

2023-12-15 08:36

本文主要是介绍51单片机(STC8) -- 开发环境搭建(Keil C51),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • STC8H3K系列芯片概述
      • STC8H3K系列芯片选型
      • Keil C51简介
      • Keil C51安装
      • 添加C51芯片包
      • 工程创建与编译
      • 工程烧录

STC8H3K系列芯片概述

文章中所用的芯片选型为STC8H3K64S4,后续STC8案例均以该芯片展开
在这里插入图片描述

  • 内核
    • 超高速 8051 内核(1T),比传统 8051 约快 12 倍以上,指令代码完全兼容传统8051
    • 21个中断源,4 级中断优先级
    • 支持在线仿真

  • 工作电压
    • 1.9V~5.5V

  • 工作温度
    • -40℃~85℃

  • Flash 存储器
    • 最大64K 字节FLASH 程序存储器(ROM),用于存储用户代码
    • 支持用户配置 EEPROM 大小,512 字节单页擦除,擦写次数可达10万次以上
    • 支持在系统编程方式(ISP)更新用户应用程序,无需专用编程器
    • 支持单芯片仿真,无需专用仿真器,理论断点个数无限制

  • SRAM
    • 128 字节内部直接访问 RAM(DATA)
    • 128 字节内部间接访问 RAM(IDATA)
    • 3072 字节内部扩展 RAM(内部 XDATA)

  • 时钟控制
    • 内部高精度IRC(4MHz~45MHz,ISP 编程时选择或手动输入,还可以用户软件分频到较低的频率工作, 如100KHz)
    – 误差±0.3%(常温下 25℃)
    – -1.35%~+1.30%温漂(全温度范围,-40℃~85℃))
    – -0.76%~+0.98%温漂(温度范围,-20℃~65℃)
    • 内部 32KHz 低速 IRC(误差较大)
    • 外部晶振(4MHz~45MHz)和外部时钟
    • 用户可自由选择上面的3种时钟源

  • 复位
    • 硬件复位
    – 上电复位(在芯片未使能低压复位功能时有效)
    – 复位脚复位(高电平复位),出厂时 P5.4 默认为 IO 口,ISP 下载时可将 P5.4 管脚设置为复位脚
    – 看门狗溢出复位
    – 低压检测复位,提供 4 级低压检测电压:2.2V、2.4V、2.7V、3.0V
    • 软件复位
    – 软件方式写复位触发寄存器

  • 中断
    • 提供21 个中断源:INT0(支持上升沿和下降沿中断)、INT1(支持上升沿和下降沿中断)、INT2(只支 持下降沿中断)、INT3(只支持下降沿中断)、INT4(只支持下降沿中断)、定时器0、定时器1、定时 器2、定时器3、定时器4、串口1、串口2、串口3、串口4、ADC 模数转换、LVD 低压检测、SPI、I2C、 比较器、PWMA、PWMB
    • 提供 4 级中断优先级
    • 时钟停振模式下可以唤醒的中断:INT0(P3.2)、INT1(P3.3)、INT2(P3.6)、INT3(P3.7)、INT4(P3.0)、T0(P3.4)、 T1(P3.5)、T2(P1.2)、T3(P0.4)、T4(P0.6)、RXD(P3.0/P3.6/P1.6/P4.3)、RXD2(P1.0/P4.6)、RXD3(P0.0/P5.0)、 RXD4(P0.2/P5.2)、I2C_SDA(P1.4/P2.4/P3.3)以及比较器中断、低压检测中断、掉电唤醒定时器唤醒。

  • 数字外设
    • 5 个16 位定时器:定时器0、定时器1、定时器2、定时器3、定时器4,其中定时器0 的模式3 具有NMI (不可屏蔽中断)功能,定时器0 和定时器1 的模式0 为16 位自动重载模式
    • 4个高速串口:串口1、串口2、串口3、串口4,波特率时钟源最快可为FOSC/4
    • 8 路/2 组高级PWM,可实现带死区的控制信号,并支持外部异常检测功能,另外还支持16 位定时器、8 个外部中断、8 路外部捕获测量脉宽等功能
    • SPI:支持主机模式和从机模式以及主机/从机自动切换
    • I2C:支持主机模式和从机模式
    • MDU16:硬件16 位乘除法器(支持32 位除以16 位、16 位除以16 位、16 位乘16 位、数据移位以及数 据规格化等运算)
    • I/O 口中断:所有的I/O 均支持中断,每组I/O 中断有独立的中断入口地址,所有的I/O 中断可支持4 种 中断模式:高电平中断、低电平中断、上升沿中断、下降沿中断

  • 模拟外设
    • 超高速ADC,支持12 位高精度12 通道(通道0~通道2、通道6~通道14,无P1.3/P1.4/P1.5 端口, 所以少了通道3~5)的模数转换,速度最快能达到800K(每秒进行80 万次ADC 转换)
    • ADC 的通道15 用于测试内部1.19V 参考信号源(芯片在出厂时,内部参考信号源已调整为1.19V)
    • 比较器,一组比较器(比较器的正端可选择CMP+端口和所有的ADC 输入端口,所以比较器可当作多路 比较器进行分时复用)
    • DAC:8 路高级PWM 定时器可当8 路DAC 使用

  • GPIO
    • 最多可达43 个GPIO:P0.0P0.7、P1.0 P1.2、P1.6~ P1.7、P2.0P2.7、P3.0P3.7、P4.0P4.7、P5.0P5.5
    • 所有的 GPIO 均支持如下 4 种模式:准双向口模式、强推挽输出模式、开漏输出模式、高阻输入模式
    • 除P3.0和P3.1外,其余所有I/O口上电后的状态均为高阻输入状态,用户在使用I/O口时必须先设置I/O口模式
    • 另外每个I/O均可独立使能内部4K上拉电阻

  • 封装
    • LQFP48 (9mm9mm)、QFN48 (6mm6mm)、LQFP32 (9mm9mm)、QFN32 (4mm4mm)、TSSOP20 (6.5mm*6.5mm)

STC8H3K系列芯片选型

STC8H3K系列芯片选型表如下,Data Sheet可从官网下载:Data Sheet 下载
STC8H3K系列芯片

Keil C51简介

Keil C51是由美国Keil Software公司出品的专门用于51系列兼容单片机的C语言软件开发系统。它继承于C语言,主要运行于51内核的单片机平台,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因此易学易用。此外,Keil C51提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的全套开发工具。特别是其生成的目标代码效率非常高,多数语句生成的汇编代码紧凑且容易理解,这在开发大型软件时更能体现高级语言的优势。

Keil C51安装

Keil C51安装包可官网下载,目前最新版本9.61:Keil C51 下载
在这里插入图片描述
这里以9.60版本安装为例,小版本区别不大,不一定需要下载最新版本,可按个人需求进行版本安装,双击运行安装程序

在这里插入图片描述
Next
在这里插入图片描述

同意许可协议,Next
在这里插入图片描述

选择安装路径,可自定义路径,路径不要带中文,Next
在这里插入图片描述
填写用户信息,Next
在这里插入图片描述
等待安装
在这里插入图片描述
安装完成,Finish
在这里插入图片描述
管理员权限运行软件,工具激活 dddd
在这里插入图片描述

添加C51芯片包

傻瓜式安装51啥群欧协工具(STC-ISP),可官网直接下载 STC-ISP下载链接
在这里插入图片描述依次选择 keil仿真 👉 单片机型号 👉 添加型号和头文件 👉 选择keil安装路径 👉 确定
在这里插入图片描述添加芯片包后重启Keil
在这里插入图片描述

工程创建与编译

新建一个用于存放工程的文件夹(因为Keil不会给你的工程新建文件夹),如图新建工程
在这里插入图片描述
选择存放的路径(文件夹),工程命名,保存
在这里插入图片描述选择STC芯片包,在下拉芯片列表中找到芯片 STC8H3K64S4,OK
在这里插入图片描述
提示是否复制STARTUP.A51到工程目录中,否
在这里插入图片描述
右键选择工程,选择 Add New Item to Group…
在这里插入图片描述选择需要添加C File(.c),命名,Add
在这里插入图片描述
main.c写上代码框架,点魔术棒配置工程,勾选创建hex文件
在这里插入图片描述
工程编译生成hex文件
在这里插入图片描述

工程烧录

USB连接各自的51开发板和电脑,打开STC-ISP软件,选择芯片 👉 连接串口 👉 修改运行频率 👉 取消复位脚作为I/O 👉 选择烧写文件
在这里插入图片描述
打开工程生成的hex文件
在这里插入图片描述

点击下载/编程,STC-ISP工具开始往开发板中下载文件。状态提示窗口会显示正在检测目标单片机
在这里插入图片描述
单片机进行复位或断电重启。让STC-ISP工具可以检测到单片机并对其进行程序下载,等待程序烧写成功,配置都正确的话会出现如图的烧写成功提示
在这里插入图片描述

这篇关于51单片机(STC8) -- 开发环境搭建(Keil C51)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/495807

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

gradle安装和环境配置全过程

《gradle安装和环境配置全过程》本文介绍了如何安装和配置Gradle环境,包括下载Gradle、配置环境变量、测试Gradle以及在IntelliJIDEA中配置Gradle... 目录gradle安装和环境配置1 下载GRADLE2 环境变量配置3 测试gradle4 设置gradle初始化文件5 i

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo