【单片机】51单片机,晨启科技,板子引脚对应关系

在这里插入图片描述

在这里插入图片描述

一般引脚:

sbit beep=P2^4;	   //将单片机的P2.4端口定义为beep.本口用于屏蔽上电后蜂鸣器响
sbit led=P1^0;	   //将单片机的P1.0端口定义为led,用于点亮LED-D1
sbit DIG1=P0^0;					//数码管位选1
sbit DIG2=P0^1;					//数码管位选2

	P1=0xFF;//初始化P1引脚全部置高,LED全灭
	beep=0;	//蜂鸣器不响
	DIG1=0;	//禁止数码管个位亮
	DIG2=0;	//禁止数码管十位亮


sbit key1=P3^2;	 	 //摇杆A按键
sbit key2=P3^3;      //摇杆B按键
	if(key1==0)		     //检测摇杆A按键是否按下
	{	
		delay(1000);     //消除抖动 一般大约10ms
			if(key1==0)	 //再次判断按键是否按下
			{			
			  LED=~LED;	 //每按下一次,P1口状态求反一次
			}
		while(!key1);	 //等待按键松开				
	}

sbit beep=P2^4;	   	   //该口接蜂鸣器驱动三极管b极,1导通,0截断
beep=1;		//蜂鸣器响

#define SEG P1					//将P1口定义为SEG 后面就可以使用SEG代替P1口  数码管段选



/*口袋板OLED电路引脚定义*/
sbit OLED_SCL=P4^3;//SCL-D0
sbit OLED_SDA=P4^1;//SDA-D1
sbit OLED_RES =P3^6;//RES
sbit OLED_DC =P3^7;//DC
sbit OLED_CS=P2^7; //CS



sbit CLOCK=P3^5; 	/*2543时钟*/ 
sbit D_IN=P4^0; 	/*2543输入*/ //【注意:此处是口袋实验室连接引脚】
//sbit D_IN=P1^7; 	/*2543输入*/ //【注意:此处是仿真连接引脚,仿真时请使用本行定义并注释掉上一行】
sbit D_OUT=P0^2; 	/*2543输出*/ 
sbit _CS=P3^4; 		/*2543片选*/ 



sbit  DIN=P2^0;
sbit  SCLK=P1^6; 
sbit  CS=P1^7;
`

``

数码管显示程序:

```go
/**************************************************************************************
——晨启科技——
实验现象:两位数码管的个位数位(或十位数位,由学员自己选择)显示数字

***************************************************************************************/

#include "STC89C5xRC.h"		    //STC89C52RC的头文件
typedef unsigned int u16;	 	//对数据类型进行声明定义
typedef unsigned char u8;


sbit beep = P2^4;			 	//蜂鸣器引脚
sbit DIG1=P0^0;					//数码管位选1
sbit DIG2=P0^1;					//数码管位选2

u8 seg7_table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};	  //共阳数码管0~9段码
#define SEG P1					//将P1口定义为SEG 后面就可以使用SEG代替P1口

/*******************************************************************************
* 函 数 名         : delay
* 函数功能		   : 大致延时函数
* 输    入         : ms		(ms=1时,大约延时了1ms)
* 输    出         : 无
*******************************************************************************/
void delay(int ms)
{
    int ii,jj;
    if (ms<1) ms=1;
    for(ii=0;ii<ms;ii++)
        for(jj=0;jj<500;jj++);

}

/*******************************************************************************
* 函 数 名         : Seg_Display_Left()
* 函数功能		   : 数码管显示函数。数码管十位数位置显示一个数字
* 输    入         : x		(x为0~9任何一个整数,它会显示在数码管上)
* 输    出         : 无
*******************************************************************************/
void Seg_Display_Left(u8 x)
{

    DIG2=0;			  		 //个位数 数位 位选禁止(共阳数码管的共阳供电脚)
    DIG1=1;					 //十位数 数位 位选允许
    SEG=seg7_table[x];	     //【举例】例如个位数需要显示4,seg7_table[4]对应0x99,数码管会显示“4”
    //事实上每个时刻只有一位数码管会亮,利用人眼视觉残留效果
    delay(4);					 //给一个合适的延时,人眼看不出闪动即可

}

/*******************************************************************************
* 函 数 名         : Seg_Display_Right()
* 函数功能		   : 数码管显示函数。数码管个位数位置显示一个数字
* 输    入         : y      (y为0~9任何一个整数,它会显示在数码管上)
* 输    出         : 无
*******************************************************************************/
void Seg_Display_Right(u8 y)
{
    DIG2=1;					 //个位数数位位选允许
    DIG1=0;					 //十位数数位位选禁止
    SEG=seg7_table[y];	     //【举例】例如个位数需要显示4,seg7_table[4]对应0x99,数码管会显示“4”
    delay(4);					 //事实上每个时刻只有一位数码管会亮,利用人眼视觉残留效果
}							 //



/*******************************************************************************
* 函 数 名       : main
* 函数功能		 : 主函数
* 输    入       : 无
* 输    出    	 : 无
*******************************************************************************/
void main()
{
    beep=0;		   //不允许蜂鸣器蜂鸣
    delay(500);    //等待上电稳定
    while(1)
    {
        /*方法一:数码管左边那一位(十位)显示数字6*/
        //Seg_Display_Left(6);
        /*方法二:数码管右边那一位(个位)显示数字8*/
        Seg_Display_Right(7);
        //方法一和方法二任选一种。另一种请屏蔽掉。否则就是显示两位数了
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/68720.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

树莓派安装Ubuntu系统(无屏幕)

树莓派安装ubuntu系统 前言 软件需要: 1.方案一 win32diskimager-1.0.0-install.exe SDFormatterha Ubuntu镜像&#xff08;可以官网下载也可以清华源&#xff09; 方案二: 树莓派镜像烧录器 树莓派镜像烧录器直达下载 硬件需要: 64GB内存卡&#xff08;推荐Sanddisk Ultra&am…

Java并发编程第4讲——Java中的锁(知识扫盲)

目录 一、锁的相关概念 1.1 什么是锁 1.2 为什么需要锁 1.3 Java中锁的分类 二、synchronized关键字 2.1 三个特点 2.2 三种表现形式&#xff08;&#x1f64b;‍♂️&#xff09; 2.3 sychronized是怎么实现的&#xff08;&#x1f64b;‍♂️&#xff09; 2.4 JDK1.…

用MariaDB创建数据库,SQL练习,MarialDB安装和使用

前言&#xff1a;MariaDB数据库管理系统是MySQL的一个分支&#xff0c;主要由开源社区在维护&#xff0c;采用GPL授权许可 MariaDB的目的是完全兼容MySQL&#xff0c;包括API和命令行&#xff0c;使之能轻松成为MySQL的代替品。在存储引擎方面&#xff0c;使用XtraDB来代替MySQ…

有血有肉的PPT

1、PPT是Powerpoint缩写 2、引申的含义是Powerpoint Power(力量/能量&#xff09; Point(观点/要点) 3、用PPT做的文档是讲演稿&#xff0c;讲演的内容要有力度&#xff0c;之所以要去演讲是为了能够影响受众 4、其次演讲稿上的内容要列出要点、表明观点&#xff0c;所以一般P…

Jmeter入门之digest函数 jmeter字符串连接与登录串加密应用

登录请求中加密串是由多个子串连接&#xff0c;再加密之后传输。 参数连接&#xff1a;${var1}${var2}${var3} 加密函数&#xff1a;__digest &#xff08;函数助手里如果没有该函数&#xff0c;请下载最新版本的jmeter5.0&#xff09; 函数助手&#xff1a;Options > …

2.CUDA 编程手册中文版---编程模型

2.编程模型 更多精彩内容&#xff0c;请扫描下方二维码或者访问https://developer.nvidia.com/zh-cn/developer-program 来加入NVIDIA开发者计划 本章通过概述CUDA编程模型是如何在c中公开的&#xff0c;来介绍CUDA的主要概念。 编程接口中给出了对 CUDA C 的广泛描述。 本章…

在Ubuntu中使用Docker启动MySQL8的天坑

写在前面 简介&#xff1a; lower_case_table_names 是mysql设置大小写是否敏感的一个参数。 1.参数说明&#xff1a; lower_case_table_names0 表名存储为给定的大小和比较是区分大小写的 lower_case_table_names 1 表名存储在磁盘是小写的&#xff0c;但是比较的时候是不区…

微服务Eureka注册中心

目录 一、Eureka的结构和作用 二、搭建eureka-server 三、服务注册 四、服务发现 假如我们的服务提供者user-service部署了多个实例&#xff0c;如图&#xff1a; 存在的问题&#xff1a; order-service在发起远程调用的时候&#xff0c;该如何得知user-service实例的ip地址…

使用自己的数据集预加载 Elasticsearch

作者&#xff1a;David Pilato 我最近在讨论论坛上收到一个问题&#xff0c;关于如何修改官方 Docker 镜像以提供一个现成的 Elasticsearch 集群&#xff0c;其中已经包含一些数据。 说实话&#xff0c;我不喜欢这个想法&#xff0c;因为你必须通过提 entrypoint.sh 的分叉版本…

管理类联考——逻辑——论证逻辑——汇总篇——真题和典例——解释

解释 1. 解释现象 199-2016-1-42——解释现象——并列现象——在二者之间建立联系 某公司办公室茶水间提供自助式收费饮料。职员拿完饮料后&#xff0c;自己把钱放到特设的收款箱中。研究者为了判断职员在无人监督时&#xff0c;其自律水平会受哪些因素的影响&#xff0c;特…

vscode的ros拓展(插件)无法渲染urdf

文章目录 事件背景资料调查解决方案 事件背景 之前在vscode中一直用得好好的urdf预览功能&#xff0c;突然在某一天&#xff0c;不行了。 执行 URDF Preview之后&#xff0c;虽然弹出了一个URDF Preview的窗口&#xff0c;但是这个窗口里面啥都没有。没有网格、没有模型。 一开…

低成本无刷高速吹风机单片机方案

高速吹风机的转速一般是普通吹风机的5倍左右。一般来说&#xff0c;吹风机的电机转速一般为2-3万转/分钟&#xff0c;而高速吹风机的电机转速一般为10万转/分钟左右。高转速增加了高风速。一般来说&#xff0c;吹风机的风力只有12-17米/秒&#xff0c;而高速吹风机的风力可以达…

uniapp 使用canvas画海报(微信小程序)

效果展示&#xff1a; 项目要求&#xff1a;点击分享绘制海报&#xff0c;并实现分享到好友&#xff0c;朋友圈&#xff0c;并保存 先实现绘制海报 <view class"data_item" v-for"(item,index) in dataList" :key"index"click"goDet…

CSDN到底要多少积分才有排名(图解)

2016年8月16日的截图&#xff1a; 2016年8月17日的截图&#xff1a; CSDN的排名是完全按照积分排的&#xff0c;只隔了22分而已&#xff0c;千里之外和2万名的差别就是卡在这个地方。 2016年10月18日的截图&#xff1a; 这是刚刚进入前7000名&#xff0c;刚好访问也是刚刚突破4…

持有PMP证书,可申请CSPM证书!

一&#xff0c;CSPM介绍 CSPM的全称是&#xff1a;项目管理专业人员能力评价&#xff0c;是我们国内的“PMP”&#xff0c;是我们中国人自己的项目管理专业人士评价指南&#xff0c;符合中国国情且符合中国未来发展的项目管理专业人员能力评价标准。 2022年10月12日发布实施了…

Word转PDF工具哪家安全?推荐好用的文件格式转换工具

Word文档是我们最常见也是最常用的办公软件&#xff0c;想必大家都知道了Word操作起来十分的简单&#xff0c;而且功能也是比较齐全的。随着科技的不断进步&#xff0c;如今也是有越来越多类型的办公文档&#xff0c;PDF就是其中之一&#xff0c;那么word转pdf怎么转?Word转PD…

企业权限管理(七)-权限操作

1. 数据库与表结构 1.1 用户表 1.1.1 用户表信息描述 users 1.1.2 sql语句 CREATE TABLE users( id varchar2(32) default SYS_GUID() PRIMARY KEY, email VARCHAR2(50) UNIQUE NOT NULL, username VARCHAR2(50), PASSWORD VARCHAR2(50), phoneNum VARCHAR2(20), STATUS INT )…

Godot 4 源码分析 - 文件读入编码处理

今天需要读入xml文件进行处理&#xff0c;结果读入一个带中文的文件时&#xff0c;出错了。当然程序还能运行&#xff0c;但编译器一直报错&#xff0c;而且XML解析也不正确 单步调试发现读入的内容出现乱码&#xff0c;具体逻辑&#xff1a; String FileAccess::get_as_text…

Android:自定义沿着曲线轨迹移动

前言 前几天&#xff0c;后台有老铁留言&#xff0c;说有个需求&#xff0c;画两条曲线&#xff0c;中间是一个小球&#xff0c;沿着两条线中间的轨迹从左往右移动&#xff0c;让提供个思路&#xff0c;做为一个极度宠粉的博主&#xff0c;思路不仅要提供&#xff0c;实现方案也…

修改Egohands公开数据集,用于YOLOv5训练通用手部检测模型

〇、背景&#xff1a; 项目需要&#xff0c;需要利用摄像头对人手进行实时监测&#xff0c;最先考虑到的就是简单易用且高效的YOLOv5&#xff0c;很快找到了公开数据集&#xff1a;Egohands EgoHands: A Dataset for Hands in Complex Egocentric Interactions | IU Computer…