普中 51 单片机点亮LED灯

普中 51 单片机 (STC89C52RC) LED / IO

将LED1进行闪烁操作

在这里插入图片描述

为啥要进行延时操作?依据人的肉眼余晖效应, 延时时间不能太短,否则就无法观察到 LED 闪烁

#include "reg52.h"
typedef unsigned int u16; //对系统的默认数据类型进行从命名sbit LED1 = P2^0;void delay_10us(u16 ten_us){//延时函数 当参数为ten_us =1时大概延时为10uswhile(ten_us--);}void main(){//实现LED1的闪烁功能while(1){LED1 = 0;//亮灯,低电平点亮delay_10us(10000);//延时100msLED1 = 1;//熄灭delay_10us(10000);//延时100ms}}

在这里插入图片描述
code:表示程序所占用 FLASH 的大小。 data:数据储存器内部 RAM 占用大小。 xdata:数据储存器外部 RAM占用大小

流水灯实验

通过位运算符for循环实现流水灯效果

#include "reg52.h"typedef unsigned char u8;//对系统的默认数据类型进行从命名
typedef unsigned int u16;//对系统的默认数据类型进行从命名void delay_10us(u16 ten_us){//延时函数 当参数为ten_us =1时大概延时为10uswhile(ten_us--);
}
void main(){//实现流水灯效果u8 i;while(1){for(i = 0;i<7;i++){P2 =~(0x01<<i);//通过控制P2管脚实现流水灯效果delay_10us(50000);}}}
#include "reg52.h"
#define LED_PORT P2 //使用宏定义P2端口
typedef unsigned char u8;//对系统的默认数据类型进行从命名
typedef unsigned int u16;//对系统的默认数据类型进行从命名void delay_10us(u16 ten_us){//延时函数 当参数为ten_us =1时大概延时为10uswhile(ten_us--);
}
void main(){//实现流水灯效果u8 i;while(1){for(i = 0;i<7;i++){LED_PORT =~(0x01<<i);//通过控制P2管脚实现流水灯效果delay_10us(50000);}}}

通过内置函数实现流水灯的效果

_crol_()函数是C语言中的一个字符串操作函数,用于循环左移字符串。

该函数的作用是将指定长度的字符从字符串的左侧开始移动到右侧,并将右侧的空位填充为指定的字符。它的原型如下:

char * crol ( char * str, int n );

参数说明:

  • str:指向要进行循环左移操作的字符串的指针。
  • n:表示要移动的字符数。正数表示向右移动,负数表示向左移动。

返回值:

  • 函数返回指向循环左移后字符串的指针。

右移函数是_cror_()同上原理

#include "reg52.h"
#include "intrins.h"
#define LED_PORT P2 //使用宏定义P2端口typedef unsigned char u8;//对系统的默认数据类型进行从命名
typedef unsigned int u16;//对系统的默认数据类型进行从命名void delay_10us(u16 ten_us){//延时函数 当参数为ten_us =1时大概延时为10uswhile(ten_us--);
}
void main(){//实现流水灯效果u8 i;while(1){for(i = 0;i<7;i++){LED_PORT =~(_crol_(0x01,i));//通过_crol_函数进行左移控制P2管脚实现流水灯效果delay_10us(50000);}for(i = 0;i<7;i++){LED_PORT =~(_cror_(0x80,i));//通过_cror_函数进行右移控制P2管脚实现流水灯效果delay_10us(50000);}}}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023 最新前端面试题 (HTML 篇)

1. src 和 href 的区别 src 用于替换当前元素&#xff08;引入&#xff09;&#xff0c;href 用于在当前文档和引用资源之间确立联系&#xff08;引用&#xff09; &#xff08;1&#xff09;src&#xff08;source&#xff09; 指向外部资源的位置&#xff0c;指向的内容将会嵌…

开开心心带你学习MySQL数据库之节尾篇

Java的JDBC编程 各种数据库,MySQL, Oracle, SQL Server在开发的时候,就会提供一组编程接口(API) API ~~ Application Programming Interface ~~ 应用程序编程接口 计算机领域里面的一个非常常见的概念, 给你个软件,你能对他干啥(从代码层次上的) 基于它提供的这些功能,就可以写…

【MySQL】表的操作

目录 MySQL表的操作 创建表 创建表案例 查看表结构 修改表 删除表 MySQL表的操作 表操作至少会涉及如下两类SQL语句&#xff1a; DDL&#xff08;Data Definition Language&#xff09;数据定义语言&#xff1a;比如建表、删表、该表、新增列、删除列等。DML&#xff08…

JavaWeb_LeadNews_Day11-KafkaStream实现实时计算文章分数

JavaWeb_LeadNews_Day11-KafkaStream实现实时计算文章分数 KafkaStream概述案例-统计单词个数SpringBoot集成 实时计算文章分值来源Gitee KafkaStream 概述 Kafka Stream: 提供了对存储与Kafka内的数据进行流式处理和分析的功能特点: Kafka Stream提供了一个非常简单而轻量的…

星际争霸之小霸王之小蜜蜂(十二)--猫有九条命

系列文章目录 星际争霸之小霸王之小蜜蜂&#xff08;十一&#xff09;--杀杀杀 星际争霸之小霸王之小蜜蜂&#xff08;十&#xff09;--鼠道 星际争霸之小霸王之小蜜蜂&#xff08;九&#xff09;--狂鼠之灾 星际争霸之小霸王之小蜜蜂&#xff08;八&#xff09;--蓝皮鼠和大…

使用navicat for mongodb连接mongodb

使用navicat for mongodb连接mongodb 安装navicat for mongodb连接mongodb 安装navicat for mongodb 上文mongodb7.0安装全过程详解我们说过&#xff0c;在安装的时候并没有勾选install mongodb compass 我们使用navicat去进行可视化的数据库管理 navicat for mongodb下载地址…

系统架构设计师(第二版)学习笔记----系统架构概述

【原文链接】系统架构设计师&#xff08;第二版&#xff09;学习笔记----系统架构概述 文章目录 一、系统架构的定义与发展历程1.1 架构的定义1.2 架构设计的作用1.3 架构设计产生的背景1.4 软件架构的发展历程1.5 模块化开发方法1.6 模块法方法分解模块遵循的原则1.7 软件工程…

【算法】一文带你从浅至深入门dp动态规划

文章目录 一、前言二、动态规划理论基础1、基本概念2、动态规划五部曲【✔】3、出错了如何排查&#xff1f; 三、实战演练&#x1f5e1;0x00 斐波那契数0x01 第N个泰波那契数0x02 爬楼梯0x03 三步问题0x04 使用最小花费爬楼梯⭐解法一解法二 0x05 解码方法* 四、总结与提炼 一、…

英飞凌TC3xx--深度手撕HSM安全启动(三)--TC3xx HSM系统架构

今天聊TC3xx HSM系统,包括所用内核、UCB相关信息、Host和HSM交互方式。 1、HSM系统架构 下图来源于英飞凌官网培训材料。 TC3xx的HSM内核是一颗32位的ARM Cortex M3,主频可达100MHz,支持对称算法AES128、非对称算法PKC(Public Key Crypto) ECC256、Hash SHA2,以及T…

Python的pandas库来实现将Excel文件转换为JSON格式的操作

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

2023 CCF国际AIOps挑战赛,报名倒计时!|截止时间9月15日

智能运维领域最具影响力的专业赛事——2023 CCF国际AIOps挑战赛&#xff0c;自报名启动以来已收到230余支队伍报名&#xff0c;约600余位选手参与本次挑战赛。本次大赛的报名截止时间为9月15日&#xff0c;目前报名已经进入倒计时&#xff0c;请选手们抓紧最后时间报名参赛&…

2023高教社杯数学建模A题思路分析 - 定日镜场的优化设计

# 1 赛题 A 题 定日镜场的优化设计 构建以新能源为主体的新型电力系统&#xff0c; 是我国实现“碳达峰”“碳中和”目标的一项重要 措施。塔式太阳能光热发电是一种低碳环保的新型清洁能源技术[1]。 定日镜是塔式太阳能光热发电站(以下简称塔式电站)收集太阳能的基本组件&…

搭建vue3项目并git管理

搭建vue3项目 采用vue3的create-vue脚手架搭建项目&#xff0c;底层是vite&#xff0c;要求环境 node 16.0及以上&#xff08;node -v检查node版本&#xff09; 在文件夹右键->终端-> npm init vuelatest&#xff0c;输入项目名称&#xff0c;根据需要选择是否装包 src…

COMO-ViT论文阅读笔记

Low-Light Image Enhancement with Illumination-Aware Gamma Correction and Complete Image Modelling Network 这是一篇美团、旷视、深先院、华为诺亚方舟实验室、中国电子科技大学 五个单位合作的ICCV2023的暗图增强论文&#xff0c;不过没有开源代码。 文章的贡献点一个是…

LabVIEW利用纳米结构干电极控制神经肌肉活动

LabVIEW利用纳米结构干电极控制神经肌肉活动 随着人口老龄化&#xff0c;长期护理的必要性变得更加重要&#xff0c;医疗中心的压力开始达到惊人的水平。全球对所有社会和经济部门的认识对于更好地协调卫生和社会服务之间的护理以及为更多的院外治疗提供条件至关重要。 关于医…

[管理与领导-85]:IT基层管理者 - 核心技能 - 高效执行力 - 10 - 高效执行力的9个段位

目录 前言&#xff1a; 一段&#xff1a;准确执行&#xff0c;快速反应&#xff0c;坚决执行 &#xff08;态度很重要&#xff09; 二段&#xff1a;结果导向 苦劳过后&#xff0c;有功劳&#xff08;有结果很重要&#xff09; 三段&#xff1a;有始有终 主动反馈、有始有终…

【C++】day4学习成果:仿写string类等等

1.仿照string类&#xff0c;完成myString 类 代码&#xff1a; #include <iostream> #include <cstring>using namespace std;class myString {private:char *str; //记录c风格的字符串int size; //记录字符串的实际长度public://无参构造myS…

SpringBoot原理-自动配置-原理分析-源码跟踪

自动配置原理 SpringBootApplication 该注解标识在SpringBoot项目的启动类上&#xff0c;是SpringBoot中最为重要的注解&#xff0c;该注解由三个部分组成。 SpringBootConfiguration&#xff1a;该注解与Configuration注解作用一样&#xff0c;用来声明当前类为一个配置类Comp…

VM安装RedHat7虚机ens33网络不显示IP问题解决

1、今天在VMware中安装RedHat7.4虚拟机&#xff0c;网络连接使用的是 NAT 连接方式&#xff0c;刚开始安装成功之后输入ifconfig 还能看到ens33自动分配的IP地址&#xff0c;但是当虚机关机重启后&#xff0c;再查看IP发现原来的ens33网络已经没有了&#xff0c;只变成了这两个…

【大数据】Kafka 入门指南

Kafka 入门指南 1.Kafka 简介2.Kafka 架构3.分区与副本4.偏移量5.消费者组6.总结 1.Kafka 简介 Apache Kafka 是一种高吞吐、分布式的流处理平台&#xff0c;由 LinkedIn 开发并于 2011 年开源。它具有 高伸缩性、高可靠性 和 低延迟 等特点&#xff0c;因此在大型数据处理场景…