【单片机】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; //数码管位选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);//方法一和方法二任选一种。另一种请屏蔽掉。否则就是显示两位数了}
}
相关文章:

【单片机】51单片机,晨启科技,板子引脚对应关系
一般引脚: sbit beepP2^4; //将单片机的P2.4端口定义为beep.本口用于屏蔽上电后蜂鸣器响 sbit ledP1^0; //将单片机的P1.0端口定义为led,用于点亮LED-D1 sbit DIG1P0^0; //数码管位选1 sbit DIG2P0^1; //数码管位选2P10xFF;//初始化P1引脚全部置高&a…...
Swift 数据类型
在我们使用任何程序语言编程时,需要使用各种数据类型来存储不同的信息。 变量的数据类型决定了如何将代表这些值的位存储到计算机的内存中。在声明变量时也可指定它的数据类型。 所有变量都具有数据类型,以决定能够存储哪种数据。 内置数据类型 Swift…...

2.本地存储
2.1本地存储分类- localStorage 1.作用: 可以将数据永久存储在本地(用户的电脑),除非手动删除,否则关闭页面也会存在 2.特性: ●可以多窗口(页面)共享(同一浏览器可以共享) ●以键值对的形式存储使用,键值除了数字型都要加引号 3.语法 存…...

win10远程桌面控制Ubuntu服务器 - 内网穿透实现公网远程
文章目录 前言视频教程1. ubuntu安装XRDP2.局域网测试连接3. Ubuntu安装cpolar内网穿透4.cpolar公网地址测试访问5.固定域名公网地址 转载自cpolar极点云文章:树莓派使用Nginx 搭建轻量级网站远程访问 前言 XRDP是一种开源工具,它允许用户通过Windows R…...

【Git】—— 标签管理
目录 (一)理解标签 1、作用 (二)创建标签 (三)操作标签 1、删除标签 2、推送标签 3、删除远程标签 (一)理解标签 标签 tag ,可以简单的理解为是对某次 commit 的…...
JS_判断打开的是什么手机品牌,判断是否是手机,平板,pc
判断业务是否是 iphone、华为、小米、oppo、view、三星 打开 手机品牌userAgent库 http://www.fynas.com/ua function judgeBrand(sUserAgent) {var isIphone sUserAgent.match(/iphone/i) iphone;var isHuawei sUserAgent.match(/huawei/i) huawei;var isHonor sUserAge…...
HCIA 动态路由协议之RIP协议
一、动态路由协议分类 动态路由协议:RIP OSPF ISIS BGP EBGP EIGRP IGPRP...... 基于AS进行分类: AS-自治系统 0-65535 其中1-64511公有 64512-65535私有 IGP:内部网关路由协议 EGP:外部网关路由 二、IGP协议的分类&#x…...
提供高品质正规话费充值接口,H5链接,稳定高效!
话费充值接口文档 接口版本:1.0 ―、引言 文档概述 本文档提供话费充值接口规范说明,提供一整套的完整的接入示例(http 接口)供商户参 考,可以帮助商户开发人员快速完成接口开发与联调,实现与话费充值系统的交易互联。 公司官网…...

苍穹外卖day12笔记
一、工作台 联系昨天 要实现的功能和昨天差不多,都是查询数据。 所以我们就写出查询语句,然后直接导入已经写好的代码。 实现效果 查询语句 今日数据 营业额 select count(amount) from orders where status5 and order_time > #{begin} and …...

Prometheus技术文档-基本使用-配置文件全解!!!!!
简介: Prometheus是一个开源的系统监控和告警系统,由Google的BorgMon监控系统发展而来。它主要用于监控和度量各种时间序列数据,比如系统性能、网络延迟、应用程序错误等。Prometheus通过采集监控数据并存储在时间序列数据库中,…...

宋浩高等数学笔记(十一)曲线积分与曲面积分
个人认为同济高数乃至数学一中最烧脑的一章。。。重点在于计算方式的掌握,如果理解不了可以暂时不强求,背熟积分公式即可。此外本贴暂时忽略两类曲面积分之间的联系,以及高斯公式的相关内容,日后会尽快更新,争取高效率…...

安卓如何快速定位native内存泄露。
步骤1)cat /proc/pid/status,观察下面俩个指标 RssAnon: 5300 kB //一直增大说明匿名映射的内存增大,malloc本质就是调用匿名映射分 配内存 RssFile: 26884 kB //文件句柄泄露&#…...
redis学习笔记(二)
文章目录 redis数据类型string(字符串)1. 设置键值2. 设置键值的过期时间3. 关于设置保存数据的有效期4. 设置多个键值5. 字符串拼接值6. 根据键获取值7. 自增自减8. 获取字符串的长度9. 比特流操作 redis数据类型 redis可以理解成一个全局的大字典&…...
不侵入代码的rem适配,支持桌面缩放,vue2的适配方案,包含echarts适配
此方式不侵入代码,自动把px单位转换成rem单位 首先安装postcss-pxtorem5.1.1 yarn add postcss-pxtorem5.1.1 npm install postcss-pxtorem5.1.1 --save 项目根目录新建 postcss.config.js module.exports {plugins: {postcss-pxtorem: {rootValue: 14,propList…...

智能合约 -- 常规漏洞分析 + 实例
1.重入攻击 漏洞分析 攻击者利用合约漏洞,通过fallback()或者receive()函数进行函数递归进行无限取钱。 刚才试了一下可以递归10次,貌似就结束了。 直接看代码: 银行合约:有存钱、取钱、查看账户余额等函数。攻击合约: 攻击、以及合约接…...

JavaScript 操作历史记录api怎样使用 JavaScript
JavaScript 操作历史记录api怎样使用 JavaScript History 是 window 对象中的一个 JavaScript 对象,它包含了关于浏览器会话历史的详细信息。你所访问过的 URL 列表将被像堆栈一样存储起来。浏览器上的返回和前进按钮使用的就是 history 的信息。 History 对象包含…...

Spring 容器
提示:英语很重要,单词是读的,是拼出来的,和拼音一样 文章目录 前言前期准备1️⃣ DI 依赖注入1、xml 配置方式2、注解方式 annotation❗相关注解Spring中Bean的作用域❗Scope() 注解Qualifier("XXXServiceImpl") 指定哪…...

【腾讯云Cloud Studio实战训练营】使用React快速构建点餐H5
文章目录 前言一、Cloud Studio是什么二、Cloud Studio特点三、Cloud Studio使用1.访问官网2.账号注册3.模板选择4.模板初始化5.H5开发安装 antd-mobile安装 Less安装 normalize上传项目需要的素材替换App.js主文件项目启动、展示 6.发布仓库 总结 前言 随着云计算产业的发展&…...

Java培训课程哪个品牌好?快拿小本本记好
Java是一门广泛应用于企业级应用程序开发的高级编程语言,具有较高的学习和职业发展价值。但是,在选择Java培训课程时,很多人会遇到一个问题:Java培训课程哪个品牌好?小编经过多方分析和比较,从专业培训的角度…...

leetcode19. 删除链表的倒数第 N 个结点
题目:leetcode19. 删除链表的倒数第 N 个结点 描述: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 思路: 让前面的节点比后面的节点先走n1步,因为从链表的尾节点的下一个节点开始&…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...

【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
return this;返回的是谁
一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...