怎么用c语言编写单片机流水灯程序,单片机编程入门:单片机流水灯程序[通俗易懂]

怎么用c语言编写单片机流水灯程序,单片机编程入门:单片机流水灯程序[通俗易懂]今天就来教教大家怎么玩玩51单片机,当然了,首先有一个必要的条件就是你必须要会c语言,目前大学里面有开的关于微机原理的课的,上课的时候,老师还说:“你们要多学学汇编语言,对你们以后学习单片机有用”,而事实上后来才发现c语言才是最重要的。要想玩单片机,就必须要知道最重要的是什么,对于一块51单片机的开发板来说,最重要的就是要认认真真的看它的原理图,原理图才是最重要的。今天先说说最基本的,就是怎么玩流…

大家好,又见面了,我是你们的朋友全栈君。

今天就来教教大家怎么玩玩51单片机,当然了,首先有一个必要的条件就是你必须要会c语言,目前大学里面有开的关于微机原理的课的,上课的时候,老师还说:“你们要多学学汇编语言,对你们以后学习单片机有用”,而事实上后来才发现c语言才是最重要的。

要想玩单片机,就必须要知道最重要的是什么,对于一块51单片机的开发板来说,最重要的就是要认认真真的看它的原理图,原理图才是最重要的。

今天先说说最基本的,就是怎么玩流水灯,老样子,先看看原理图:

172031ged5dlizexi8hftz.jpg

可以看到,总共是八个LED灯,都是由单片机的P1口控制的,并且可以知道当端口为低电平时,灯就会亮,大家一定要注意这一点,目前市场上51的开发板还是有非常多的,你必须要知道你的板子上LED灯是高电平使能还是低电平使能。像我这块就是低电平使能,写程序的话,我们可以用十六进制的代码写,

任意一个十六进制的数都可以拆分成八位的二进制数,而计算机只识别二进制,这样我们可以直接控制LED灯。比如我现在写一个代码P1 = 0xfe,那么把它变为二进制后就是1111 1110 这样的话,正好对应八个LED灯,最后一位是零,那么也就是最后一个LED灯亮了,其余的则是全灭状态。

现在我们可以玩玩流水灯,看一下这个程序:

172031nhmrtwyhuw8u8hhy.jpg

看主函数main里面的代码,P1 = 0xff 说明最开始是全灭状态,定义一个for循环,以八位为一个循环,当然也可以看到,最重要的便是P1 = P1》1这个代码,相当于说是把1111 1111 这个代码整体向右移位,比如说移位一次,那么就会变成0111 1111,那么就会有一个灯亮,移位两次,就会变成0011 1111,

就会有两个灯亮,以此类推下去,等就会逐渐亮起来。也就是流水灯咯。

大家可以自己随意修改,看看各种亮灯方式。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132839.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 男生说fb是什么梗_男生聊污是什么意思 男生会对谁聊污

    男生说fb是什么梗_男生聊污是什么意思 男生会对谁聊污男生聊污是在暗示么,肯定啊,经常聊肯定是想要发生些什么,如果能够得到回应肯定就进一步发展了。还有一种情况是为了口嗨,不管是真正的性、还是聊天是聊污,都是为了嗨,最终的目的还是为了上床。一般来讲,女生是不喜欢这样的话题,甚至讲得过份的话会觉得受到侮辱。男生一般不会随便的在女生面前讲起这些话题,讲起来肯定是有目的。费玉清其实也是一种试探,如果两个人能够聊下去,哪怕不发展到床上这种地步,但是也会聊的非常…

    2022年7月25日
    17
  • 苹果手机绕ID解锁_怎么绕过id

    苹果手机绕ID解锁_怎么绕过id小伙伴们注意:公众号的推送机制不再按照时间前后推送了,微信公众号信息流乱序。君哥建议大家把科技毒瘤君公众号置顶(设为星标⭐),以便第一时间看到推送,非常感谢~,方法如下图:记得我写过几篇…

    2022年9月22日
    4
  • Keil系列教程(汇总)「建议收藏」

    Keil系列教程(汇总)「建议收藏」推荐分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuang我的网站:https://www.strongerhuang.com我的知乎:https://www.zhihu.com/people/strongerHuang.com推荐在我公众…

    2022年5月24日
    38
  • 广东电信在线人工服务器,202.96.128.86广东电信DNS故障及解决方法

    广东电信在线人工服务器,202.96.128.86广东电信DNS故障及解决方法广东用户如果遇到能上QQ,但网页打不开,提示“找不到服务器”的现象,而且如果别人能访问,而你不能访问,多数情况下就是你的DNS解析故障造成的。解决这个问题比较有效的方法是换一个DNS服务器。下面是几个常用的广东电信DNS,广东的朋友如果遇到一些网页打不开时,可以更换下DNS看看。61.144.56.100广东省广州市电信61.144.56.101广东省广州市电信202.96.128.68广东…

    2022年7月11日
    40
  • CAN协议学习(一)

    CAN协议学习(一)一、CAN协议的特点1)在总线空闲时,所有单元都可以发送消息,两个以上单元同时发送消息时,对各消息的Identifier进行逐位仲裁比较,仲裁获胜的单元(具有较高优先级)可继续发送消息,仲裁失败的单元停止发送。2)消息中没有地址,消息广播到总线上,任何总线上的单元都可以接收消息。在总线上增加单元,不会影响到其它的单元。3)最高数据传输速率1Mbps(距离小于40m),最远传输距离10k…

    2022年6月28日
    31
  • navicat生成激活码错误(注册激活)[通俗易懂]

    (navicat生成激活码错误)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月28日
    586

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号