S3C2440点亮LED(裸机开发)

文章目录

  • 前言
  • 一、环境介绍
  • 一、GPIO介绍
  • 二、点亮开发板的LED
    • 1.预备动作
    • 2.led代码
  • 总结


前言

本期和大家主要分享的是使用S3C2440开发板点亮一个LED灯,可能大家拿到开发板之后做的第一件事情都是点灯,这是为什么呢?因为点灯这件事情不仅能够检验是否对GPIO接口有一个良好的应用,而且更重要的是能够检验开发环境是否正常,硬件电路,下载器是否能够正常工作;

一、环境介绍

开发环境:S3C2440开发板
开发工具:jlink+keil
需要做的事情是:编写程序控制SOC内部电路,按照外接电路要求进行信号的发送或者接收;

一、GPIO介绍

GPIO:可编程的输入输出引脚
GPIO的使用:

每一组io都有一个寄存GP*CON控制引脚作用,每个io都有2个位,控制引脚作用
每一组io都有一个寄存GP*DAT控制引脚数据,每个io都有1个位,控制引脚数据

二、点亮开发板的LED

1.预备动作

首先呢应该在原理图中找到控制led的引脚端口,进而对引脚进行相应的输出配置;从下图可以看出,从本图可以看出当nLED_1输出为低电平时,LED1被点亮,所以接下来的工作就是寻找nLED_1,也就是其对应的GPIO口;
在这里插入图片描述
从下图可知nLED_1对应的是由GPB寄存器来控制的;因此应该使能GPBCON,并且使得GPBDAT的第五位输出为低电平;
在这里插入图片描述
从下图可知,因该将GPBCON的第十位和第十一位设置为01,也就是配置为输出模式;
在这里插入图片描述

2.led代码

led代码如下:

void led_init()
{GPBCON &= ~(3<<10);		 //寄存器相当于全局变量,在使用的时候为了防止修改的时候影响其他位,所以先进行位清除操作GPBCON |= 1<<10; 		 //设置gpb5为输出功能
}void led_on()
{GPBDAT &= ~(1<<5);		//设置GPB5输出为低电平
}void led_off()
{GPBDAT |= 1<<5;			//设置GPB5输出为高电平
}int main(void)
{led_init();				//先配置寄存器while(1)				//再进行业务逻辑{led_on();delay();led_off();delay();}
}

总结

本期主要分享的是使用寄存器点亮s3c2440开发板上的led,这个操作能够使我们掌握GPIO的基本配置流程以及掌握其中都有哪几种寄存器,分别的功能是什么;希望各位小伙伴们认真进行操作,你也将点亮嵌入式硬件里的一盏灯;最后,各位小伙伴们如果喜欢我的分享可以点赞收藏哦,你们的认可是我创作的动力,一起加油!

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

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

相关文章

Linux搭建node环境-MobaXterm+node+pm2安装

1.登录session 2.安装X11-forwarding 我也不知道这个有什么用&#xff0c;但是有个叉叉在那里有点难受&#xff0c;就把它解决了什么是X11-forwarding&#xff1f;怎么使用&#xff1f; yum install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils xorg-x11-fonts-Ty…

redis 和mongodb基础操作练习

目录 redis作业 string、list、hash 数据类型 举例说明list和hash的应用场景&#xff0c;每个至少一个场景 mongodb作业 1. 创建一个数据库 名字grade 2. 数据库中创建一个集合名字 class 3. 集合中插入若干数据 文档格式如下 4. 查找 5. 增加、更新、删除、统计 re…

HTTP1和HTTP2和HTTP3的区别

超文本传输协议是一个简单的请求-响应协议&#xff0c;它通常运行在TCP之上。 目录 HTTP1.1&#xff1a; HTTP2 HTTP3 参考文献 HTTP1.1&#xff1a; 特点&#xff1a; &#xff11;.一条链接只能一次请求一次返回这样子来回。一般的我们浏览器会帮我们一次次请求和收到。…

第八十八回:创建一个调色板

文章目录 概念介绍实现方法整体思路具体步骤 示例代码 我们在上一章回中介绍了打印日志相关的内容&#xff0c;本章回中将介绍 如何创建一个调色板.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 我们在本章回中介绍的调色板是一个具有各种颜色的窗口&#xff0c…

EDM营销过时了?不,这才是跨境电商成功的最佳工具

根据最近的一项研究&#xff0c;电子邮件仍然是最具说服力的营销工具和沟通形式之一。虽然即时通讯等其他渠道正在扎根&#xff0c;但电子邮件仍然是影响最深远的商业交流形式。到2023年&#xff0c;每天发送和接收的电子邮件总数可能会超过333亿封。所以&#xff0c;如果您希望…

iOS 中支持点击网页scheme超链接打开其他app

网页内容如图所示 思路&#xff0c;点击网页中一个href 超链接的时候&#xff0c;会执行 decidePolicyForNavigationAction 方法&#xff0c;我们在改方法中截获URL&#xff0c; 判断如果是URL scheme类型的&#xff0c;则执行 [[UIApplication sharedApplication]openURL:URL…

XUbuntu22.04之vim无法复制内容到系统(一百八十四)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

牛客小白月赛75题解

C 豆子 构造题 由构造公式知 第n级好豆子 第n-1级坏豆子^1 所以只需要构造一个豆子结构就行 第 i 级豆子 第 i 级豆子 第 i 级豆子 第 i 级豆子 第 i 级豆子 ^ 1 第i级豆子\begin{aligned} 第i级豆子 && 第i级豆子 \\ 第i级豆子 && 第i级豆子 \verb|^| 1 …

Nginx Linux设置开机自启动

使用如下命令 vi /lib/systemd/system/nginx.service 创建并编辑文件将以下代码黏贴至此文件中 [Unit] Descriptionnginx Afternetwork.target[Service] Typeforking TimeoutSec0 #防止启动超时 Userroot Grouproot criptionnacos Afternetwork.target[Service] Typeforking T…

习题-Java网络编程

目录 1.TCP-对象 2.UDP​​​​​​​​​​​​​​ 1.TCP-对象 利用TCP传输对象信息&#xff0c;需要对对象进行实例化 User类&#xff1a; package dh09.demo02;import java.io.Serializable;public class User implements Serializable {private String name;private St…

使用Postman+JMeter进行简单的接口测试

以前每次学习接口测试都是百度&#xff0c;查看相关人员的实战经验&#xff0c;没有结合自己公司项目接口真正具体情况。 这里简单分享一下公司项目Web平台的一个查询接口&#xff0c;我会使用2种工具Postman和JMeter如何对同一个接口做调试。 准备工作 首先&#xff0c;登录公…

基于FME二开产品:NewGIS integration介绍

目录 前言 一、模板上传 二、模板在线运行 1.模板参数解析 2.模板运行 三、成果管理 总结 前言 爆肝两个月&#xff0c;我和我的团队终于打造出了一款能完美适配所有FME模板的在线模板管理平台&#xff0c;目前支持FME2021版本的所有模板的在线运行、管理。整体技术框架…

uni-app:常见组件view、text、icon

根据html&#xff1a;可知div是块级标签&#xff0c;span是行级标签 这里view类似于div&#xff0c;text类似于span&#xff0c;即 块级标签&#xff1a;view 行级标签&#xff1a;text、icon 类似效果 两个icon图标&#xff0c;置于第一排 两个view&#xff0c;分别位于第…

项目名称:无源在线词典项目

一&#xff0c;概述 基于C语言的网络电子词典项目&#xff0c;使用到了tcp协议的并发服务器设计、网络编程、文件I/O、数据库等多方面的知识。可以满足多用户同时登陆&#xff0c;用户登陆后可以查询单词及历史记录&#xff0c;具有查找快速&#xff0c;保密性好等优点。 开…

JAVA集成国密SM4

JAVA集成国密SM4加解密 一、pom配置二、代码集成2.1、目录结构2.2、源码2.3、测试 三、遇到的坑3.1、秘钥长度3.2、转码问题 四、相关链接 国密算法概述&#xff1a;https://blog.csdn.net/qq_38254635/article/details/131801527 SM4对称算法 SM4 无线局域网标准的分组数据算…

c++内存映射文件

概念 将一个文件直接映射到进程的进程空间中&#xff08;“映射”就是建立一种对应关系,这里指硬盘上文件的位置与进程逻辑地址空间中一块相同区域之间一 一对应,这种关系纯属是逻辑上的概念&#xff0c;物理上是不存在的&#xff09;&#xff0c;这样可以通过内存指针用读写内…

qt 32位编译 内存溢出 无法 运行在win7 32位

项目在 编译32位系统 内存溢出 设置成了x64 但是 最后在xp32位系统运行提示 在下载了n个dll之后发现这种状况无穷无尽&#xff0c;后来在查阅资料时发现可以直接打开qt安装目录下的“vcredist”文件夹&#xff0c;将对应位数的程序拷到win7电脑上&#xff0c;直接运行&…

Orleans 微软基于 Actor 的分布式框架

一、Actor模型工作原理 Actor模型是一种并发编程模型&#xff0c;它基于消息传递实现&#xff0c;是一种轻量级的并发模型。在Actor模型中&#xff0c;每个Actor都是一个独立的执行单元&#xff0c;它可以接收和发送消息&#xff0c;并且可以执行一些本地操作&#xff0c;但是不…

【ARM Cortex-M 系列 1 -- Cortex-M0, M3, M4, M7, M33 差异】

文章目录 Cortex-M 系列介绍Cortex-M0/M0 介绍Cortex-M3/M4 介绍Cortex-M7 介绍Cotex-M33 介绍 下篇文章&#xff1a;ARM Cortex-M 系列 2 – CPU 之 Cortex-M7 介绍 Cortex-M 系列介绍 Cortex-M0/M0 介绍 Cortex-M0 是 ARM 公司推出的一款微控制器&#xff08;MCU&#xff0…

网络安全在2023好入行吗?

前言 023年的今天&#xff0c;慎重进入网安行业吧&#xff0c;目前来说信息安全方向的就业对于学历的容忍度比软件开发要大得多&#xff0c;还有很多高中被挖过来的大佬。 理由很简单&#xff0c;目前来说&#xff0c;信息安全的圈子人少&#xff0c;985、211院校很多都才建…