K210基础实验——点亮LED灯

一、目的是点亮K210开发板左下角的LED0和LED1,LED0是红灯,LED1是绿灯,两颗LED灯都是低电平点亮,高电平熄灭

在这里插入图片描述

二、这是原理图上的硬件连接,LED0连接的是IO0,LED1连接的是IO17。

在这里插入图片描述

三、在src目录下新建文件夹

在这里插入图片描述

四、为了跟官方的例程区分开来,名字叫做gpio_led1

在这里插入图片描述

五、在gpio_led1目录下新建文件

在这里插入图片描述

六、新建两个文件,分别是main.c和pin_config.h

在这里插入图片描述

七、在main.c文件中写入如下代码

#include "pin_config.h"
#include <stdio.h>
#include <unistd.h>
#include "gpio.h"void hardware_init(void)
{fpioa_set_function(PIN_LED_0, FUNC_LED0);fpioa_set_function(PIN_LED_1, FUNC_LED1);
}int main(void)
{hardware_init();// 硬件引脚初始化gpio_init();    // 使能GPIO的时钟// 设置LED0和LED1的GPIO模式为输出gpio_set_drive_mode(LED0_GPIONUM, GPIO_DM_OUTPUT);gpio_set_drive_mode(LED1_GPIONUM, GPIO_DM_OUTPUT);// 先关闭LED0和LED1gpio_pin_value_t value = GPIO_PV_HIGH;gpio_set_pin(LED0_GPIONUM, value);gpio_set_pin(LED1_GPIONUM, value);while (1){sleep(1); //延时1sgpio_set_pin(LED0_GPIONUM, value);gpio_set_pin(LED1_GPIONUM, value = !value);}return 0;
}

八、在pin_config.h文件中写入如下代码

#ifndef _PIN_CONFIG_H_
#define _PIN_CONGIG_H_/*****************************HEAR-FILE************************************/
#include "fpioa.h"/*****************************HARDWARE-PIN*********************************/
// 硬件IO口,与原理图对应
#define PIN_LED_0             (0)
#define PIN_LED_1             (17)/*****************************SOFTWARE-GPIO********************************/
// 软件GPIO口,与程序对应
#define LED0_GPIONUM          (0)
#define LED1_GPIONUM          (1)/*****************************FUNC-GPIO************************************/
// GPIO口的功能,绑定到硬件IO口
#define FUNC_LED0             (FUNC_GPIO0 + LED0_GPIONUM)
#define FUNC_LED1             (FUNC_GPIO0 + LED1_GPIONUM)#endif

九、在build路径下输入cmake … -DPROJ=gpio_led1 -G “MinGW Makefiles”

在这里插入图片描述

十、再输入make进行编译

在这里插入图片描述

十一、编译成功

在这里插入图片描述

十二、编译成功后会在build目录下生成 .bin 文件

在这里插入图片描述

十三、打开K210官方提供的烧录工具

在这里插入图片描述

十四、烧录刚刚生成的.bin文件

在这里插入图片描述

十五、LED灯交替点亮,现象正常

在这里插入图片描述

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

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

相关文章

WSL2配置Linux、Docker、VS Code、zsh、oh my zsh

0. 写在前面 本篇笔记来自于UP主麦兜搞IT的合集视频Windows10开发环境搭建中的部分内容 1. 安装WSL2 按照微软官方文档进行操作&#xff0c;当然也可以直接wsl --install 也可以按照 旧版手动安装的步骤 来进行操作 选择安装的是Ubuntu 20.04 LTS 注&#xff1a;WSL默认安装…

SpringBoot+WebSocket实现即时通讯(三)

前言 紧接着上文《SpringBootWebSocket实现即时通讯&#xff08;二&#xff09;》 本博客姊妹篇 SpringBootWebSocket实现即时通讯&#xff08;一&#xff09;SpringBootWebSocket实现即时通讯&#xff08;二&#xff09;SpringBootWebSocket实现即时通讯&#xff08;三&…

【Vulkan Tutorials 01】【环境搭建】三角形例子

Development Environment&#xff08;开发环境&#xff09; 1. 安装Vulkan SDK 官网 2. 安装cmake和minGW 2.1 cmake 官网 双击可执行文件&#xff0c;然后直接安装&#xff0c;注意环境变量选择设置&#xff0c;否则需要自己操作。 2.2 minGW 官网 下载如下图所示&am…

2.21数据与结构算法学习日记(最小生成树prim算法)

目录 最小生成树prim 最小生成树算法是一种用来在一个加权连通图中找到最小生成树的算法。最小生成树是一个包含图中所有顶点的树&#xff0c;其总权值最小。 prim算法 洛谷题目示例 P3366 【模板】最小生成树 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题…

K8s ingress-nginx根据请求目录不同将请求转发到不同应用

K8s ingress-nginx根据请求目录不同将请求转发到不同应用 1. 起因 有小伙伴做实验想要实现以下需求: 输入www.pana.com/app1访问app1的svc 输入www.pana.com/app2访问app2的svc 2. 实验 2.1 Dockerfile 先准备Dockerfile FROM nginx:1.20ADD index.html /usr/share/ngin…

还迷糊事务的并发问题以及隔离级别?

还迷糊事务的并发问题以及隔离级别&#xff1f; 事务并发问题 MySQL 服务端是允许多个客户端连接的&#xff0c;这意味着 MySQL 会出现同时处理多个事务的情况。 那么在同时处理多个事务的时候&#xff0c;就可能出现脏读&#xff08;dirty read&#xff09;、不可重复读&am…

Linux常见指令(二)

目录 常见指令 1.1more指令 1.2less指令 1.3tail指令 1.4时间相关的指令 1.5Cal指令 1.6find指令 1.7grep指令 1.8zip/unzip指令 1.9tar指令&#xff08;重要&#xff09; 1.10bc指令 常见指令 1.1more指令 语法 &#xff1a; more [ 选项 ][ 文件 ] 功能 &#xf…

力扣代码学习日记五

Problem: 283. 移动零 文章目录 思路解题方法复杂度代码 思路 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,…

269.【华为OD机试真题】解密犯罪时间(深度优先搜索(DFS)-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目二.解题思路三.题解代码Python题解代码JAVA题解…

Windows认证基础知识

Windows凭据 1.SSPI SSPI(Security Support Provider Interface,安全支持提供程序接口)是Windows操作系统中用于执行各种安全相关操作的公用API.SSPI的功能比较全面&#xff0c;可以用来获得身份验证、信息完整性校验、信息隐私保护等集成的安全服务。它是众多安全支持提供程…

华清远见作业第四十天——Qt(第二天)

思维导图&#xff1a; 编程&#xff1a; 使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为…

等级保护是什么,为什么要做等级保护

一、 什么是等级保护&#xff1a; 等级保护是一种信息安全管理方法&#xff0c;用于对不同级别的信息和信息系统进行分类、评估和保护。它涉及将信息系统和信息按照其重要性和敏感性分级别&#xff0c;然后根据等级要求实施相应的安全措施&#xff0c;以确保信息的保密性、完整…

碳化硅晶片C面和硅面详解

SiC是一种Si元素和C元素以1:1比例形成的二元化合物&#xff0c;即百分之五十的硅&#xff08;Si&#xff09;和百分之五十的碳&#xff08;C&#xff09;&#xff0c;其基本结构单元为 Si-C 四面体。 举个例子&#xff0c;Si原子直径大&#xff0c;相当于苹果&#xff0c;C原子…

EasyRecovery支持恢复多种类型的文件包括文档、表格、图片、音频、视频等

EasyRecovery易恢复是一款来自美国的数据恢复软件&#xff0c;已有35年&#xff08;或38年&#xff09;的历史。它支持不同存储介质的数据恢复&#xff0c;包括电脑系统硬盘、移动硬盘等&#xff0c;并针对不同的数据丢失原因提供了相应的恢复方案。 EasyRecovery易恢复是一款…

开源模型应用落地-工具使用篇-向量数据库(三)

一、前言 通过学习"开源模型应用落地"系列文章&#xff0c;我们成功地建立了一个完整可实施的AI交付流程。现在&#xff0c;我们要引入向量数据库&#xff0c;作为我们AI服务的二级缓存。本文将详细介绍如何使用Milvus Lite来为我们的AI服务部署一个前置缓存。 二、术…

CSS中伪元素和伪类的区别和作用?

伪元素&#xff1a;在内容元素的前后插入额外的元素或样式&#xff0c;但是这些元素实际上并不在文档中生成。它们只在外部显示可见&#xff0c;但不会在文档的源代码中找到它们&#xff0c;因此&#xff0c;称为“伪”元素。例如&#xff1a; p::before {content:"第一章…

曝光一下不发年终奖的企业

原文连接&#xff1a; 曝光一下不发年终奖的企业 今日热帖&#xff0c;看到网上发布的一篇帖子&#xff1a;请曝光一下不发年终奖的企业&#xff01; 结果留言上百条&#xff0c;除了私企&#xff0c;还有很多国企&#xff0c;银行等。而且还有一些我们认为应该很赚钱的企业&a…

记一次重大的问题解决

问题的模样 我们是需要的操作两个git仓库的的三个分支&#xff08;此处第一个仓库简称&#xff1a;A&#xff08;负责程序的第一层进入&#xff09;&#xff0c;第二个简称B&#xff08;负责业务的执行&#xff09;&#xff09; 大致就是A的代码引用了B&#xff0c;B的代码引…

opengl 学习着色器

一.GLSL 着色器是使用一种叫GLSL的类C语言写成的。GLSL着色器编码顺序&#xff1a;声明版本》定义输入输出》uniform》main函数。每个着色器的入口点是main函数&#xff0c;在main函数中我们处理所有的输入变量&#xff0c;并将结果输出到输出变量中。如下图&#xff1a; #ver…

Java之反射:Class类、调用构造方法、访问字段、访问方法

反射 什么是反射&#xff1a; ​ 反射是Java语法的一种高级特性&#xff0c;在“运行期间”对Java的类型信息进行检查&#xff0c;操作处理。例如&#xff1a;加载JDBC驱动类&#xff0c;Mybatis动态处理resultType&#xff0c;Spring根据配置创建Bean对象等使用场景都用反射…