GPIO入门有道

  本来不想加上后面这几句话的,我给博客园的管理者发了一封信,说明了一下博客园团队移出我文章的理由,回信说是:知道该技术内容的人太少,缺少足够的介绍;我想他们只是做网站,对有些东西不是很了解,所以在这里说明一下。这里说的是ARM里最简单的一个知识,学习ARM的必经过程。

1.    什么是GPIO

GPIO(General Purpose Input Output):通用输入输出,自己认为GPIO按电子类说法是:提供、接收高、低电平,按计算机类说法是:提供、接收0、1值。

2.         为什么使用GPIO

当微控制器或芯片组没有足够的I/O端口,或者当系统需要采用远端串行通信或控制时,GPIO提供了额外的控制和监视功能。

3.         GPIO有哪些优点?

低功耗、灵活的灯光控制、响应时间快、布线简单

4.         怎样使用GPIO

步骤:    1.    设置引脚连接GPIO

              2.    设置I/O为输入还是输出

              3.    设置输出置位还是清零

5.         应用实例

实例目的:控制蜂鸣器间断鸣叫

View Code
 1 #include "main.h"
2
3 #define BEEP (1 << 7) // 设置蜂鸣器输出口
4
5 void TargetInit (void)
6 {
7 vicInitial();
8
9 // 中断、快中断使能
10 IRQEnable();

11 FIQEnable();
12 }
13
14 // 软件延时
15 void delayNs(uint32 Ns)

16 {
17 uint32 i = 0;
18 for (; Ns; Ns--) {
19 for (i = 0; i < 1000; i++);
20 }
21 }
22
23 int main (void)
24 {
25 TargetInit();
26 while(1) {
27 P3_OUTP_SET |= BEEP; // 置1
28 delayNs(10000);

29 P3_OUTP_CLR |= BEEP; // 清0
30 delayNs(10000);

31 }
32 }

  注:虽然在ARM9中我们看不到前两步,但是这两步在其中已经设置,只能说ARM9封装的更好一些,ARM7中你完全可以看到前两步

  参考资料: 百度百科

        《深入浅出ARM9》    周立功 等编著

 

  今天是星期二,西安今天是阴天,听说晚上是雨夹雪,希望雪能大点,明早好能看到北国风光。

 

 

原文地址:https://www.cnblogs.com/dofi/p/2277693.html