找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1955|回复: 0
打印 上一主题 下一主题
收起左侧

51单片机入门之二:流水灯

[复制链接]
跳转到指定楼层
楼主
ID:117358 发表于 2016-4-30 05:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文旨在介绍单片机入门的基础知识,为初接触或即将接触单片的新手提供一个入门指导。本文章会陆续推出,隔几天一个章节。所使用单片机为ATMEL公司的AT89C52,软件为PROTEUSKEIL;只提供原理图和KEIL环境下的注释,希望对广大即将接触单片机的人有所帮助,如果有错误欢迎回帖指出与本人交流或加入QQ143586739.

51单片机的P0口内部没有上拉电阻,所以P0在用作输出时要外接上拉电阻,一般取10k。

用Proteus画得原理图如下所示:


分析,只要P0口输出低电平就可以将发光二极管点亮,因此只需要依次将P0的8个端口输出低电平即可实现流水灯功能。本文介绍两种程序的实现方法。

程序一:


第04行:定义了一个数组,该数组依次将P0.0-P0.7位清零,即可依次点亮发光二极管;

第19行:给P0口赋值;

第20行:延时时间即为点亮时间;

程序二:

程序二采用库函数来完成移位操作,所包含的头文件为 intrins.h。

第02行:包含intrins.h头文件;

第17行:利用库函数完成移位,即依次点亮


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表