1.1.1 I/O端口寄存器初始化
为了实现点灯程序,先要根据单板硬件设计初始化好指示灯所用CPM部分的相应端口或管脚,即将该端口配置为通用I/0口作为对指示灯的驱动输出并将相应管脚置高或置低。这包括对端口的5个寄存器(调试单板一般选用D端口)的初始化:开路漏极寄存器PODRD、数据方向寄存器PDIRD、管脚分配寄存器PPARD、特殊功能配置寄存器PSORD、数据寄存器PDATD。所有寄存器的管脚在配置时,如果没有作为指示灯的驱动管脚则全部置为高电平,而用作指示灯驱动的管脚根据8260用户手册的定义进行相应配置,具体如下:PODRD[n]置0时该I/O管脚作为输出驱动状态,置1时则作为开路漏极驱动;PDIRD[n]置0或1分别对应管脚作为输入或输出;PPARD[n]置0则设置为通用目的I/O,置1则为外围通信模块专用,如:SCC、SMC等通信模块;PSORD[n]的设置只有在PPARD[n]脚设置为1即作为外围通信功能时该寄存器才起作用,来决定与PPARD[n]相应的管脚置0还是1,在作为通用I/O时可将指示灯相应管脚位置0;PDATD[n]的设置值,即代表了送到指示灯管脚的高低电平,也便决定了指示灯的闪灭状态。了解了端口各寄存器的作用以后,还要关注一下每个寄存器的偏移地址,该地址可以通过宏在头文件中定义,如config.h中,也可以直接引用该地址,方便起见,建议采用后者。 示例如下: