Win10 IOT Raspberry pi c#RFID rc522

问题描述 投票:0回答:3

我在这里使用提供的代码-> RFID RC522 Raspberry PI 2 Windows IOT

我正在文本框中打印uid,但程序在此步骤中停止:

await mfrc.InitIO();

我的代码:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using System.Text;
using System.Net.Http;
using Windows.ApplicationModel.Background;
using Windows.System.Threading;
using Windows.Devices.Gpio;
using Mfrc522Lib;
using Windows.Devices.Enumeration;
using Windows.Devices.Spi;



namespace rfid
{ 
   public sealed partial class MainPage : Page
{

public MainPage()
{
    this.InitializeComponent();

}





public async void InitRC522Async()
{

    var mfrc = new Mfrc522();
    await mfrc.InitIO();

    while (true)
    {
        if (mfrc.IsTagPresent())
        {
            var uid = mfrc.ReadUid();
                textbox_1.Text = uid.ToString();

            mfrc.HaltTag();
        }
    }
}

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        InitRC522Async();
    }
}
}
c# windows-iot-core-10
3个回答
0
投票

您可以使用Device Portal将默认的控制器驱动程序更改为Inbox驱动程序。直接内存映射驱动程序用于lightning providers。顺便说一句,您需要在更改默认控制器驱动程序设置后重新启动设备。

enter image description here


0
投票

我已经为我的RFID考勤系统实现了相同的参考,RFID RC522 Raspberry PI 2 Windows IOT,我发现将检测到的UID打印到xaml文本框中会冻结程序。

要解决此问题,您可以使用任务延迟。这允许文本框在检测到标签后进行更新。

        var mfrc = new Mfrc522();
        await mfrc.InitIO();
        while(true)
        {
            if (mfrc.IsTagPresent())
            {
                var uid = mfrc.ReadUid().ToString();
                string uidString = uid;
                textbox1.Text = uidString;
                mfrc.HaltTag();

                await Task.Delay(TimeSpan.FromSeconds(1));
            }
        }

© www.soinside.com 2019 - 2024. All rights reserved.