初识GPIO
来源:互联网 发布:单片机c语言数据类型 编辑:程序博客网 时间:2024/05/17 08:48
GPIO是通用的输入/输出端口,就是一些引脚,可以通过它输出高低(0/1)电平和读入引脚上的状态(0/1).s3c2440有130个引脚,分为A~J一共9组:GPA,GPB、、、GPJ,可以通过GPIO相关寄存器来配置引脚的具体功能和信息。
一、通过寄存器来控制GPIO引脚
1、GPxCON寄存器
这是GPIO控制寄存器(configure),通过对其写入数据可以设置引脚的功能,是输入输出还是其他特殊功能,通过用户手册可以得到其每位所代表的功能的具体含义。
2、GPxDAT寄存器
这是GPIO数据寄存器,若是输出引脚,则向其写入信息,可控制对应引脚输出的电平高低,若是输入引脚,则可通过数据寄存器得到引脚此时的状态。
3、GPxUP寄存器
上拉电阻使能寄存器,当某位为1时,对应引脚无上拉电阻,为0时,则表示有上拉电阻。上拉电阻的作用就是当引脚既不是输出也不是输入时,他的状态就有上拉电阻或下拉电阻来确定。
上面代码就是通过设置GPBCON和GPBDAT来点亮led
使用C语言来点亮一个LED,由于在裸板上无法直接运行main里的代码,在有操作系统的情况下,生成一个C的可执行程序,系统会在编译时在代码中加入启动文件的代码,这些代码的功能就是设置C程序的堆栈等初始化相关软硬件,然后调用main函数,这些都依赖于操作系统,在裸板上则需要自己写启动文件做相关的初始化工作,初始化相应的工作在s3c2440的启动方式里有提过。
通过下面的初始化启动代码可以顺利进入C程序的main运行C代码。
下面是C语言代码 ,宏定义了GPBCON和GPBDAT,然后赋值,运行时可见LED亮。
这段C代码和最上边的汇编效果一样。
- 初识GPIO
- GPIO初识
- 初识stm32的GPIO
- 原理图初识之GPIO
- STM32初识GPIO操作(by woody)
- GD32F130FXP6学习笔记三:ARM的GPIO初识
- gpio
- gpio
- GPIO
- GPIO
- GPIO
- GPIO
- GPIO
- GPIO
- GPIO
- GPIO
- GPIO
- gpio
- SQLite多线程读写实践及常见问题总结(转)
- 文件管理File类
- Dekker's algorithm
- 在虚拟机VirtualBox上安装Lion 10.7以及XCode
- Oracle] 如何解决ORA-04031 错误
- 初识GPIO
- AIF Operation -- findKey()
- ECLISPE的快捷键大全
- nova-compute的虚拟机创建调度策略
- linux下定时器的实现(select+线程)
- [面试] 在数组查找这样的数,它大于等于左侧所有数,小于等于右侧所有数
- AIF Operation -- Delete()
- 2013年2月7日 故障--都是数据库惹的祸
- 邻接矩阵与邻接表