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

news/2024/12/19 9:53:17/

在这里插入图片描述

在这里插入图片描述

一般引脚:

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;					//数码管位选2P1=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);     //消除抖动 一般大约10msif(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; //CSsbit 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;					//数码管位选2u8 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);//方法一和方法二任选一种。另一种请屏蔽掉。否则就是显示两位数了}
}

http://www.ppmy.cn/news/1022620.html

相关文章

ROS安装与测试

安装教程 https://www.bilibili.com/video/BV1aP41137k9/?spm_id_from333.788&vd_source346f070855ab9a424232ab8e9f779ddb https://www.bilibili.com/video/BV1Xt4y177iW/?spm_id_from333.788&vd_source346f070855ab9a424232ab8e9f779ddb 官网 https://ros.org/ 手…

苏州OV泛域名RSA加密算法https

RSA加密算法是一种非对称加密算法&#xff0c;它被广泛应用于信息安全领域。与对称加密算法不同&#xff0c;RSA加密算法使用了两个密钥&#xff0c;一个公钥和一个私钥。公钥可以公开&#xff0c;任何人都可以使用它加密信息&#xff0c;但只有私钥的持有者才能解密信息。RSA加…

【网络基础实战之路】基于BGP协议连接三个AS区域的实战详解

系列文章传送门&#xff1a; 【网络基础实战之路】设计网络划分的实战详解 【网络基础实战之路】一文弄懂TCP的三次握手与四次断开 【网络基础实战之路】基于MGRE多点协议的实战详解 【网络基础实战之路】基于OSPF协议建立两个MGRE网络的实验详解 【网络基础实战之路】基于…

Flv格式视频怎么转MP4?视频格式转换方法分享

FLV格式的视频是一种早期的视频格式&#xff0c;不支持更高的分辨率和比特率&#xff0c;这意味着视频的清晰度和质量受限制&#xff0c;无法很好地保留细节和质量&#xff0c;这种格式的视频已经逐渐被更高质量的视频格式所替代&#xff0c;例如MP4格式&#xff0c;不仅具有很…

Observability:识别生成式 AI 搜索体验中的慢速查询

作者&#xff1a;Philipp Kahr Elasticsearch Service 用户的重要注意事项&#xff1a;目前&#xff0c;本文中描述的 Kibana 设置更改仅限于 Cloud 控制台&#xff0c;如果没有我们支持团队的手动干预&#xff0c;则无法进行配置。 我们的工程团队正在努力消除对这些设置的限制…

[保研/考研机试] KY56 数制转换 北京大学复试上机题 C++实现

题目链接&#xff1a; 数制转换https://www.nowcoder.com/share/jump/437195121691734210665 描述 求任意两个不同进制非负整数的转换&#xff08;2进制&#xff5e;16进制&#xff09;&#xff0c;所给整数在long所能表达的范围之内。 不同进制的表示符号为&#xff08;0&a…

MongoDB 分片集群

在了解分片集群之前&#xff0c;务必要先了解复制集技术&#xff01; 1.1 MongoDB复制集简介 一组Mongodb复制集&#xff0c;就是一组mongod进程&#xff0c;这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性&#xff0c;这是生产部署的基础。 1.1.1 复制集…

Unity使用C# Protobuf源码

目录 第一步&#xff1a;下载源码 第二步&#xff1a;运行C#构建文件 第三步&#xff1a;处理报错&#xff08;如果你已安装对应的SDK则不会报错&#xff09; 第四步&#xff1a;复制库文件到你的工程 第一步&#xff1a;下载源码 protobuf github源码https://github.com/p…