添加收藏夹  设为首页  深圳服务热线:13692101218  13751165337
51电子网联系电话:13692101218
位置:首页 > IC型号导航 > 首字符S型号页 > 首字符S的型号第0页 > ST7FMC1K2B3 > ST7FMC1K2B3 PDF资料 > ST7FMC1K2B3 PDF资料1第304页
ST7MC1xx/ST7MC2xx
15.8
最大
门槛
OF
AVD
案例1 :
写PXOR或PxDDR与全球在 -
中断随时启用:
LD A, # 01
LD SEMA ,A
;设置信号为“1”
LD A, PFDR
AND A, # 02
LD X,A
;写前的水平存储
PXOR / PxDDR
LD A , # 90美元
PFDDR LD , A;写PFDDR
LD A , # $ FF
LD PFOR , A;写PFOR
LD A, PFDR
AND A, # 02
LD Y,A
;水平写入存储后
PXOR / PxDDR
LD A,X
;检查下降沿
CP A, # 02
jrne OUT
新西兰旅游局
jrne OUT
LD A, SEMA
;检查信号状态
被检测出的边缘
CP A, # 01
jrne OUT
打电话call_routine ;调用中断例程
OUT : LD A, # 00
LD SEMA ,A
.call_routine ;进入call_routine
PUSH X
PUSH CC
.ext1_rt
;进入中断服务程序
LD A, # 00
LD SEMA ,A
IRET
案例2 :
写PXOR或PxDDR与全球在 -
中断随时禁用:
SIM卡
;设置中断屏蔽
LD A, PFDR
AND A, # 02美元
LD X,A
;写前的水平存储
PXOR / PxDDR
LD A , # 90美元
在转。硅版本,最大AVD值
阈值是不是在生产测试。
15.9外部中断MISSED
为规避购买风险,如果产生的寄生中断,
边缘检测器是一个自动禁用
在访问任DDR和时钟周期
或。在此期间,任何输入信号边沿会
不被检测到,并且不会产生中断。
这种情况通常会发生在应用程序重新
freshes间隔的端口配置寄存器
在运行时。
解决方法
解决方法是基于软件的检查
前令状后的中断引脚的电平
荷兰国际集团的PXOR或PxDDR寄存器。如果有一个
电平变化(取决于灵敏度亲
编程是该引脚)的中断服务程序得到更好地
使用call指令与三个额外voked
执行中断之前PUSH指令
程序(这是为了与电话相兼容
IRET指令在中断服务结束时
例程) 。
但是检测水平变化不会使
确保优势在关键的1个周期出现笃
理性与中断已经错过。这可能
导致出现相同的中断两次(一次
硬件和另一个与软件电话) 。
为了避免这种情况,一个信号量之前,设置为' 1'的
检查电平的变化。信号量是
在中断程序中改变为水平'0'。
当检测到的电平变化,该信号量
状态进行检查,如果它是' 1',这意味着该
最后中断已经错过。在这种情况下,在 -
中断例程被调用,调用指令。
还有另一种可能的情况下,即,如果写入
PXOR或PxDDR与全局中断进行显示
体健(中断屏蔽位设置) 。在这种情况下,该
信号改变为“1”时的电平
变化被检测到。检测错过中断
完成启用全局中断后(间
中断屏蔽位复位),并通过检查状态
信号量。如果它是“1” ,这意味着最后的
中断被错过和中断例程IN-
voked与调用指令。
要实施变通办法,下面软
洁具序列要被随后写入到
PXOR / PxDDR注册。该示例是用于
端口PF1与下降沿中断的敏感性。该
软件序列给出了这两种情况下(全球
中断禁用/启用) 。
304/309

深圳市碧威特网络技术有限公司