So erfassen Sie die steigenden und fallenden Flanken des Signals in C#

Steigende und fallende Flanken werden sehr häufig verwendet, wenn wir den Host-Computer entwickeln, und werden häufig beim Auslösen von Nachrichten, beim Speichern von Impulsen usw. verwendet. Aber in C# gibt es keine Anweisungen wie die steigende Flanke und die fallende Flanke in der SPS, und wir müssen unsere eigene Codierung implementieren.

Zuerst erstellen wir eine Klasse zum Generieren steigender und fallender Flanken mit dem Namen "GetPN".
Bildbeschreibung hier einfügen

namespace Test
{
    
    
    class GetPN
    {
    
    
        bool _P = false;
        bool _N = false;


        public bool P(bool Value)
        {
    
    
            if (Value && !_P)
            {
    
    
                _P = true;
                return true;
            }


            if (!Value)
                _P = false;


            return false;
        }


        public bool N(bool Value)
        {
    
    
            if (!Value && _N)
            {
    
    
                _N = false;
                return true;
            }


            if (Value)
                _N = true;
            return false;
        }
    }
}

Im obigen Beispiel verwenden wir zwei Schaltflächen, um die Setz- und Rücksetzoperationen des Signals zu simulieren, und rufen dann die GetP- und GetN-Methoden im Thread auf, um die steigenden bzw. fallenden Flanken zu erfassen. Verwenden Sie den Titeltext auf dem Formular, um aufzufordern, wann die Signaländerung erfasst wird.
Bildbeschreibung hier einfügen

Supongo que te gusta

Origin blog.csdn.net/weixin_45499836/article/details/127114554
Recomendado
Clasificación