张高兴的 Windows 10 IoT 开发笔记:串口红外编解码模块 YS-IRTM

This is a Windows 10 IoT Core project on the Raspberry Pi 2/3, coded by C#.

GitHub: https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/IRTM

Image

Reference

https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/IRTM/Reference

Connect

  • RXD - UART0 TX (PIN 8)
  • TXD - UART0 RX (PIN 10)
  • VCC - 5V
  • GND - GND

Note

There is one Serial UART available on the RPi2/3: UART0

  • Pin 8 - UART0 TX
  • Pin 10 - UART0 RX

You need add the following capability to the Package.appxmanifest file to use Serial UART.

<Capabilities>
    <DeviceCapability Name="serialcommunication">
        <Device Id="any">
            <Function Type="name:serialPort" />
        </Device>
    </DeviceCapability>
</Capabilities>

What Contains

In IRTM.cs file

/// <summary>
/// Initialize YS-IRTM
/// </summary>
public async Task InitializeAsync();

/// <summary>
/// Send Order
/// </summary>
/// <param name="code">Order</param>
public async Task SendAsync(byte[] code);

/// <summary>
/// Read Order
/// </summary>
public async Task<byte[]> ReadAsync();

/// <summary>
/// Set YS-IRTM Address
/// </summary>
/// <param name="address">Address from 1 to FF</param>
public async Task SetAddressAsync(byte address);

/// <summary>
/// Set YS-IRTM Baud Rate
/// </summary>
/// <param name="rate">Baud Rate</param>
public async Task SetBaudRateAsync(IrtmBaudRate rate);

/// <summary>
/// Return YS-IRTM
/// </summary>
/// <returns>YS-IRTM</returns>
public SerialDevice GetDevice();

/// <summary>
/// Cleanup
/// </summary>
public void Dispose();

How to Use

  • First, you need to create a IRTM object. After that you should call InitializeAsync() to initialize.
IRTM irtm = new IRTM();
await irtm.InitializeAsync();
  • Second, SendAsync().
irtm.SendAsync(new byte[] { 0x01, 0x02, 0x03 });
  • If you want to close the sensor, call Dispose().
irtm.Dispose();
posted @ 2018-05-25 22:52  张高兴  阅读(1620)  评论(0编辑  收藏  举报