linux 系统对信号的处理,Linux下的信号处理函数总结

1.信号处理函数

相关函数原型如下:

#include

sighandler_t signal(int signum, sighandler_t handler);

第一参数是信号

第二个参数是信号处理器:

1.可以是SIG_DFL,信号的默认动作

2. 可以是SIG_IGN,忽略该信号

3. 一个带有一个整型参数的处理函数。

#include

int sigaction(int signum, const struct sigaction *act,

struct sigaction *oldact);

signum  要处理的信号

act    指针,指向描述操作的结构 如何响应信号的结构体

oldact  指针,指向描述被替换操作的结构 被替换的处理设置的结构体

struct sigaction {

void    (*sa_handler)(int);

void    (*sa_sigaction)(int, siginfo_t *, void *);

sigset_t  sa_mask;

int        sa_flags;

void    (*sa_restorer)(void);

};

进程该如何处理信号(早期的信号处理机制):

进程可以通过signal系统调用来告诉内核该怎么去处理信号

1.接受默认处理

按照信号本来的意图区处理 signal(SIGINT,SIG_DFL)

2.忽略信号

signal(SIGINT,SIG_IGN) 忽略SIGINT信号

3.调用一个函数

signal(SI

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ARM微处理器单片机控制器应用场合JMDM-ARM20DIOMRdoc,一、特性采用ARM 32位的Cortex™-M3 CPU,128K闪存程序存储器;20K的SRAM。主电源采用18V交流电(或24V直流电),外围驱动电源采用24/12V直流电;8路光电隔离数字量输入,NPN输入形式,输入电流为10mA;4路继电器输出(可接220V电压,最大承受电流是5A),采用光电隔离和启用内部看门狗及严格的高频滤除特性,使系统工作稳定可靠,无死机现象;有1路标准的RS232串行通信接口(抗15KV静电冲击),可直接与电脑或文本显示器等外设通信;可直接通过RS232接口下载程序,无需烧录器,方便程序修改、升级;有一盏LED灯显示工作状态,有一个拨码开关可根据程序需要设定程序状态或程序参数;外壳安装尺寸:115mm×100mm×30mm;可用导轨安装或用螺钉固定安装。内部控制板尺寸:长×宽×高为:92mm×86mm×28mm; 用Keil C 或汇编编程,用户编程有困难的可把工艺流程发给我司,我司可帮助编程。二、规格 工作温度:-10~+65°C;储存温度:-20~+80°C ;湿度:5~95% 无凝结 ;功耗(无外部设备): +18V@ 0.5A (典型值) ;三、用途可用于各种12个点以内的控制系统,可控制气缸,电磁阀,继电器,步进电机,可外接光电式,电容式,电感式,霍尔式等各种传感器;可用于替代12点以内的PLC用于各种控制场合(如各种机器控制);可用于ARM学习和试验。四、编程说明在接线图上标明了输入输出端口所对应的是控制板的输入输出口:1)In(x): 当In(x)函数返回0时就说明第x个输入点有信号;out_bit(x,0):打开第X点输出;out_bit(x,1):关断第X点输出;软件资料提供范例程序;可以在这基础上修改学习。
计算机作业及分析解答 计算机作业 题目:用 FFT 对模拟信号做谱分析—理解频率分辨率和频谱泄漏的概念。 设 ) 50 cos( ) 100 sin( ) 200 cos( ) ( t t t t x a ,用 FFT 分析 ) (t x a 的频谱结构, 选择不同的截取长度 Tp,观察截断效应,试用加窗的方法减少谱间干扰。 第一步:对模拟信号进行采样,采样频率 4 0 0 s f H z = ,采样间隔 1 / s T f = ,得 到采样序列 ( ) ( ) a x n x n T = ; 第二步:对采样序列加窗,得到 ( ) ( ) ( ) ( ) ( ) a v n x n w n x n T w n = = , ) (n w 是窗函数, 长度记为 N,则得到的序列 ( ) v n 长度为 N,对应的时间长度记为 p T ,二者的关 系为 p s T f N ; 第三步:对 ( ) v n 做 2048 点 DFT,得到的数字谱 ( ) V k ,作为 ( ) a x t 的近似频谱。 参数选取: ( 1)窗函数选取矩形窗函数 ) ( ) ( n R n w N ,截取时间长度 p T 分别选为 0.04s、4×0.04s、16×0.04s,即序列长度分别为 16、64、256; (2)(选做)窗函数选取海明窗(在 Matlab 程序调用函数 Hamming 产生宽 度 为 N 的 Hamming 窗 函 数 向 量 ) , 截 取 时 间 长 度 p T 分 别 选 为 0.04s、4×0.04s、16×0.04s,,即序列长度分别为 16、64、256。 要求: 设定以上三种不同的截取时间长度 p T ,分别选取上述两种窗函数,输出幅频特 性曲线 ( ) V k ,并对结果进行比较、分析和讨论。 分析解答 【Matlab 代码】 1 Matlab 脚本文件:FFT_HomeWork2.m %计算机作业:用 FFT 对模拟信号做谱分析—理解频率分辨率和频谱泄漏的概念。 %编写者:丹梅 clc;clear; %截取的信号时间长度,单位:s Tp=0.04; %Tp=0.04*4; %Tp=0.04*16; fs=400;%采样频率,单位:Hz Ts=1/fs;%采样间隔,单位:s N=fs*Tp;%采样点数 t=0:Ts:Tp;x=0.3*cos(200*pi*t)+0.5*sin(100*pi*t)+cos(50*pi*t); %产生加窗后的序列 h=hamming(N+1); x_win=x.*h'; N_DFT=2048;%DFT 点数 Xk=fft(x,N_DFT);%加矩形窗的序列的频谱 Xk_win=fft(x_win,N_DFT);%加 hamming 窗的序列的频谱 %画图语句略 【运行结果】 截取时间长度 p T =0.04s 时,如下图所示。可见,无法把三个频率分量分辨 开。加 hamming 窗后,产生频谱展宽现象。 0 50 100 150 200 250 300 350 400 0 2 4 6 8 10 Hz "Xk" 0 50 100 150 200 250 300 350 400 0 1 2 3 4 5 Hz "Xk" hamming 2 图 1 p T =0.04s 时的运行结果 截取时间长度 p T =4×0.04s 时,如下图所示。可见,可以把三个频率分量分 辨开。加 hamming 窗后,虽然产生频谱展宽现象,但旁瓣明显减小。 0 50 100 150 200 250 300 350 400 0 10 20 30 40 Hz "Xk" 0 50 100 150 200 250 300 350 400 0 5 10 15 20 Hz "Xk" hamming 图 2 p T =4×0.04s 时的运行结果 截取时间长度 p T =16×0.04s 时,如下图所示。可见,可以把三个频率分量分 辨开。加 hamming 窗后,从局部放大图可以看出,虽然产生频谱展宽现象,但 旁瓣明显减小。 3 0 50 100 150 200 250 300 350 400 0 50 100 150 Hz "Xk" 0 50 100 150 200 250 300 350 400 0 20 40 60 80 Hz "Xk" hamming 图 3 p T =16×0.04s 时的运行结果 20 30 40 50 60 0 50 100 Hz "Xk" 20 30 40 50 60 0 20 40 60 Hz "Xk" hamming 图 4 局部放大图 4

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值