# BC7215(A) 通用红外编/解码器Arduino库

BC7215(A)芯片是一个用于编码（发送）和解码（接收）红外遥控信号的综合解决方案，支持广泛的常见红外遥控格式。它拥有红外信号编码格式的自动识别系统，确保与超过99.5%的空调遥控器和超过98%的视听设备遥控器兼容。

BC7215有两个版本BC7215和BC7215A，它们在各个方面都兼容，唯一的区别是A版本使用36ms间隔来分隔红外信号，而BC7215版本使用18ms，这使得A版本更适合解码空调红外信号。为简单起见，以下两个版本都称为BC7215。

BC7215具有输出和输入原始数据的能力，以及一个包含数据调制所需全部信息的33字节格式数据包。这使得BC7215也适合用于数据通信，并可用于Arduino UNO等低配置系统。请参考[**BC7215数据手册**](./bc7215.pdf)了解BC7215的更多详细信息。

![BC7215配合Arduino使用](../img/bc7215_app_arduino.png)

这个库使BC7215与任何Arduino配合工作变得简单，只需调用几个函数即可。

学习这个库的最佳方式是按照示例进行。库中提供了4个示例：

- 通用红外遥控信号解码器
- 2通道遥控开关
- 4键可编程遥控器
- 红外数据通信

建议按照上述顺序来熟悉库函数。

"**通用红外遥控信号解码器**"是最简单的应用，它只是在Arduino IDE的串行监视器上显示从接收到的红外信号中解码的原始数据。

"**2通道遥控开关**"也是一个仅接收（解码）的应用。它接受来自任何遥控器的任何红外信号，可以在Arduino中存储2个独立的红外信号数据。然后Arduino将监控接收到的红外信号并与这2个预存储的数据进行比较，如果匹配其中一个，Arduino将驱动相应的继电器进行切换。通过这个应用，您可以使用遥控器上的闲置按键来控制2个开关。

"**4键可编程遥控器**"实现了一个简单的4键可编程遥控器，可以"学习"和"复制"任何遥控器，即使是不同品牌或型号的。

"**红外数据通信**"最好与2个BC7215加Arduino板一起使用，这样您可以看到从另一端接收到的数据。电路有2个按钮，可以发送带有和不带有CRC校验和的数据，当不发送时，电路处于接收模式，将在串行监视器上显示任何接收到的数据。

请查看[**BC7215 Arduino库示例**](./bc7215_arduino_examples_cn.pdf)  (PDF)了解示例的详细信息。

查看[**BC7215 Arduino库手册**](./bc7215_arduino_lib_cn.pdf)的完整文档。