电工吧
◎ 电工吧 >> 设为首页 >> 加入收藏>> 联系方式 >> 投稿 >>留言 
网站首页 · 电工新闻 · 电工基础 · 电力技术 · 电子技术 · 电工图片 · 电工法规 · 电工图书 · 电工搜索 · 论坛交流
 
      最新电子论文
 · 开关电源设计知识介绍(中 
 · 印制电路板设计原则和抗干 
 · 电路设计常用软件介绍 
 · 各种滤波电路的比较 
 · 激光头维修的简便方法 
 · 回扫线现象全面剖析 
 · 线性NTC温度传感器使用指南 
 · 变压器的基本知识 
      推荐电子论文

 · 单片机初学者编程最简练的指导
 · 电力行业蓄电池容量测试方案
 · 定点dsp与浮点dsp的比较
 · 永不消逝的电波
 · 分时操作系统思想在单片机编程
 · PC机打印口与便携式数据采集系
 · 单线数字温度传感器的原理与应
 · 一个单片机串行数据采集,传输
 · PLD应用的方方面面
 · 一种纸币识别系统的设计

  ■ 所在位置:首页>>电子技术>>电子应用>>正文
 

单片机初学者编程最简练的指导


和汇编一样,在C中定义的那些变量和数组的初始化就在startup.a51中进行,如果你在定义全局变量时带有数值,如unsigned char
data xxx=100;,那startup.a51中就会有相关的赋值。如果没有=100,startup.a51就会把他清0。(startup.a51==变量的初始化)。
这些初始化完毕后,还会设置SP指针。对非变量区域,如堆栈区,将不会有赋值或清零动作。
有人喜欢改startup.a51,为了满足自己一些想当然的爱好,这是不必要的,有可能错误的。比如掉电保护的时候想保存一些变量,
但改startup.a51来实现是很笨的方法,实际只要利用非变量区域的特性,定义一个指针变量指向堆栈低部:0xff处就可实现。,
为什么还要去改?
可以这么说:任何时候都可以不需要改startup.a51,如果你明白它的特性。

本新闻共2页,当前在第2页  [1]  [2]  

 
         相关文章

·
·
·
·
·
·

 
 
  关于本站 | 友情站点 | 联系方式 | 版权声明 | 电工技术服务与支持中心
Copyright© 2005-2006 Dg8.Com.CN ,All Rights Reserved
电工网 电工吧 电子吧