STC8H8K64U 库函数学习笔记 —— 流水灯

STC8H8K64U 库函数学习笔记 —— 流水灯

环境说明:
芯片:STC8H8K64U
软件:

  1. KeilC51 μVersion V5.38.00
  2. STCAI-ISP (V6.94)

库文件说明:我将依赖的库文件统一放置到工程下的 lib 目录中,所以,代码中的包含指令会有 lib/ 的前缀

从左往右依次亮起,然后全灭,然后从右往左依次亮起,再次全灭,不断循环,代码如下:

#include "lib/Config.h"
#include "lib/STC8G_H_GPIO.h"
#include "lib/STC8G_H_Delay.h"static int index = 0;
static const int INTERVAL = 200;
static const int SIZE = 8;void GPIO_config() {P2M1 &= ~GPIO_Pin_7, P2M0 |=  GPIO_Pin_7; // 设置 P27 为 推挽P2M1 &= ~GPIO_Pin_6, P2M0 |=  GPIO_Pin_6; // 设置 P26 为 推挽P1M1 &= ~GPIO_Pin_5, P2M0 |=  GPIO_Pin_5; // 设置 P15 为 推挽P1M1 &= ~GPIO_Pin_4, P2M0 |=  GPIO_Pin_4; // 设置 P14 为 推挽P2M1 &= ~GPIO_Pin_3, P2M0 |=  GPIO_Pin_3; // 设置 P23 为 推挽P2M1 &= ~GPIO_Pin_2, P2M0 |=  GPIO_Pin_2; // 设置 P22 为 推挽P2M1 &= ~GPIO_Pin_1, P2M0 |=  GPIO_Pin_1; // 设置 P21 为 推挽P2M1 &= ~GPIO_Pin_0, P2M0 |=  GPIO_Pin_0; // 设置 P20 为 推挽P4M1 &= ~GPIO_Pin_5, P4M0 |=  GPIO_Pin_5; // 设置 P45 为 推挽
}void turnOffAllLed() {P45 = 0;P27 = 1, P26 = 1, P15 = 1, P14 = 1;P23 = 1, P22 = 1, P21 = 1, P20 = 1;
}void marquee(int start, int incr) {turnOffAllLed();delay_ms(INTERVAL);index = start;while(index < SIZE && index > -1) {switch(index) {case 0: P27 = 0; break; case 1: P26 = 0; break;case 2: P15 = 0; break; case 3: P14 = 0; break;case 4: P23 = 0; break; case 5: P22 = 0; break;case 6: P21 = 0; break; case 7: P20 = 0; break;}index += incr;delay_ms(INTERVAL);}turnOffAllLed();
}void main() {GPIO_config();while(1) {marquee(0, 1);marquee(7, -1);}
}

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

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

相关文章

蓝桥杯 经验技巧篇

1. 注意事项 &#x1f468;‍&#x1f3eb; 官方通知 &#x1f468;‍&#x1f3eb; 资料文档 时间&#xff1a;4月13日 9:00~13:00 &#xff08;时长 4小时&#xff09;物品 准考证&#xff08;赛前一周开放下载&#xff0c;自行打印&#xff09;学生证身份证笔、水、外套&a…

知识推理技术解析与实战

目录 一、引言二、知识推理基础知识表示方法本体论语义网络图形数据库 推理机制概述演绎推理归纳推理类比推理 实践代码示例 三、知识推理的核心技术自动推理系统规则引擎推理算法 知识图谱的运用构建知识图谱知识推理与查询 推理算法深度分析转导推理逻辑推理概率推理 实践代码…

关键节点组挖掘(附Python实现)

一、实验内容简介 该实验主要利用基于度的排序和基于投票策略的排序分别挖掘出一组重要节点作为种子节点&#xff0c;然后在给定的网络中传播&#xff0c;一直到稳态&#xff0c;然后统计感染的规模NR。最后通过比较两种方法的感染规模给出相应的评价&#xff0c;给出不同感染…

合资红利耗尽,海外喜忧参半:上汽2023有点“遗憾”

作者 |老缅 编辑 |德新 3月29日&#xff0c;上汽集团发布2023年全年财报。 数据显示&#xff0c;2023年上汽集团实现总营收7447.05亿元&#xff0c;同比增加0.09%&#xff1b;归属于上市公司股东的净利润141.06亿元&#xff0c;同比减少12.48%&#xff1b;基本每股收益1.226元…

【架构艺术】变更元信息分析框架设计

在变更风险防控领域&#xff0c;对于线上变更元信息的分析是非常重要的一部分&#xff0c;这是因为&#xff0c;只有理解了变更元信息&#xff0c;结合自主定制的变更规范&#xff0c;才能够知道具体的变更风险在哪里。不同的变更风险防御能力&#xff0c;实现的思路可能是不同…

CSS - 你实现过宽高自适应的正方形吗

难度 难度级别:中高级及以上 提问概率:80% 宽高自适应的需求并不少见,尤其是在当今流行的大屏系统开发中更是随处可见,很显然已经超越了我们日常将div写死100px这样的范畴,那么如何实现一个宽高自适应的正方形呢?这里提出两种实现方案。…

面试题Spring、SpringMVC、SpringBoot、SpringCloud

每日面试题学习 目录 前言 一、Spring是什么&#xff1f; 二、SpringMVC是什么&#xff1f; 三、SpringBoot是什么&#xff1f; 四、SpringCloud是什么&#xff1f; 五、什么是SSM&#xff1f; 面试常问 1.Spring和SpringMVC的区别 2.SpringMVC跟SpringBoot的区别 3.SpringBoot…

自动化脚本代码appium+pytest+adb

pytest多线程与多设备并发appium​​​​​​​ 使用adb获取应用的内存和CPU使用情况 import pytest import subprocess# 测试用例&#xff1a;检查应用的内存使用情况 def test_memory_usage():package_name com.example.myappmemory_info subprocess.check_output([adb, …

景区云旅游/视频慢直播方案设计与平台搭建

一、行业背景 经文化和旅游部数据中心测算&#xff0c;今年清明节假期3天全国国内旅游出游1.19亿人次&#xff0c;按可比口径较2019年同期增长11.5%&#xff1b;国内游客出游花费539.5亿元&#xff0c;较2019年同期增长12.7%。踏青赏花和户外徒步成为假期的热门出游主题。随着…

VSCode SSH 连接 Could not establish connection to “XXX“: spawn UNKNOWN.

1. 确认问题&#xff1a; 拉取vscode终端&#xff1a;快捷键 ctrl(数字1旁边那个) 输入&#xff1a;ssh -V 2. 解决方法 2.1 找到本地SSH 位置 默认本地路径&#xff1a; C:\Windows\System32\OpenSSH 2.2 找到要修改的位置 进入 ssh 插件的设置&#xff08;可以通过在插…

VIM支持C/C++/Verilog/SystemVerilog配置并支持Win/Linux环境的配置

作为一个芯片公司打杂人口&#xff0c;往往需要一个皮实耐打上天入地的编辑器… 一、先附上github路径&#xff0c;方便取走 git clone gitgithub.com:qqqw4549/vim_config_c_verilog.git 二、效果展示 支持ctrl]函数/模块跳转&#xff0c;支持cscope字串全局代码搜索 依赖&am…

PostgreSQL的|| 和::

在 PostgreSQL 中&#xff0c;|| 是字符串连接运算符&#xff0c;它将两个字符串连接在一起。例如&#xff0c;如果我们有两个字符串 ‘Hello’ 和 ‘World’&#xff0c;则可以使用以下语句将它们连接在一起&#xff1a; SELECT Hello || World;这将返回 ‘HelloWorld’。 另…

The C programming language (second edition,KR) exercise(CHAPTER 2)

E x c e r c i s e 2 − 1 Excercise\quad 2-1 Excercise2−1&#xff1a;输出结果如图1和图2所示&#xff0c;这道练习题需要文章1和文章2的知识。 #include <stdio.h> #include <limits.h>float getFloat(char sign, unsigned char exp, unsigned mantissa); do…

数字人直播系统是什么?AI数字人直播间搭建方法来了!

无人直播的时代&#xff0c;短视频和直播平台正在风口&#xff0c;各条赛道内也早已人满为患&#xff0c;很多线下商家都想参与其中&#xff0c;因为时间、地方、设备等限制久久不能去实行起来。所以&#xff0c;数字人直播新模式成为了线下商家的救星&#xff0c;线下商家方法…

Java后端开发中Java 8,JVM和JDK的关系

Java后端开发中Java 8&#xff0c;JVM和JDK的关系 一、技术介绍1、Java 82、JDK&#xff08;Java Development Kit&#xff09;3、JVM&#xff08;Java Virtual Machine&#xff09; 二、相互关系三、总结 一、技术介绍 1、Java 8 Java8&#xff08;也就是Java1.8&#xff09…

go语言实现无头单向链表

什么是无头单向链表 无头单向链表是一种线性数据结构&#xff0c;它的每个元素都是一个节点&#xff0c;每个节点都有一个指向下一个节点的指针。"无头"意味着这个链表没有一个特殊的头节点&#xff0c;链表的第一个节点就是链表的头。 优点&#xff1a; 动态大小&…

分巧克力(蓝桥杯,二分,acwing)

题目描述&#xff1a; 儿童节那天有 K 位小朋友到小明家做客。 小明拿出了珍藏的巧克力招待小朋友们。 小明一共有 N 块巧克力&#xff0c;其中第 i 块是 HiWi的方格组成的长方形。 为了公平起见&#xff0c;小明需要从这 N 块巧克力中切出 K 块巧克力分给小朋友们。 切出…

企业如何做好数字化?

企业进行数字化转型是一个复杂且系统性的过程&#xff0c;涉及战略规划、技术应用、组织变革、文化建设等多个方面。以下步骤和建议可以帮助企业做好数字化转型&#xff1a; 1、明确转型愿景和目标&#xff1a;确定企业的数字化愿景&#xff0c;明确转型的长期目标和短期里程碑…

全面备份:自动化MySQL服务器上所有数据库的备份策略

这篇博客提供了一个批量备份MySQL数据库的Shell脚本&#xff0c;并包含了详细的注释和使用说明。这个脚本能够自动化地备份服务器上所有的数据库&#xff0c;排除系统数据库&#xff0c;并在备份完成后压缩和清理旧文件。 脚本内容及注释 下面是脚本的内容&#xff0c;其中包…

烤羊肉串引来的思考--命令模式

1.1 吃羊肉串&#xff01; 烧烤摊旁边等着拿肉串的人七嘴八舌地叫开了。场面有些混乱&#xff0c;由于人实在太多&#xff0c;烤羊肉串的老板已经分不清谁是谁&#xff0c;造成分发错误&#xff0c;收钱错误&#xff0c;烤肉质量不过关等。 外面打游击烤羊肉串和这种开门店做烤…