找回密码
 立即注册
搜索
0赞
赞赏
手机版
扫码打开手机版
把文字装进口袋

51单片机使用C语言点亮闪烁LED灯

默39 2022-8-26 14:30:46
        导语

        下面是点亮51单片机使用C语言闪烁LED灯的的一段代码,也是我们迈入C51的第一步。我们将从头开始,一步步讲解下面的程序。
        #include

        #define uchar unsigned char
        #define uintunsigned int

        sbit LED= P1^0;

        void main()
        {
          LED=0;
          while(1)
          {
         LED=0;
         delay(1000);
         LED=1;
         delay(1000);
          }
        }

        void delay(uchar ms)
        {
          uint x=0, y=0;
         for(x=xms;x>=0;x--)
         for(y=110;y>=0;y--);
        }
       
        .C to .Hex

        在从编写的上述文本程序到实际烧录到单片机的Hex二进制机器语言,keil这个大家伙帮我们做了很多的东西。
        单片机可以看作是一个功能完全的计算机,同计算机一样,单片机只能识别机器语言。也就是用二进制代码表达指令,但更确切一点来说,机器语言是由高低电位构成的,指定高电位为1,低电位为0,而我们对电路进行一定的设计后,电路中高低电位的输入输出正好与2进制状态相符,所以我们也就看到了 1、0的那种表现形式。
        同时,为了简化二进制的表现形式,我们使用16进制来表示,即Hex文件。
        但编写机器语言太过繁琐,人们开始用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。这就是汇编语言,但低级,不具有移植性,能直接访问计算机硬件,效率高,占用资源少,学习入门较为困难,切移植性差。
        C语言是一种高级编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示,有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。
        所编写的C语言通过Keil进行预处理,编译,链接等就生成了Hex文件,我们将Hex文件烧录到单片机中,复位就运行起来了。
        预处理

        预处理以#开头,在从.C到 .hex之前,扩展C语言程序设计的环境。
        #include 的作用将 reg52.h文件复制到编译的源文件中,使用或" "包含文件名。
        #define uchar unsigned char的作用是将unsigned char替换为uchar。
        也常用#define定义一些函数宏、常量等。如#define PI 3.14、#define ABS(x) (x)=0
        布尔运算,只有两个值,0或 1,大于0为真1,反之为0。
        审核编辑:汤梓红

使用道具 举报

您需要登录后才可以回帖 立即登录
楼主,是你让偶幼小的心灵再次深深的领悟了何谓造旨之高深、文笔之挥洒。。谢谢you!在看完这帖子以后
,我立即动手回复,因为我生怕迟到的回复不能使更多的人领悟你的圣明,以至使这等网上少有的好
贴就此轮沉,我担不起这样的罪名!更加重要的是,能在如此重要、精辟而又生动的贴子后,留上自己的网名
,这对我的生命,以及我的家庭,乃至我所处的社会中是多么荣耀的一件事啊,请您高贵而又宽容的心,能够
原谅我的这点小小私心,这麽经典的图片,看到时我就告诉自己,这样的好贴我们要顶,是的,我们不但要顶
,我们还要马上顶,顶一篇对不起楼主,我们就顶两篇,两篇不行我们就顶三篇,我们不但自己要顶,这样的
好贴我们要发动更多的人来顶,朋友,对,一定要把自己所有的朋友都发动起来,什麽网友呀,笔友呀,牌友
呀,酒友呀,.......只要是个人,我们一定要不择手段的发动起来,使这张好贴不至于因我们而沉沦,亲朋,我
们的亲朋是我们至亲的基础,如果这样的好贴我们看到了,而不推荐给他们,无形中我们就铸成了他们一生中
最大的遗憾,所以,我们应该明白顶这一篇好贴的重要性,同志们,让我们不知疲倦,孜孜以求,艰苦奋斗,
努力把这一篇好贴顶下去吧,俗话说的好,“走过路过不要错过,”俗话又说“过了这个村,就没这个店”,
所以,同志们,不要再犹豫了,让我们携起手来,为了把如此好贴最终顶上去而努力奋斗吧!说到这里有些朋
友可能会问我,“至于吗,一篇帖子”,那麽我告诉你,有时候一生的精彩可能就在于你积极参与与大家共同
创造了精彩,我们不能让精彩沉没,我们要让如此的精彩永恒下去,为了自己,为了亲人,为了精彩的延续,
为了我们伟大的社区事业的健康发展,为了我们全人类网络生活的再丰富,为了...........要知道,其实发现一个
精彩是一件多麽不容易的事情(我们楼主做到了,尊敬你!),楼主已经做到了前一部分,就是把这份精彩呈现
出来,我们只不过继续做完剩余那微不足道的一部分——留住这份精彩,一个人的力量是有限的,我们难道
见了如此精彩的帖子不可以挺身而出为这份精彩的延续尽自己小小的一份力吗,?????
我不说这是什麽百年一见的好贴,“群众的眼睛是雪亮的”“好贴不怕火炼”“是好贴总是会发光的”,我只
是在讲述一种我自己的感觉,我为这样如此精彩的帖子已经做了我应做的一部分,我无憾了,可是你呢,看到
如此精彩的东西你就不想留下点什麽吗?你良心可以安分吗?这会不会是你一生中最大的遗憾呢?你还在犹豫
吗?好吧,如果你确定你要做什麽了,请你不要再犹豫了,“如果顶帖是一种错,那麽我宁愿一错再错,”为
了如此的好贴可以继续的流传下去,为了更多的人可以继续欣赏这份精彩,同志们,“这样的好贴我们要顶
,有困难要顶,没有困难创造困难也要顶,”,让我们为可以在如此的好贴下面留上自己的名字而感到骄傲吧
,让我们为我们亲手创造的精彩而感到自豪吧,“顶不在多,有了就行”,让更多的人因为有你的努力而可以
继续欣赏这份精彩而“没事偷着乐吧”,同志们,这仅仅,这仅仅只需要我们回复一篇帖子就可以了,你还在
犹豫吗????
看了这张楼主的帖子,被楼主独特的视角折服的同时,难道我们就不可以为这篇好贴,为楼主发掘的一片艰辛
而鼓掌,并摇旗呐喊吗,同志们,“一个楼主发了帖,千万个回帖的我们要站起来” 呀,我们不能再犹豫了
,我们不能再迟疑了,如果你明白了你现在马上需要做的,那麽,.............(那麽不要在这里看我在这罗嗦了),
同志们,你们要坚信,是的,你们要明白,你们即将做的,是多麽伟大的一项事业,你们不仅仅是在简单的回
复一篇帖子,你们是在为了我们伟大的论坛发展添砖砌瓦,是为了我们的下一代可以有一个丰富的社区生活而
奋斗,是为了我们伟大祖国网络事业的蓬勃发展而努力,同志们,乡亲们,所有可爱漂亮的MM们,”我骄傲
,因为我回帖“,也许你认为这样的好贴,不知道该怎麽回,那麽我告诉你,你哪怕一个字”顶“如此微不足
道的付出,我们都会感谢你,历史就会记住你,精彩就会留住你,你的名字将伴随着这篇精彩的帖子直到永恒
...............”顶自己的帖,让别人说去吧“”我顶故我在“坚持顶帖一百年不动摇”,如此的好贴,如此清新的
风格,如此独特的视角,我们还能说什麽呢,我们还能做什麽呢,不要再犹豫了,让你的回复就这样贴上去吧
,如果上天给我再回一次的机会,我会对楼主说三个字“还不够”,如果非要在这份承诺上加一个数量,那麽
我希望是“一万篇”............................
这篇不是我写的,在下还没得那水平.这是几年前一个叫“我顶故我在”的大作,觉得移花接木偷梁换柱借花献佛
给楼主再合适不过了.还望楼主笑纳!
向楼主学习!向楼主致敬!楼主不是别人,楼主就是楼主!
2022-8-27 07:24:49
楼主你知道的太多了。
2022-8-28 00:07:15
前来支持~~~~~~~~~~~~~~~~~~~
2022-8-28 07:07:27
很不错的哦,支持,加油
2022-8-28 14:07:39
赞一个!
2022-8-28 21:07:50
支持!!!!前排!!!!
2022-8-29 04:08:02
感觉不错
2022-8-29 11:08:13
前来支持~~~~~~~~~~~~~~~~~~~
2022-8-29 11:27:56
不错!顶LZ
2022-8-29 11:47:39
123下一页
返回顶部