单片机程序设计编程规范(12)

2020-11-29 00:28

11.

12.

13.ram2ramrom2rammath;RAM到RAM的数据传递;ROM到RAM的数据传递;基本运算程序

实例说明

1.初始化

1)当程序上电复位时,一个完整的用户寄存器初始化或清零动作是非常重要的,否则容易造成程序执行的不确定性。

例如:

pre_clrRAM:

b0movy,#0;清RAMbank0

b0movz,#48

@@:

clr@yz

decmsz

jmp@b

clr@yz

ret

2)系统寄存器必须进行初始化,比如说I/O口方向和输出电平等。

需要特别说明的是输出口的初始化必须按照下列顺序来处理:

(1)设定相应I/O口输出高低电平

(2)将相应I/O口为输出口

如此可确保MCU的I/O口从输入模式转为输出模式时不会有脉冲的存在。而在I/O口控制频繁变化(如通信)时更要引起注意。

例如:

(3)mova,#11111111b

;如果p1.0和p1.1原来为输入高电平,当直接切换为输出方式时会有高电平脉冲的输出,而这不是所希望的。

b0movp2m,a

mova,#11111100b

b0movp2,a

(4)mova,#00001100b

b0movp2,a

;这样处理p1.0和p1.1就避免了高电平脉冲的输出

mova,#11111111b;

b0movp2m,a

开机时后IOtoggle的作法

利用暂时没有用到的IO来做toggle可有效观察以下几点

1)系统是否正常开机

2)是否发生resetorwatchdogreset现象

3)程序是否重头运行

观察IOtogglepulsewidth可以了解InternalRC频率的准确性或是协助调整外部RC数值以上方法可以有效协助量产生产问题


单片机程序设计编程规范(12).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:电大小学语文教学与研究全网最全答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: