首页 > 其他分享 >STM89C51开发学习1

STM89C51开发学习1

时间:2024-06-11 23:30:30浏览次数:16  
标签:STM89C51 文件 烧录 int void 学习 单片机 点击 开发

环境安装:

使用Keil uVision4环境进行对51单片机的学习。

在进行使用之前先用keygen进行对软件的破解防止后续发生不必要的问题。

开发环境下载完毕后,检查电脑是否有串口驱动(可以在网上下载)        CH340驱动。

安装stcai-isp-v6.94E驱动对单片机进行程序的烧录。

测试无误之后环境配置结束。

使用KEIL4:

创建工程:

1、进入KEIL4之后点击Project点击New Project创建新的工程。

2、之后点击File创建新的文件eg:main.c

3、右键点击项目文件add file 添加文件到工程中 ,即可编写代码。

3、右键点击项目文件add file 添加文件到工程中 ,即可编写代码。

简单函数列举:

在进行编写代码之气,要加上必要的头文件,针对于STM89C51这种单片机,使用的头文件为#include“reg51.h”    //或者此处写reg52.h都可以

void delay(unsigned int n)
{
    while(n)
    --n;
}

这是最基本的最常用的延时函数,定义了延时函数即可在后续主函数中使用delay进行延时,单位为ms。

#include "reg51.h"

void delay(unsigned int n)
{
	while(n)
	--n;
}

int main(void)
{
	int n = 0;
	int i = 0;
	while(1)
	{
		P1 = 0x01<<i;
		P0 =0X3f;
		delay(100000);
		n=n+1;
		P0 =0X06;
		delay(100000);
		n=n+1;
		P0 =0X5b;
		delay(100000);
		n=n+1;
		P0 =0X4f;
		delay(100000);
		n=n+1;
		P0 =0X66;
		delay(100000);
		n=n+1;
		P0 =0X6d;
		delay(100000);
		n=n+1;
		P0 =0X7d;
		delay(100000);
		n=n+1;
		P0 =0X07;
		delay(100000);
		n=n+1;
		P0 =0X7f;
		delay(100000);
		n=n+1;
		P0 =0X67;
		delay(100000);
		n=n+1;
		if(n==10)
		{	
			n=0;
			i++;
		}
	}
	return 0;
}

第二份为操作数码管循环显示0~9数字。

文件运行:

在编译好文件之后,点击小魔法棒,点击Output ,勾选上creat HEX 这个选项,让工程在编译的时候生成.hex的文件。在stcai-isp-v6.94E驱动中可以打开进行烧录。

1、选择与使用类型相同的芯片型号

2、选择插入电脑时电脑接收到的串口编号

3、打开刚刚生成的.hex文件

4、点击下载,将程序烧录到单片机中。

标签:STM89C51,文件,烧录,int,void,学习,单片机,点击,开发
From: https://blog.csdn.net/weixin_66436813/article/details/139607683

相关文章

  • 【PB案例学习笔记】-05 图片浏览器
    写在前面这是PB案例学习笔记系列文章的第5篇,该系列文章适合具有一定PB基础的读者。通过一个个由浅入深的编程实战案例学习,提高编程技巧,以保证小伙伴们能应付公司的各种开发需求。文章中设计到的源码,小凡都上传到了gitee代码仓库https://gitee.com/xiezhr/pb-project-example.gi......
  • 鸿蒙UI开发快速入门 —— part02: 组件开发
    1.组件基本介绍在ArkUI中,UI显示的内容均为组件,由框架直接提供的称为系统组件,由开发者定义的称为自定义组件。在进行UI界面开发时,通常不是简单的将系统组件进行组合使用,而是需要考虑代码可复用性、业务逻辑与UI分离,后续版本演进等因素。因此,将UI和部分业务逻辑封装成自定义......
  • 【练习代码】6.11 java学习记录:继承与多态(实例:媒体资料库的设计)
    设计一个媒体资料库,能存入不同类别的媒体资料,例如CD与DVD,并且能完成添加与列表等操作,需要些什么?最基础的想法一个代表整体库的DataBase类,内部的属性包括CD和DVD的Arraylist,对应操作通过定义自己的方法来实现,部分代码如下:publicclassDatabase{privateArrayList<CD>......
  • SQL学习-Task01
    SQL语句分为三类:DDL:创建或者删除存储数据用的数据库以及数据库中的表等对象CREATE:创建数据库和表等对象DROP:删除数据库和表等对象ALTER:修改数据库和表等对象的结构DML:用来查询或者变更表中的记录SELECT:查询表中的数据INSERT:向表中插入新数据UPDATE......
  • 【网络编程开发】11.IO模型 12.IO多路复用
    11.IO模型什么是IO:IO是Input/Output的缩写,指的是输入和输出。在计算机当中,IO操作通常指将数据从一个设备或文件中读取到计算机内存中,或将内存中的数据写入设备或文件中。这些设备可以包括硬盘驱动器、网卡、键盘、屏幕等。通常用户进程中的一个完整I/O分为两个阶段......
  • 【网络编程开发】13.套接字属性
    13.套接字属性基本概念设置套接字的选项对套接字进行控制除了设置选项外,还可以获取选项选项的概念相当于属性,所以套接字选项也可说是套接字属性有些选项(属性)只可获取,不可设置;有些选项既可设置也可获取选项的级别一些选项都是针对一种特定的协议一些选项适用于所有类型......
  • 短视频评论截流源码开发思路C#
    源码图镇帖一:准备工作这里我们采用了云技术,并不是通过客户端进行评论数据提取1.1:UI自动操作技术UI自动操作技术,顾名思义就是无需人工干预通过代码的方式让软件进行模拟人工操作,认为是脚本也好什么都可以。这和脚本还不一样,这里就不细说了。为什么获取短视频评论需要自动......
  • JAVA开发 PDF文件生成表格,表格根据内容自动调整高度
    1、展示效果2、相关功能实现JAVA开发使用ApachePDFBox库生成PDF文件,绘制表格3、实现代码importorg.apache.pdfbox.pdmodel.PDDocument;importorg.apache.pdfbox.pdmodel.PDPage;importorg.apache.pdfbox.pdmodel.PDPageContentStream;importorg.apache.pdfbo......
  • JDBC学习记录
    目录1.JDBC概述1.1JDBC是什么?1.2JDBC的本质是什么?1.3为什么要使用JDBC?2.JDBC快速入门2.1JDBC编程步骤2.2具体操作2.3完整实例3.常用API3.1DriverManager3.2Connection3.2.1获取执行对象3.2.2事务管理3.3Statement3.4ResultSet3.5PreparedStatement3.5.1......
  • 详细说说机器学习在自然语言处理的应用
    机器学习在自然语言处理(NLP)中的应用非常广泛,涵盖了多个方面。以下将详细介绍机器学习在NLP中的几个主要应用领域:文本分类与情感分析文本分类:机器学习算法如支持向量机(SVM)、朴素贝叶斯(NaiveBayes)等被广泛应用于文本分类任务,如新闻文章分类、垃圾邮件过滤等。这些算法能够通......