位置:51电子网 » 技术资料 » 单 片 机

单片机编程经验(四)

发布时间:2008/5/27 0:00:00 访问次数:426

  经验之四、话说指令冗余技术

  前面有个朋友问到指令冗余,按匠人的理解,指令冗余,就是动作冗余。举个例子,你要在某个输出口上输出一个高电平去驱动一个外部器件,你如果只送一次“1”,那么,当干扰来临时,这个“1”就有可能变成“0”了。正确的处理方式是,你定期刷新这个“1”。那么,即使偶然受了干扰,它也能恢复回来。除了i/o口动作的冗余,匠人强烈建议大家在下面各方面也采用这种方法:

  1、lcd的显示。有时,也许你会用一些lcd的专用驱动芯片(如ht1621),这种芯片有个好处,即你只要将显示数据传送给它,它就会不断的自动扫描lcd。但是,你千万不要以为这样就没你啥事了。正确的处理方式是,要记得定期刷新送显数据(即使显示内容没有改变)。对于cpu中自带lcd driver 的,也要定期刷新lcd ram。

  2、中断使能标志的设置。不要以为你在程序初始化段将中断设置好就ok了。应该在主程序中适当的地方定期刷新一下,以免你的中断被挂起来。

  3、其它一些标志字和参数寄存器(包括你自己定义的),也要记得常常刷新。

  4、其它一些你认为有必要反复刷新的地方。



  经验之四、话说指令冗余技术

  前面有个朋友问到指令冗余,按匠人的理解,指令冗余,就是动作冗余。举个例子,你要在某个输出口上输出一个高电平去驱动一个外部器件,你如果只送一次“1”,那么,当干扰来临时,这个“1”就有可能变成“0”了。正确的处理方式是,你定期刷新这个“1”。那么,即使偶然受了干扰,它也能恢复回来。除了i/o口动作的冗余,匠人强烈建议大家在下面各方面也采用这种方法:

  1、lcd的显示。有时,也许你会用一些lcd的专用驱动芯片(如ht1621),这种芯片有个好处,即你只要将显示数据传送给它,它就会不断的自动扫描lcd。但是,你千万不要以为这样就没你啥事了。正确的处理方式是,要记得定期刷新送显数据(即使显示内容没有改变)。对于cpu中自带lcd driver 的,也要定期刷新lcd ram。

  2、中断使能标志的设置。不要以为你在程序初始化段将中断设置好就ok了。应该在主程序中适当的地方定期刷新一下,以免你的中断被挂起来。

  3、其它一些标志字和参数寄存器(包括你自己定义的),也要记得常常刷新。

  4、其它一些你认为有必要反复刷新的地方。



相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!