Linux嵌入式开发入门(二)——快速看懂原理图,对接软件开发

这里只是为了看懂原理图,不牵扯具体的计算等内容(比如电路电流多少啊,三极管放大等等)。因为对于嵌入式开发人员来说,只需要明白不同的电平对于开发板的结果即可,不需要知道具体电路的情况。

微机原理:侧重于讲计算机结构
数字电子技术基础:侧重于门电路

  • GPIO和门电路
    • GPIO类
      GPIO:通用的输入输出端口,可以通过输入来测量外界的电平情况;可以通过输出来控制电路


只要上面的2440芯片对应的引脚应该为输出引脚。如果对应的输出引脚输出3.3V的高电平LED就会被点亮;如果输出引脚输出低电平(0V),那么LED则不亮



以上的线路很简单,开关闭合线路接通有电流;开关打开,线路不导通,无电流。
如果在开关打开的前提下,A点使用万用表测量,电压应该为3.3v,因为,如果此时这里不为3.3V与之相连的上方为3.3V就会形成电流,与实际不符;如果此时开关闭合,那么该线路是接通状态,应该有电流流过,那么此时,A点的电流应该为0V。

那么如果把万用表换成2440芯片会得到。


那么此时2440对应的引脚应该为输入引脚,通过读取该引脚对应的寄存器中的数据,就可以知道该引脚为高电平还是低电平。如果读到了高电平,说明此处为3.3V电路没有接通了如果读到了低电平,说此处为0V,说明电路接通了。以此可以判断开关的开闭情况。

对于现在的芯片的引脚来说,既可以作为输入引脚,同样也可以作为输出引脚。可以通过配置其中参数的某一位(具体参照手册)的方法来改变其功能。
输出引脚,写值到某个寄存器中
输入引脚,读某个寄存器中的值。

实际原理图

LED处的原理图
LED处的原理图
芯片引脚的原理图
芯片引脚的原理图

由以上两幅图可以看出,LED由某一个引脚引入到芯片中。就可以找到对应的芯片中的引脚。通过该芯片手册就可以查到该如何操作。
由LED的原理图可以看出,三个控制LED的引脚的功能都不是为了检测电压,那么都是输出引脚,也就是如果输出了低电平,则LED被点亮;输出高电平,则灯会熄灭。

在芯片手册中查询该引脚的信息



查看到pin name为EINT3/GPF3 的引脚的pin number为M15



可以看到该引脚既可以作为输入引脚也可以作为输出引脚


可以在I/O port章节中看到,这一组引脚的应该如何配置

那么如果将GPF的寄存器配置为EINT[4]时,则该引脚会成为中断引脚


中断引脚举例
中断引脚举例

对于假设2440外连接一个DM9000的网卡,如果网卡收到了数据,如何来通知2440芯片呢?如果定时让2440去查询DM9000,是一个非常耗费资源的工作,那么这时候,如果把对应的引脚设置为中断引脚,只要DM9000获得了数据,就把想2440的中断引脚输出高电平,2440得到高电平后,向CPU发送中断信号,以执行相应的操作即可。
中断引脚,有输入功能,可以中断CPU(同样可以通过GPFDAT来获得数据已得到是否中断,但是比较耗费资源)

GPFCON就是配置GPF引脚的内存地址为0x56000050

参照接下面的表格可以看出,对于GPF4来说,需要操作8、9两位来控制该引脚的输入输出功能。具体的设置情:
00 = Input 01 = Output 10 = EINT[4] 11 = Reserved

那么如何设置该引脚输出低电平来点亮LED呢?
在GPFDAT中可以看到数据配置信息的地址为:0x56000054

  • 10
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值