📄 iosfr86.h
字号:
7 6 5 4 3 2 1 0
| | | | + + + +-- SAIN:模拟输入通道选择 0000: Select AIN0
| | | | 0001: Select AIN1
| | | | 0010: Select AIN2
| | | | 0011: Select AIN3
| | | | 0100: Select AIN4
| | | | 0101: Select AIN5
| | | | 0110: Select AIN6
| | | | 0111: Select AIN7
| | | | 1***: 保留
| | | +---------- AINDS:模拟信号输入 0:启动 1:未启动
| + +------------ AMD:AD操作模式 00: AD操作未启动
| 01: 软件开始模式
| 10: 保留
| 11: 重复模式
+---------------- ADRS:AD转换开始 0:-- 1:开始 ***/
unsigned char __io(0x000F) ADCCR2; // R/W AD control register 2
/*** ADCCR2 AD Converter Control Register 2 (0x000F 初始**00 0000 R/W)
7 6 5 4 3 2 1 0
| + + +---- ACK:AD转换时间选择 000: 39/fc
| 001: 保留
| 010: 78/fc
| 011: 156/fc
| 100: 312/fc
| 101: 624/fc
| 110: 1248/fc
| 111: 保留
+------------ IREFON:AD转换电阻连接 0:仅在转换时连接1:时刻连接 ***/
unsigned int __io(0x0010) TREG1A; // R/W Timer register 1A ML
//unsigned char __io(0x0010) TREG1AL; // R/W Timer register 1A
//unsigned char __io(0x0011) TREG1AM; // R/W Timer register 1A
unsigned char __io(0x0012) TREG1AH; // R/W Timer register 1A
/*** TREG1A Timer register (0x0012,0x0011,0x0010 初始为00 0000 0000 0000 0000 R/W) ***/
unsigned char __io(0x0013) TREG1B; // R/W Timer register 1B
/*** TREG1B Internal window gate pulse setting register (0x0013 初始0000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | + + + +-- Tb:设置"L"电平长度:(16-Tb)*2^13/fc 或 (16-Tb)*25/fs
+ + + +---------- Ta:设置"H"电平长度:(16-Tb)*2^13/fc 或 (16-Tb)*25/fs ***/
unsigned char __io(0x0014) TC1CR1; // R/W Timer Counter control 1
/*** TC1CR1 TC1 Control Register (0x0014 初始1000 1000 R/W)
7 6 5 4 3 2 1 0
| | | | | | + +-- TC1M:TC1模式选择: 00: 计时计数模式
| | | | | | 01: 保留
| | | | | | 10: 脉冲宽度测量模式
| | | | | | 11: 频率测量模式
| | | + + +------ TC1CK:TC1时钟选择 000: Internal clock fc
| | | 001: Internal clock fs
| | | 010: Internal clock fc/2^23 or fs/2^15
| | | 011: Internal clock fc/2^13 or fs/2^5
| | | 100: Internal clock fc/2^11 or fs/2^3
| | | 101: Internal clock fc/2^7
| | | 110: Internal clock fc/2^3
| | | 111: 外部时钟(ECIN管脚输入)
| + +------------ TC1S:TC1开始控制 00: 停止并清掉计数器及溢出标志
| 01: 开始
| 10: 保留
+---------------- TC1C: 0:计数/溢出标志清除需要 1会被自动设置在清除后 ***/
unsigned char __io(0x0015) TC1CR2; // R/W Timer Counter control 2
/*** TC1CR2 Timer/counter 1 Control Register 2 (0x0015 初始0000 000* R/W)
7 6 5 4 3 2 1 0
| | | | | | +---- TC6OUT:TC6 output(/PWM6//PDO6//PPG6) 0:输出到P33 1:不输出到P33
| | | | + +------ WGPSCK:脉冲时钟设置: 00: 2^12/fc or 2^4/fs
| | | | 01: 2^13/fc or 2^5/fs
| | | | 10: 2^14/fc or 2^6/fs
| | | | 11: 保留
| | | +---------- SEGDG:脉冲中断沿选择: 0:下降沿中断 1:上升/下降沿中断
| + +------------ SGP:脉冲选择: 00: ECNT输入
| 01: 中断脉冲(TREG1B)
| 10: /PWM6//PDO6//PPG6(TC6)输出
| 11: 保留
+---------------- SEG:外部输入时钟(ECIN)选择: 0:下降沿计数 1:上/下沿计数 ***/
unsigned char __io(0x0016) TC1SR; // W TC1 Status
/*** TC1SR TC1 Status Register (0x0016 初始0000 0000 W)
7 6 5 4 3 2 1 0
| +-------------- HEOVF:计数溢出监视: 0:无溢出1:溢出
+---------------- HECF:运行状态监视: 0:停止或未启动 1:正在计数(在Ta时) ***/
unsigned char __io(0x0018) TC3CR; // R/W Timer Counter 3 control
/*** TC3CR TC3 Control Register (0x0018 初始0000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | | + + +-- TC3M:TC3运行模式: 000:8-bit计时计数模式
| | | | | 001:8-bit编程分频输出(PDO)模式
| | | | | 010:8-bit脉冲宽度调制(PWM)模式
| | | | | 011:16-bit模式(由TC4M控制)
| | | | | 1**:保留
| | | | +-------- TC3S:TC3控制: 0:停止并清掉计数 1:命令开始
| + + +---------- TC3CK:TC3时钟选择: Normal1/2,IDLE1/2 SLOW1/2,SLEEP1/2
| DV7CK=0 DV7CK=1
| 000: fc/2^11 fs/2^3 fs/2^3
| 001: fc/2^7 fc/2^7
| 010: fc/2^5 fc/2^5
| 011: fc/2^3 fc/2^3
| 100: fs fs fs
| 101: fc/2 fc/2
| 110: fc fc
| 111: TC3管脚输入
+---------------- TFF3:Timer F/F3控制 0:清除 1:设置 ***/
unsigned char __io(0x0019) TC4CR; // R/W Timer Counter 4 control
/*** TC4CR TC4 Control Register (0x0019 初始0000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | | + + +-- TC4M:TC4运行模式: 000:8-bit计时计数模式
| | | | | 001:8-bit编程分频输出(PDO)模式
| | | | | 010:8-bit脉冲宽度调制(PWM)模式
| | | | | 011:保留
| | | | | 100:16-bit计时计数模式
| | | | | 101:唤醒计数模式
| | | | | 110:16-bit编程分频输出(PDO)模式
| | | | | 111:16-bit编程脉冲产生(PPG)模式
| | | | +-------- TC4S:TC4控制: 0:停止并清掉计数 1:命令开始
| + + +---------- TC4CK:TC4时钟选择: Normal1/2,IDLE1/2 SLOW1/2,SLEEP1/2
| DV7CK=0 DV7CK=1
| 000: fc/2^11 fs/2^3 fs/2^3
| 001: fc/2^7 fc/2^7
| 010: fc/2^5 fc/2^5
| 011: fc/2^3 fc/2^3
| 100: fs fs fs
| 101: fc/2 fc/2
| 110: fc fc
| 111: TC4管脚输入
+---------------- TFF4:Timer F/F4控制 0:清除 1:设置 ***/
unsigned char __io(0x001A) TC5CR; // R/W Timer Counter 5 control
/*** TC5CR TC5 Control Register (0x001A 初始*000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | + + +-- TC5M:TC5运行模式: 000:8-bit计时计数模式
| | | | 001:保留
| | | | 010:保留
| | | | 011:16-bit模式(由TC6M控制)
| | | | 1**:保留
| | | +-------- TC5S:TC5控制: 0:停止并清掉计数 1:命令开始
+ + +---------- TC5CK:TC5时钟选择: Normal1/2,IDLE1/2 SLOW1/2,SLEEP1/2
DV7CK=0 DV7CK=1
000: fc/2^11 fs/2^3 fs/2^3
001: fc/2^7 fc/2^7
010: fc/2^5 fc/2^5
011: fc/2^3 fc/2^3
100: fs fs fs
101: fc/2 fc/2
110: fc fc
111: 保留 ***/
unsigned char __io(0x001B) TC6CR; // R/W Timer Counter 6 control
/*** TC6CR TC6 Control Register (0x001B 初始0000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | | + + +-- TC6M:TC6运行模式: 000:8-bit计时计数模式
| | | | | 001:8-bit编程分频输出(PDO)模式
| | | | | 010:8-bit脉冲宽度调制(PWM)模式
| | | | | 011:保留
| | | | | 100:16-bit计时计数模式
| | | | | 101:唤醒计数模式
| | | | | 110:16-bit编程分频输出(PDO)模式
| | | | | 111:16-bit编程脉冲产生(PPG)模式
| | | | +-------- TC6S:TC6控制: 0:停止并清掉计数 1:命令开始
| + + +---------- TC6CK:TC6时钟选择: Normal1/2,IDLE1/2 SLOW1/2,SLEEP1/2
| DV7CK=0 DV7CK=1
| 000: fc/2^11 fs/2^3 fs/2^3
| 001: fc/2^7 fc/2^7
| 010: fc/2^5 fc/2^5
| 011: fc/2^3 fc/2^3
| 100: fs fs fs
| 101: fc/2 fc/2
| 110: fc fc
| 111: TC6管脚输入
+---------------- TFF6:Timer F/F6控制 0:清除 1:设置 ***/
unsigned char __io(0x001C) TTREG3; // R/W Timer register 3
unsigned char __io(0x001D) TTREG4; // R/W Timer register 4
unsigned char __io(0x001E) TTREG5; // R/W Timer register 5
unsigned char __io(0x001F) TTREG6; // R/W Timer register 6
unsigned char __io(0x0020) ADCDR1; // R AD converter register 1
/*** ADCDR1 AD Conversion Result Register (0x0020 初始0000 0000 R)
7 6 5 4 3 2 1 0
| | | | | | | +-- AD02:
| | | | | | +---- AD03:
| | | | | +------ AD04:
| | | | +-------- AD05:
| | | +---------- AD06:
| | +------------ AD07:
| +-------------- AD08:
+---------------- AD09: ***/
unsigned char __io(0x0021) ADCDR2; // R AD converter register 2
/*** ADCDR2 AD Conversion Result Register (0x0021 初始0000 **** R)
7 6 5 4 3 2 1 0
| | | +---------- ADBF: AD转换忙标志 0:AD转换停止 1:正在转换
| | +------------ EOCF: AD转换结束 0:在之前或正在转换 1:结束
| +-------------- AD00:
+---------------- AD01: ***/
unsigned char __io(0x0025) UARTCR1; // W UART control register 1
/*** UARTCR1 UART Control Register (0x0025 初始0000 0000 R/W)
7 6 5 4 3 2 1 0
| | | | | + + +-- BRG:传输时钟选择: 000: fc/13
| | | | | 001: fc/26
| | | | | 010: fc/52
| | | | | 011: fc/104
| | | | | 100: fc/208
| | | | | 101: fc/416
| | | | | 110: fc/TC5(INTTC5)
| | | | | 111: fc/96
| | | | +-------- PE:Parity addition: 0:No Parity 1:Parity
| | | +---------- EVEN:Even-numbered parity: 0:Odd-numbered parity 1:Even-numbered parity
| | +------------ STBT:传输停止位的长度: 0:1位 1:两位
| +-------------- RXE:接收操作 0:关 1:开
+---------------- TXE:发射操作 0:关 1:开 ***/
//unsigned char __io(0x0025) UARTSR; // R UART Status register
/*** UARTSR (0x0025 初始0000 11** R/W)
7 6 5 4 3 2 1 0
| | | | | +------ TBEP:传输数据缓冲区空标志 0:缓冲有数 1:空的
| | | | +-------- TEND:传送结束标志 0:传送中 1:结束
| | | +---------- RBFL:接收数据缓冲区空标志 0:接收缓冲空 1:有数
| | +------------ OERR: Overrun错误标志 0:无 1:错误
| +-------------- FERR: Framing错误标志 0:无 1:错误
+---------------- PERR: Parity错误标志 0:无 1:错误 ***/
unsigned char __io(0x0026) UARTCR2; // W UART control register 2
/*** UARTCR2 UART Control Register 2 (0x0026 初始**** *000 R/W)
7 6 5 4 3 2 1 0
| | +-- STOPBR:接收停止位长度: 0:1位 1:两位
+ +---- RxDNC:选择RxD输入的噪音判断时间: 00: 无
01: <31/fc
10: <63/fc
11: <127/fc ***/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -