51单片机教程(二)- 创建项目
1 创建项目
-
创建项目存储文件夹:C51Project
-
打开Keil5软件,选择 Project -> New uVision Project:


-
选择项目路径,即刚才创建的文件夹
-
选择芯片,选择 Microchip(微型集成电路),直接搜索【AT89C52】,点击【OK】

-
不加载启动文件到项目,点击【否】

-
创建【main.c】文件

-
添加到项目组,选择 main.c 文件


-
准备测试程序
#include <reg52.h>/* 熄灭LED1 */#define LED P1void main() {while(1){LED = 0x01;} } -
运行设置
-
点击【魔法棒】图标

-
晶振设置

-
生成 hex 文件(勾选 Create HEX File),点击OK

-
-
编译程序
- 观察第3步,需保证项目运行:无错误(0 Error)

- 观察第3步,需保证项目运行:无错误(0 Error)
2 烧录软件
1 下载
-
官网:https://www.stcmcu.com/

2 操作
-
硬件连接:USB连接上开发板与单片机开发板,按下电源键
-
软件操作
-
打开【stc-sip.exe】

-
软件设置
- 单片机型号:STC89C52RC
- 串口号:USB-SERIALCH340(COM6)
-
下载程序
- 点击STC-ISP软件界面中【打开程序文件 xxx.hex】
- 点击【下载/编程】
- 注意:在烧录程序时,按2次电源按钮
-
-
等待烧录
- 出现:仍在连接中,请给 MCU 上电,将MCU重启。
3 常见问题
1 设备管理器无端口选项
-
点击设备管理器中的
操作,选择添加过时硬件
-
添加硬件,点击
下一页
-
硬件驱动向导,默认选择(搜索并自动安装硬件(推荐))选项,选择
下一页
-
从列表中选择,点击
下一页
-
选择安装的硬件设备,下滑找到
端口(COM 和 LPT),点击下一页
-
选择为此设备安装的设备驱动程序,选择
标准端口类型,型号选择通信端口,点击下一页
-
向导准备安装你的硬件窗口,点击
下一页
-
正在完成添加硬件向导窗口,点击
完成
-
这样就可以在设备管理器界面,看到
端口选项了
2 设置较小的COM口
-
选择对应的端口(USB-SERIAL CH340),右击选择
属性
-
设置较小的COM口,避免在STC-ISP中找不到对应的 COM 口。

4 项目创建总结
- project --》第1项:new …
- 选择项目的存储位置,设置项目的名称(不要纯数字、尽量不要用中文)
- 选择单片机:搜索 AT89C52 (atc 三个字母大小写都可以),选到AT89C52
- 是否将 .a51 添加到项目里,直接选否
- 新建文件:file 下面 图标
- 保存文件: xxx.c 【记得加 .c】
- 将 .c文件添加至工程中【操作看上面的截图】
- 编写代码
- 设置运行时产生 hex 文件【操作看上面的截图】
- 编译代码【选择file 下的第3排:第2或第3个图标】,看运行结果:
creating hex file from “.\Objects\ledControl”…
“.\Objects\ledControl” - 0 Error(s), 0 Warning(s). 表示成功 - 打开烧录软件,选择好单片机的型号(STC89C52RC)、端口(COMx USB xxx CH340)
- 点击【打开程序文件】,选择项目的 Objects 目录下的 xx.hex
- 点击【下载/编程】,给单片机重启,等待出现:下载成功,观察板子上的效果
相关文章:
51单片机教程(二)- 创建项目
1 创建项目 创建项目存储文件夹:C51Project 打开Keil5软件,选择 Project -> New uVision Project: 选择项目路径,即刚才创建的文件夹 选择芯片,选择 Microchip(微型集成电路)࿰…...
Rust 图形界面开发——使用 GTK 创建跨平台 GUI
第五章 图形界面开发 第一节 使用 GTK 创建跨平台 GUI GTK(GIMP Toolkit)是一个流行的开源跨平台图形用户界面库,适用于创建桌面应用程序。结合 Rust 的 gtk-rs 库,开发者能够高效地构建现代化 GUI 应用。本节将详细探讨 GTK 的…...
Hellinger Distance(赫林格距离)
Hellinger Distance(赫林格距离)是一种用于衡量两个概率分布相似度的距离度量。它通常用于概率统计、信息论和机器学习中,以评估两个分布之间的相似性。Hellinger距离的值介于0和1之间,其中0表示两个分布完全相同,1表示…...
【系统架构设计师】七、设计模式
7.1 设计模式概述 设计经验在实践者之间日益广泛地利用,描述这些共同问题和解决这些问题的方案就形成了所谓的模式。 7.1.1 设计模式的历史 建筑师Christopher Alexander首先提出了模式概念,他将模式分为了三个部分: 特定的情景ÿ…...
新工具可绕过 Google Chrome 的新 Cookie 加密系统
一位研究人员发布了一款工具,用于绕过 Google 新推出的 App-Bound 加密 cookie 盗窃防御措施并从 Chrome 网络浏览器中提取已保存的凭据。 这款工具名为“Chrome-App-Bound-Encryption-Decryption”,由网络安全研究员亚历山大哈格纳 (Alexander Hagenah…...
模型拆解(三):EGNet、FMFINet、MJRBM
文章目录 一、EGNet1.1编码器:VGG16的扩展网络 二、EMFINet2.1编码器:三分支并行卷积编码器2.2CFFM:级联特征融合模块2.3Edge Module:突出边缘提取模块2.4Bridge Module:桥接器2.5解码器:深度特征融合解码器…...
齐次线性微分方程的解的性质与结构
内容来源 常微分方程(第四版) (王高雄,周之铭,朱思铭,王寿松) 高等教育出版社 齐次线性微分方程定义 d n x d t n a 1 ( t ) d n − 1 x d t n − 1 ⋯ a n − 1 ( t ) d x d t a n ( t ) x 0 \frac{\mathrm{d}^nx}{\mathrm{d}t^n} a_1(t)\frac{\mathrm{d}^{n-1}x}{\math…...
Python-Celery-基础用法总结-安装-配置-启动
文章目录 1.安装 Celery2.配置 Celery3.启动 Worker4.调用任务5.任务装饰器选项6.任务状态7.定期任务8.高级特性9.监控和管理 Celery 是一个基于分布式消息传递的异步任务队列。它专注于实时操作,但也支持调度。Celery 可以与 Django, Flask, Pyramid 等 Web 框架集…...
vue中的nextTick() - 2024最新版前端秋招面试短期突击面试题【100道】
nextTick() - 2024最新版前端秋招面试短期突击面试题【100道】 🔄 在Vue.js中,nextTick 是一个重要的方法,用于在下次DOM更新循环结束之后执行回调函数。理解 nextTick 的原理和用法可以帮助你更好地处理DOM更新和异步操作。以下是关于 next…...
5G学习笔记三之物理层、数据链路层、RRC层协议
5G学习笔记三之物理层、数据链路层、RRC层协议 物理层位于无线接口协议栈的最底层,作用:提供了物理介质中比特流传输所需要的所有功能。 1.3.1 传输信道的类型 物理层为MAC层和更高层提供信息传输的服务,其中,物理层提供的服务…...
Ubuntu 通过Supervisor 或者 systemd 管理 .Net应用
在 Ubuntu 上安装 .NET 8.0,通过 supervisor 或 systemd 管理 .NET 应用服务,确保应用能够自动启动、运行以及在崩溃时重启。 1. 安装 .NET 8.0 最新的Ubuntu版本已经不需要注册 Microsoft 包存储库了,具体的可以参考微软官方文档安装&…...
超好用的视频剪辑软件分享:10款剪辑软件推荐
视频剪辑软件哪个比较好用?无论是短视频创作者、专业剪辑师,还是影视后期制作团队,选择一款合适的视频剪辑软件至关重要。今天,我将为大家分享几款超好用的视频剪辑软件,并介绍视频剪辑的六大核心流程。 1.影忆 特点&a…...
5G三大应用场景中的URLLC
5G三大应用场景中的URLLC 5G三大应用场景中的URLLC 1 Urllc不是一个独立的技术,更不是一张独立的网络,他是5G所谓的新空口标准NR(New Radio)中,涉及大规模降低时延、提高可靠性的相关技术; 2 Urllc在目前的…...
PyMOL中常用的命令列表
PyMOL中常用的命令列表 PyMOL中常用的命令列表,包括了加载文件、去除水分子、改变颜色、显示样式和图形优化等操作,可以帮助你完成全方位的分子展示设置。 基础命令流程 加载分子结构 load your_file.pdb # 加载PDB文件去除水分子 remove solvent …...
坏块处理 ORA-01578: ORACLE data block corrupted (file # 3, block # 152588)
帮客户检查环境时,发现sysaux表空间的数据文件有坏块,8月25日发生的,备份保留3个月,直接恢复处理。 rman备份log报错如下 RMAN-00571: RMAN-00569: ERROR MESSAGE STACK FOLLOWS RMAN-00571: RMAN-03009: failure of backu…...
像`npm i`作为`npm install`的简写一样,使用`pdm i`作为`pdm install`的简写
只需安装插件pdm-plugin-i即可: pdm plugin add pdm-plugin-i 然后就可以愉快地pdm i了,例如: git clone https://github.com/waketzheng/fast-dev-cli cd fast-dev-cli python -m pip install --user pipx pipx install pdm pdm plugin a…...
DNS域名解析服务器--RHCE
1.DNS简介 DNS ( Domain Name System )是互联网上的一项服务,它作为将域名和 IP 地址相互映射的一个分布式 数据库,能够使人更方便的访问互联网 DNS 系统使用的是网络的查询,那么自然需要有监听的 port 。 DNS 使用的是…...
数据库物化视图的工作原理与Java实现
引言 物化视图(Materialized View)是数据库中一种特殊的对象,它存储了查询结果的物理副本,使得复杂查询的结果可以快速地被访问。本文将详细介绍物化视图的工作原理、技术策略,并提供Java代码示例。 1. 物化视图的基…...
炫酷的登录框!(附源码)
大家想看什么前端效果请留言 预览效果 源码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>登录页…...
使用Python实现智能生态系统监测与保护的深度学习模型
随着人类活动的增加,生态系统受到的威胁也在不断加剧。为了更好地保护我们的生态环境,智能生态系统监测与保护成为了一项重要的任务。通过深度学习技术,我们可以实现生态系统的自动化监测与管理,从而及时发现和应对环境变化。本文将详细介绍如何使用Python构建一个深度学习…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...
