tag 标签: 单片机设计开发

相关博文
  • 热度 43
    2010-9-6 09:32
    10501 次阅读|
    30 个评论
                     很多朋友问我,学习单片机到底要花多少钱,我的回答是肯定的:只要花很少的钱。                他们总是说:要买仿真器,编程器,还要买实验箱或开发板,还要买大量的书和电子元器件。可能还要上培训学校。这样算算,怎么也得花上好几千人民币。               我学单片机花了多少钱呢?首先看看我买的书,随便点了一下,好像有百多本。算算也有好几千人民币。                                             再看看我买的工具与元器件,烙铁焊丝万用表都不算,因为我多年前就买了,示波器呢?根本就买不起。但元器件总得买一些吧,从旧板子上拆的也不够用,光单片机就买了千多块钱。还是从网上邮购的最廉价的货。                               这之中还没有别人常提到的仿真器和编程器。但现在我算是学会了单片机。              我有了学习单片机的经验,终于发现走了很多的弯路,不想让我的朋友们走很多的弯路,浪费社会资源,现将最廉价的单片机学习方法公布如下:              1、总得要买一两本书(一本基础的,一本C51的),当然也可以去向别人借。              2、总得买点焊接工具,如烙铁,摄子等。              3、买点单片机等相关元器件。            算起来要多少钱呢?几十加几十吧,也就百来块钱吧。            可能有朋友会问,没有仿真器怎么办呢,好像最差的也要一两千呢,编程器呢?好像也要好几百呢?           对于这个,我的回答是,都不用了,都可以让他们下岗吧!那用什么代替呢?我说还是少给那些公司厂家送点血汗钱吧! 有了ISP功能,不就什么都解决了吗?             在此,我向大家推荐几款有ISP功能的常见的单片机吧,SST的,STC的,AT89S51吧,当然还有菲利浦的部分单片机。我这里只是随便列出了几种,而且它们的下载工具都可以自己做。              综上所述,学单片机从51的开始学,开始成本也就花个几十块钱吧!             如果大家有什么经验,请发表评论或留言。
  • 热度 19
    2010-9-6 09:18
    3416 次阅读|
    0 个评论
                      在进行8051单片机应用系统程序设计时,编程都往往少不了要直接操作系统的各个存储器地址空间。C51程序经过编译之后产生的目标代码具有浮动地址,其绝对地址必须经过BL51连接定位后才能确定。为了能够在C51程序中直接对任意指定的存储器地址进行操作,可以采用扩展关键字“at”、指针、预定义以及连接定位控制命令。 在这些方法中,本人认为最简单而有效的方法是用“ _at_ ”关键字来对指定变量存储器空间绝对地址来指定。一般格式如下:                                         数据类型 标识符            _at_            地址常数             其中:                      存储器类型                为idata、data、xdata等C51能够识别的所有类型,最好不要省略。                      数据类型                   可以用int、long、float等基本类型,当然也可以用数组、结构等复杂数据类型             ,                本人认为一般用unsigned int 就可以解决很多问题了。                     标识符                      就是要定义的变量名,编程者自己决定                    地址常数                    就是要直接操作的存储器的绝对地址,必须位于有效的存储器空间之内。 注意:不能对变量进行初始化,只能是全局变量,一般不要轻易用,免得出错。 举例:                      xdata            unsigned int             addr1            _at_ 0x8300; 另有一种方法就是要用到一个头文件absacc.h,也不是很难,举个例说明一下就会明白:                #include absacc.h                 XBYTE =0;              /*向外部存储器(XDATA)地址0x8300写0 本人强烈建议用at,这样可能会更好些,还有一点就是不能乱用,因为有些存储器空间不能随便占用,C51编译器已经做其它的用了,而且有些空间单片机本身就做了很重要的作用,如果乱用,很容易出错.