打印
[Atmel]

每天跟我读点资料:SAM D21数据手册(141)

[复制链接]
662|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
22.5.10 CPU局部总线

    CPU局部总线(IOBUS)是一个直接连接CPU到端口的接口。它是一个它是一个单周期总线接口,不支持等待状态。它支持字节,半字和字。

    CPU当从0x60000000执行读或写访问是通过IOBUS访问PORT模块。端口寄存器映射相当于它在寄存器描述中的描述。

    此总线通常用于低延迟。通过这个总线数据方向(DIR)和数据输出值(OUT)寄存器能被读,写,设置,清除或触发,数据输入值(IN)寄存器能被读。

   由于IOBUS不能等待IN寄存器的重新同步,控制寄存器(CTRL)必须配置成连续地采样所有通过IOBUS读的管脚防止过时的数据被读进。

22.6.1 工作原理

   I/O管脚的控制是通过控制端口寄存器的读或写来进行的。每个端口管脚,在数据方向寄存器和数据输入寄存器的相应比特位用来使能管脚是作为输出和定义输出状态。

   一个端口组中每个管脚的方向是通过DIR寄存器来配置。如果在DIR寄存器中的一个比特被写1,相应的管脚被配置成输出管脚。如果DIR中的一个比特被写0,相应的管脚配置为输入管脚。

   当方向设置为输出,则相应的OUT寄存器中的比特位用来设置管脚的电平。如果比特y在OUT寄存器中被写1,管脚y被置高。如果比特y在OUT寄存器中被写0,管脚输入低电平。

   额外的引脚配置可以通过写引脚配置( PINCFG0 )寄存器来设定。

   数据输入值比特(IN)用来读管脚同步到端口的时钟。默认的情况下,这些输入同步都加时钟只在输入读请求的情况下,这样可以减少电源功耗。输入值也可以被读出,无论管脚被配置成输入或者输出,除非通过写管脚配置寄存器(PINCFGy)INEN比特来失能数字输入的情况下。

  端口也允许向PINCFGy寄存器的PMWXEN比特位写1来使外设功能连接到单独的管脚,并且写选择应选择的在外设复用寄存器(PMUX0)中。这将跨过在端口和I/O管脚之间的连接,并且连接所选择的外设到管脚接口线代替端口接口线。

  每个组32个管脚由一套寄存器控制,见下图描述,这一套寄存器是每组都是一样地,只不过地址是增加的。



相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:http://shop34182318.taobao.com/ http://shop562064536.taobao.com

2399

主题

6963

帖子

68

粉丝