一、
触发器很多时候是很有用的,CAN总线或者串口周期发送一个信号,这个信号作为一个判断条件,当这个信号为有效信号时只需要执行一遍用户程序。
这里用触发器就会很好处理,有效信号为高电平那么做一个上升沿触发函数,有效信号为低电平那么做一个下降沿触发函数。
二、触发器功能实现
1、首先定义一个结构体
typedef struct _trig
{
bool input;
bool output;
bool lastInput;
}trig_t;
C语言本身是没有bool类型的,我们可以自己定义一个或者使用#include 添加这个库。
2、上升沿函数
bool R_Trig(trig_t* trig)
{
if((trig- >input==true) && (trig- >lastInput==false)) {
trig- >output = true;
} else {
trig- >output = false;
}
trig- >lastInput = trig- >input;
return trig- >output;
}
3、下降沿函数
bool F_Trig(trig_t* trig)
{
if((trig- >input==false) && (trig- >lastInput==true)) {
trig- >output = true;
} else {
trig- >output = false;
}
trig- >lastInput = trig- >input;
return trig- >output;
}
4、使用例程
上升沿:
trig_t R = {0}; /* 定义一个结构体 R */
bool userVar = false; /* 定义一个用于接收总线信号的变量 */
int main()
{
R.input = userVar;
if( R_Trig(&R)) {
/* 只执行一遍的用户代码 */
}
return 0;
}
下降沿:
trig_t F = {
.input = true;
.laseInput = true;
}; /* 定义一个结构体 R */
bool userVar = true; /* 定义一个用于接收总线信号的变量 */
int main()
{
F.input = userVar;
if( F_Trig(&F)) {
/* 只执行一遍的用户代码 */
}
return 0;
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
CAN总线
+关注
关注
145文章
2020浏览量
134696 -
C语言
+关注
关注
183文章
7642浏览量
144632 -
触发器
+关注
关注
14文章
2051浏览量
63048
发布评论请先 登录
相关推荐
热点推荐
基于CPLD的触发器功能的模拟实现
实验内容 将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集成一个CPLD芯片中模拟其功能,并研究其相互转换的方法。 实验的
发表于 12-05 09:33
•13次下载
jk触发器实现74ls194功能
JK触发器是数字电路触发器中的一种基本电路单元。本文以jk触发器为中心,主要介绍了JK触发器工作特性以及jk触发器是如何
发表于 12-22 16:09
•2.5w次阅读
触发器的输出是现态函数
触发器的输出是现态函数 触发器是数字电路中的一种重要元件,它们通常被用于存储和装载二进制数据,也可以用于控制和同步各种数字电路。在许多数字电路应用中,触发器的输出通常被用作输入信号来
rs触发器的逻辑功能
RS触发器是数字电路中最简单的一种触发器,其由两个互相反向的电平触发器组成。RS触发器的逻辑功能非常重要,它可以用于存储1位二进制数据,并能
RS触发器的实现原理 rs触发器具有什么功能
RS触发器是一种基本的数字逻辑电路,它由两个互补的反馈连接组成。RS触发器可以用作其他高级逻辑电路的构建模块,如计数器、移位寄存器和内存单元等。本文将详细介绍RS
如何用jk触发器构成t触发器?t触发器逻辑功能有哪些
的触发器,其输入信号作用于触发器,触发器将根据输入信号进行状态切换。本文将详细介绍如何使用JK触发器构成T触发器,并介绍T
t触发器与d触发器的区别和联系
)。 1. 触发器的基本概念 触发器是一种具有记忆功能的电路,它可以存储一位二进制信息。在数字电路中,触发器通常由两个稳定的工作状态组成,即0状态和1状态。
t触发器变为d触发器的条件
是一种具有记忆功能的数字电路元件,可以存储一位二进制信息。它通常由逻辑门、触发器存储元件和反馈回路组成。触发器的输出状态取决于输入信号和当前状态。 1.2 触发器的分类
基本rs触发器有哪三种功能 基本rs触发器的触发方式是什么
变为高电平。当输入信号R为高电平时,触发器的输出Q将被置为高电平,无论输入信号S的状态如何。这种功能通常用于将触发器的状态设置为特定的初始状态。 置位功能的

触发器功能函数实现
评论