RH850端口有3种工作模式
- 通用IO口(普通数字口)。PMC控制寄存器对应bit为0。
- 软件配置复用模式。PMC控制寄存器对应bit为1。PIPC寄存器对应bit为0。
- 硬件直接连接模式。PMC控制寄存器对应bit为1。PIPC寄存器对应bit为1。
主要控制寄存器
PIPC
0: 端口由软件配置(software I/O control)。
1: 端口由硬件单元直接连接(direct I/O control).
PMC
0:普通IO口功能。
1:复用IO口功能。
下面是技术规格书列出的复用功能配置(PMC=1)。从表中可以看出,PFCAE,PFCE,PFC决定复用功能类型1-7。二进制000B对应复用功能1,110B对应复用功能7。PM寄存器对应输入输出功能。

复用功能对应关系表
| PFCAE | PFCE | PFC | PM | IO | IO复用功能 |
| 0 | 0 | 0 | 0 | OUT | 1 |
| 0 | 0 | 0 | 1 | IN | 1 |
| 0 | 0 | 1 | 0 | OUT | 2 |
| 0 | 0 | 1 | 1 | IN | 2 |
| 0 | 1 | 0 | 0 | OUT | 3 |
| 0 | 1 | 0 | 1 | IN | 3 |
| 0 | 1 | 1 | 0 | OUT | 4 |
| 0 | 1 | 1 | 1 | IN | 4 |
| 1 | 0 | 0 | 0 | OUT | 5 |
| 1 | 0 | 0 | 1 | IN | 5 |
| 1 | 0 | 1 | 0 | OUT | 6 |
| 1 | 0 | 1 | 1 | IN | 6 |
| 1 | 1 | 0 | 0 | OUT | 7 |
| 1 | 1 | 0 | 1 | IN | 7 |
通过以上对应关系表,很容易配置外设复用功能。下面以CAN0举例:
IO口复用功能表

查找复用功能表,P10_0脚是CAN0的接收脚CAN0_Rx,P10_1脚是CAN0的发送脚CAN0_Tx。
复用功能是ALT2。
//CAN0_Rx配置
//软件控制复用功能
PIPC10 &= ~(1<<0);
PMC |= 1<<0;
//复用功能2,配置001
PFCAE10 &= ~(1<<0);
PFCE10 &= ~(1<<0);
PFC10 |= 1<<0;
//输入
PM10 |= 1<<0;
//CAN0_Tx配置//P10_1
//软件控制复用功能
PIPC10 &= ~(1<<1);
PMC |= 1<<1;
//复用功能2,配置001
PFCAE10 &= ~(1<<1);
PFCE10 &= ~(1<<1);
PFC10 |= 1<<0;
//输出
PM10 &= ~(1<<1);














