第5章 MC9S12XS输入输出端口模块及其应用实例分解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.2 wenku.baidu.com入/输出端口寄存器及设置
5.2.1 PORTA、PORTB、PORTE和PORTK
3.上拉电阻控制寄存器(PUCR)
PORTA、PORTB、PORTE和PORTK端口都有内置上拉电阻,PUCR有4 位分别配置4个端口选择使用内置上拉电阻,即第7、4、1和0位分别设置K、E 、B和A端口。当控制位为“1”时,设定对应端口使用上拉电阻;当控制位为 “0”时,禁止对应端口使用上拉电阻。MCU复位后,设定PORTK和PORTE端 口使用上拉电阻,PORTB和PORTA端口禁用上拉电阻。 PUCR第6位设置BKGD引脚使用上拉电阻。当该位为“1”时,设定该端口 使用上拉电阻;当控制位为“0”时,禁止该端口使用上拉电阻。MCU复位后, 该位为“1”, 引脚默认为使用内置上拉电阻。
5.2 输入/输出端口寄存器及设置
5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ
3.数据方向寄存器(DDRx)
DDRx决定对应引脚配置为输出口还是输入口,如果某位为“0”,则对应 引脚设定为输入;如果某位为“1”,则对应引脚设定为输出。复位后,DDRx 值为0x00,即MCU复位后引脚默认为输入口。
5.2 输入/输出端口寄存器及设置
5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ
4.驱动控制寄存器(RDRx)
如果端口为输出口时,RDRx可以设置端口对应引脚的输出驱动能力。如 果RDRx某位为“1”,则对应引脚的输出驱动能力为正常时的1/5;如果某位 为“0”,则对应引脚输出为正常驱动能力。复位后,驱动控制寄存器值为 0x00,即MCU复位后引脚默认为满功率驱动输出。
5.2 输入/输出端口寄存器及设置
5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ
5.上拉/下拉使能寄存器(PERx)
如果端口为输入口或者“线或”模式时,可以通过上拉/下拉使能寄存器 PERx使能选择使用内置上拉/下拉电阻。如果PERx某位为“1” 时,则对应引 脚允许使用内置上拉/下拉电阻;如果某位为“0” 时,则对应引脚禁用内置上 拉/下拉电阻。
5.2 输入/输出端口寄存器及设置
5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ
2.输入寄存器(PTIx)
输入寄存器PTIx是一个只读寄存器,如果DDRx的对应位为“0”,即对应 引脚定义为输入时,读取PTIx总是返回引脚电平值;如果DDRx的对应位为 “1”,即对应引脚定义为输出时,利用PTIx可以监视对应引脚是否过载或短 路。
MC9S12XS单片机原理 及嵌入式系统开发
输入输出端口模块及其应用实例
第 5章 MC9S12XS输入/输出端口模块 及其应用实例
输入/输出端口简介 输入/输出端口寄存器及设置 输入/输出端口应用实例 智能车系统中输入/输出端口的应用
5.1 输入/输出端口简介
MC9S12XS系列内部有非常丰富的输入/输 出端口资源,同时也集成了多种功能模块 ,其输入/输出引脚大多为复用引脚。 MC9S12XS128通用I/O口包括PORTA、 PORTB、PORTE、PORTK、PORTT、 PORTS、PORTM、PORTP、PORTH、 PORTJ以及PORTAD。
5.2 输入/输出端口寄存器及设置
5.2.1 PORTA、PORTB、PORTE和PORTK
4.驱动控制寄存器(RDR)
如果PORTA、PORTB、PORTE和PORTK端口为输出口时,每个端口都 可以设置其输出驱动能力,RDR有4位分别设定4个端口输出驱动能力,即第7 、4、1和0位分别设置K、E、B和A端口。如果某个控制位为“1” 时,设定对应 端口输出驱动能力降低;如果某个控制位为“0”时,设定对应端口为正常驱动 输出方式。
5.2 输入/输出端口寄存器及设置
5.2.1 PORTA、PORTB、PORTE和PORTK
2.数据方向寄存器(DDRx)
DDRx决定对应引脚配置为输出口还是输入口,如果某位为“0”, 则对应引脚设定为输入口;如果某位为“1”,则对应引脚设定为输出口 。MCU复位后,DDRx值为0x00,引脚默认为输入口。 需要注意的是,PORTE端口是一个特例,它的最低两位只能为输 入口,所以PORTE端口的数据方向寄存器最低两位是只读位,读取这 两位始终返回“0”。
5.2 输入/输出端口寄存器及设置
5.2.1 PORTA、PORTB、PORTE和PORTK
1.数据寄存器(Px)
数据寄存器Px中的8位对应每个端口中的相应引脚,如果某端口的 引脚被定义为输出时,写入数据寄存器Px中的数值,则从对应引脚输 出;如果某端口的引脚被定义为输入时,可以读取数据寄存器Px对应 引脚的电平值。 需要注意PORTE端口是一个特例,它的最低两位只能为输入口, 所以PORTE端口的数据寄存器最低两位是只读位。
5.2 输入/输出端口寄存器及设置
5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ
1.数据寄存器(PTx)
如果数据方向寄存器DDRx的对应位为“0”,即对应引脚定义为输入时, 读取数据寄存器PTx的对应位,则为对应引脚的输入电平值;如果DDRx的对应 位为“1”,即对应引脚定义为输出时,写入PTx寄存器的对应位,则为对应引 脚的输出电平值。
5.2 输入/输出端口寄存器及设置
通用I/O口通过配置相应寄存器位,可以设置输入/输出端口、驱 动能力、内置上拉/下拉电阻使用、中断输入方式等多种功能。通过 对DDR、I/O、RDR、PE、PS和IE等寄存器的设置,用户可以获得 通用I/O口的不同工作方式。其中,DDR(数据方向寄存器)设定I/O 口为输入/输出端口。数据寄存器(I/O寄存器)用于设定I/O口的高低 电平。RDR(驱动控制寄存器)用于设定I/O口的输出驱动能力。PE (上拉/下拉使能寄存器)用于当I/O口为输入口时使能内置上拉电阻 或下拉电阻的使用。PS(上拉/下拉选择寄存器)当中断允许位置位 时,用于选择上升沿触发或下降沿触发中断;当使能内置上拉/下拉 电阻时,用于选择使用上拉电阻或下拉电阻。IE(中断使能寄存器) 用于使能I/O口的中断功能。