该编码器可以使用RF或红外发射器传输多达16个TTL数字输入的状态。启用后,所包含的调制器将自动生成38kHz的红外线载波。
包含一个PIC微控制器,电路非常灵活。您可以决定哪些发射机输入将触发传输。您可以使用LATCH输入控制接收机输出被锁存或暂时。曼彻斯特编码的发射机输出非常适合最便宜的ASK无线电模块或红外线控制.
如果在编程PIC单片机时遇到麻烦,您可以考虑使用基于Holtek HT-12D,HT-12E和Motorola MC145026,MC145027,MC145028编码器/解码器的其他电路。
2 ^ 12编码器
序号 | 名称 | 类型 | 描述 |
1 | T0CKI | TTL输入 | 连接到VDD |
2 | VDD | 功率 | 连接电源 |
3 | NC | 未连接 | |
4 | VSS | 功率 | 连接到地面 |
5 | NC | 未连接 | |
6 | TXOUT | TTL输出 | 传输输出。LOW时不传输 |
直接连接到RF模块用于RF应用的DATA输入引脚 | |||
直接连接到IR LED或通过用于红外应用的晶体管** | |||
7 | -mod | TTL输入 | 调制 - 上电上拉为高电平禁止,拉低电平以启用38kHz载波 |
8 | -TE | TTL输入 | 低电平有效使能 - 拉低电平传输 |
9 | -测试 | TTL输入 | 低电平有效使能 - 在上电时拉低电平以产生固定的测试图案 |
10 | AD0 | TTL输入 | 地址或数据,可选活动低电平触发* |
11 | AD1 | TTL输入 | 地址或数据,可选活动低电平触发* |
12 | AD2 | TTL输入 | 地址或数据,可选活动低电平触发* |
13 | AD3 | TTL输入 | 地址或数据,可选活动低电平触发* |
14 | AD4 | TTL输入 | 地址或数据,可选活动低电平触发* |
15 | AD5 | TTL输入 | 地址或数据,可选活动低电平触发* |
16 | AD6 | TTL输入 | 地址或数据,可选活动低电平触发* |
17 | AD7 | TTL输入 | 地址或数据,可选活动低电平触发* |
18 | AD8 | TTL输入 | 地址或数据,可选活动低电平触发* |
19 | AD9 | TTL输入 | 地址或数据,可选活动低电平触发* |
20 | AD10 | TTL输入 | 地址或数据,可选活动低电平触发* |
21 | AD11 | TTL输入 | 地址或数据,可选活动低电平触发* |
22 | AD12 | TTL输入 | 地址或数据,可选活动低电平触发* |
23 | AD13 | TTL输入 | 地址或数据,可选活动低电平触发* |
24 | AD14 | TTL输入 | 地址或数据,可选活动低电平触发* |
25 | AD15 | TTL输入 | 地址或数据,可选活动低电平触发* |
26 | OSC2 | XTAL输出 | 振荡晶体输出 |
27 | OSC1 | XTAL输入 | 振荡器晶振输入 |
28 | -MCLR | ST输入 | 复位输入,连接到VDD |
*源代码中设置了触发功能。拉低时的任何触发输入将作为-TE输入,使传输地址位仅在解码器端确定
**如果直接连接,则最大电流源/下降限制为25 mA
编码器代码见附件。
2 ^ 12解码器
序号 | 名称 | 类型 | 描述 |
1 | T0CKI | TTL输入 | 连接到VDD |
2 | VDD | 功率 | 连接电源 |
3 | NC | 未连接 | |
4 | VSS | 功率 | 连接到地面 |
5 | NC | 未连接 | |
6 | RXIN | TTL输入 | 接收输入 其极性必须与编码器输出匹配 |
直接连接到RF模块用于RF应用的数据输出引脚直接 | |||
连接到红外接收器IC(例如TSOP1738)输出引脚用于红外应用 | |||
7 | -INV | TTL输入 | 低电平有效低电平反相AD0-AD15输出 |
8 | -LATCH | TTL输入 | 低电平有效低电平锁定AD0-AD15上的最后接收数据 |
拉高电平将AD0-AD15复位为无接收时的默认状态 | |||
9 | VT | TTL输出 | 有效传输指示灯 - 当 |
没有接收时有效数据包被接收为低电平时为高电平 | |||
10 | AD0 | TTL输入/输出* | 地址输入或数据输出* |
11 | AD1 | TTL输入/输出* | 地址输入或数据输出* |
12 | AD2 | TTL输入/输出* | 地址输入或数据输出* |
13 | AD3 | TTL输入/输出* | 地址输入或数据输出* |
14 | AD4 | TTL输入/输出* | 地址输入或数据输出* |
15 | AD5 | TTL输入/输出* | 地址输入或数据输出* |
16 | AD6 | TTL输入/输出* | 地址输入或数据输出* |
17 | AD7 | TTL输入/输出* | 地址输入或数据输出* |
18 | AD8 | TTL输入/输出* | 地址输入或数据输出* |
19 | AD9 | TTL输入/输出* | 地址输入或数据输出* |
20 | AD10 | TTL输入/输出* | 地址输入或数据输出* |
21 | AD11 | TTL输入/输出* | 地址输入或数据输出* |
22 | AD12 | TTL输入/输出* | 地址输入或数据输出* |
23 | AD13 | TTL输入/输出* | 地址输入或数据输出* |
24 | AD14 | TTL输入/输出* | 地址输入或数据输出* |
25 | AD15 | TTL输入/输出* | 地址输入或数据输出* |
26 | OSC2 | XTAL输出 | 振荡晶体输出 |
27 | OSC1 | XTAL输入 | 振荡器晶振输入 |
28 | -MCLR | ST输入 | 复位输入,连接到VDD |
*地址位在软件中进行设置,并在编程MCU后修复。其他是数据位类型是TTL输入,当设置为地址位时,TTL输出设置为数据位。
解码器代码见附件。
软件
所有的器件都使用新的基于FLASH的微控制器,这意味着它们可以重新编程多次。您可以尝试使用源代码设置来满足您的需求。代码必须在MPLAB下编译为链接项目。请在PIC页面检查FAQ 。
源文件 | 线 | 含义 |
ENC-parallel.asm | en_mask_portb dt b'00000000' | 设置AD7-AD0位触发 |
0组触发功能,1个禁用 | ||
ENC-parallel.asm | en_mask_portc dt b'00000000' | 设置AD15-AD8位触发 |
0组触发功能,1个禁用 | ||
dec-parallel.asm | 未实现 | 选择AD7-AD0引脚作为地址位 |
1选择引脚作为地址输入,0设置引脚作为数据输出 | ||
dec-parallel.asm | 未实现 | 选择AD15-AD8引脚作为地址位 |
1选择引脚作为地址输入,0设置引脚为数据输出 |