如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第四章普通I/O及第一个汇编工程4.1通用I/O接口基本概念及连接方法输入引脚有三种不同的连接方式:带上拉电阻的连接、带下拉电阻的连接和“悬空”连接。4.2MC68HC908GP32的并行I/O端口A口的8根引脚与键盘中断模块的引脚复用,这里只讨论A口作为普通I/O口的功能。(1)A口的寄存器A口作为普通I/O口时,具有三个寄存器,它们是:A口数据方向寄存器(DDRA)、A口数据寄存器(PTA)、A口上拉电阻允许寄存器(PTAPUE)。①A口数据方向寄存器(DataDirectionRegisterA,DDRA)A口数据方向寄存器(DDRA)的地址是:$0004,DDRA的第7~0位分别记为DDRA7~DDRA0,这些位分别控制着A口引脚PTA7~PTA0是输入还是输出,若DDRAx=0,则引脚PTAx为输入,若DDRAx=1,则引脚PTAx为输出。复位时DDRA为$00。记忆要点:数据方向寄存器的一位:0—定义输入,1—定义输出A口数据寄存器(PTA)的地址是:$0000,PTA的第7~0位分别记为PTA7~PTA0。若A口的某一引脚PTAx被定义成输出,程序使A口数据寄存器PTA的相应位PTAx=0,则引脚PTAx输出“低电平”;程序使PTAx=1,则引脚PTAx输出“高电平”。若A口的某一引脚PTAx被定义成输入,程序通过读取A口数据寄存器PTA,获得输入情况,0表示输入为“低电平”,1表示输入为“高电平”。记忆要点:输出时:数据寄存器的一位:0—输出低电平1—输出高电平输入时:数据寄存器的一位:0—代表外部输入低电平1—代表外部输入高电平A口上拉电阻允许寄存器(PTAPUE)的地址是:$000D。PTAPUE的第7~0位分别记为PTAPUE7~PTAPUE0。若A口的某一引脚PTAx被定义成输入,则可通过置PTAPUE的相应位PTAPUEx为1来定义其内接上拉电阻,即引脚PTAx已经通过内部电阻与电源VDD相接,此时若引脚PTAx若通过开关接地,则开关闭合时为低电平。那么寄存器PTA的相应位PTAx=0,开关断开时为高电平,寄存器PTA的相应位PTAx=1,通过读取寄存器PTA获得开关状态。记忆要点:在引脚被定义成输入时,可通过上拉电阻允许寄存器定义有无内部上拉电阻:0—没有内部上拉电阻1—有内部上拉电阻下图给出了A口作为普通I/O使用时,一个外部引脚的相应内部逻辑电路框图。当DDRAx=1时,读地址$0000就是读PTAx。当DDRAx=0时,读地址$0000就是读引脚PTAx电平。B口的8根引脚与8路A/D转换模块的引脚复用,这里只讨论B口作为普通I/O口的功能。(1)B口的寄存器B口作为普通I/O口时,具有二个寄存器,它们是:B口数据方向寄存器(DDRB)和B口数据寄存器(PTB)。①B口数据方向寄存器(DataDirectionRegisterB,DDRB)B口数据方向寄存器(DDRB)的地址是:$0005,DDRB的第7~0位分别记为DDRB7~DDRB0,这些位分别控制着B口引脚PTB7~PTB0是输入还是输出,若DDRBx=0,则引脚PTBx为输入,若DDRBx=1,则引脚PTBx为输出。复位时DDRB为$00。记忆要点:数据方向寄存器的一位:0—定义输入,1—定义输出B口数据寄存器(PTB)的地址是:$0001,PTB的第7~0位分别记为PTB7~PTB0。若B口的某一引脚PTBx被定义成输出,程序使B口数据寄存器PTB的相应位PTBx=0,则引脚PTBx输出“低电平”,程序使PTBx=1,则引脚PTBx输出“高电平”。若B口的某一引脚PTBx被定义成输入,程序通过读取B口数据寄存器PTB,获得输入情况,0表示输入为“低电平”,1表示输入为“高电平”。注意:B口被定义成输入时,没有内部上拉电阻下图给出了B口作为普通I/O使用时,一个外部引脚的相应内部逻辑电路框图。4.2.3C口、D口和E口PrgFrame.prj工程中芯片相关类的程序文件包括:GP32映像寄存器名定义头文件(GP32ASM.h)、芯片初始化文件(MCUinit.s)和中断处理子程序与中断向量表文件(Vectors08.s)。(1)GP32ASM.h本文件为MC908GP32MCU映象寄存器名定义头文件,它是GP32的汇编工程的映像寄存器名与其地址的对应表,(2)MCUinit.s芯片初始化文件,主要包含与芯片有关的设置,如总线频率、看门狗模块的使用等。(3)Vectors08.s该文件包含了中断处理程序和中断矢量表。中断处理程序是当中断发生后执行的子程序,中断子程序在返回时需要使用RTI指令。中断矢量表实质是在MCU的矢量区写入一些常量值,这些常量值就是相应的中断处理程序的入