0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎么编写一个最简单的单片机程序?

2oON_changxuemc 来源:未知 作者:李倩 2018-08-13 17:56 次阅读

汇编语言中,让某个端口输出高电平或低电平都有专用的语句,以P1.0端口为例:

让该端口输出高电平的语句是:

SETB P1.0

让该端口输出低电平的语句是:

CLR P1.0

好了,现在我们将小灯接在单片机的P1.0端口上,如下图所示:

由上图可知,当端口P1.0输出高电平时,小灯D不亮,因为小灯中不会有电流通过;当端口P1.0输出低电平时,小灯就亮,因为此时小灯中有电流通过。

要让小灯亮一会儿、灭一会儿,还必须要有一个延时的程序,下面就是让小灯亮一会儿、灭一会儿,交替闪烁的程序:

MAIN:;程序开始

SETB P1.0;让P1.0输出高电平

LCALL DELAY;这一行是调用延时子程序

;目的是让P1.0保持高电平

;多停留一段时间

CLR P1.0;让P1.0输出低电平

LCALL DELAY;这一行也是调用延时子程序

;和刚才一样,让P1.0保持低

;电平停留一段时间,其实就

;是让它多亮一会儿再熄灭

LJMP MAIN;跳转到MAIN处执行(循环)

;以下是延时子程序,有关该延时程序的内容以后再学

DELAY: MOV R7,#250

D1: MOV R6,#250

D2: DJNZ R6,D2

DJNZ R7,D1

RET

END

在以上汇编程序中,延时子程序每一行的具体含义先不管他,以后慢慢学到,上面的程序需要在一个名为“KeiluVision2”的软件中汇编完成,汇编后得到一个*.hex文件,这就是目标文件,然后用编程器将该文件“写”到单片机89s51中,这样该89s51就具有自动控制小灯闪烁的功能了。

在实验的时候,通常用发光二极管LED代替小灯,由于LED工作电压小,由此LED要串接一个小电阻,用220欧姆——1k之间的都行,我用的是510欧姆的。

这样还不够,单片机工作还需要两个条件,一是需要加上一定的工作电压,AT89S51工作电压为5V,第20脚接负极,第40脚接正极;另外还要给单片机安装一个心脏起搏器,就是振荡器,通常叫做时钟,只要在18脚和19脚之间接一个石英晶体就行了,我用的是12MHz的,另外为了保证振荡器稳定工作,还要在18脚、19脚分别接一个27PF的小电容到地(就是接到负极),此外,89s51的第9脚为复位端,要接一个10uF电容到正极,再接一个10K电阻到负极,最后,第31脚也要和电源的正极接起来,关于31脚,以后再说,这样一台由单片机控制的会自动闪烁的小灯就做好了。下面是完整的电路图:

没有使用的管脚空着就行了,什么也不用接。一通上电,小灯就开始不停的闪烁了。大约1秒钟闪烁3——4次。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    242

    文章

    23256

    浏览量

    660609
  • 单片机
    +关注

    关注

    6035

    文章

    44553

    浏览量

    634734
  • 汇编语言
    +关注

    关注

    14

    文章

    409

    浏览量

    35794

原文标题:告诉你怎么编写一个最简单的单片机程序

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何编写STC单片机的ISP协议

    如何编写STC单片机的ISP协议 STC单片机包含两Flash块,在块Flash中运行的程序
    发表于 10-12 12:18 3980次阅读
    如何<b class='flag-5'>编写</b>STC<b class='flag-5'>单片机</b>的ISP协议

    单片机蜂鸣器简单发声程序【C语言版】

    单片机蜂鸣器简单发声程序【C语言版】单片机蜂鸣器简单发声程序【C语言版】
    发表于 12-29 13:53 0次下载

    51单片机汇编语言教程_第一个单片机程序

    51单片机汇编语言教程:4课第一个单片机程序
    发表于 01-19 15:27 0次下载

    ARDUINO IDE编写和AVR单片机程序的下载

    本文给大家介绍利用PROGISP实现ARDUINO IDE编写程序的下载和利用ARDUINO IDE实现AVR单片机的下载。
    发表于 11-24 08:45 9956次阅读

    告诉你怎么编写简单单片机程序

    这样还不够,单片机工作还需要两条件,是需要加上定的工作电压,AT89S51工作电压为5V,第20脚接负极,第40脚接正极;另外还要给单片机
    的头像 发表于 08-10 16:22 4.3w次阅读
    告诉你怎么<b class='flag-5'>编写</b><b class='flag-5'>一</b><b class='flag-5'>个</b>最<b class='flag-5'>简单</b>的<b class='flag-5'>单片机</b><b class='flag-5'>程序</b>

    使用单片机一个简单的流水灯的程序和烧写资料免费下载

    本文档的主要内容详细介绍的是使用单片机一个简单的流水灯的程序和烧写资料免费下载。
    发表于 08-20 17:31 3次下载
    使用<b class='flag-5'>单片机</b>做<b class='flag-5'>一个</b><b class='flag-5'>简单</b>的流水灯的<b class='flag-5'>程序</b>和烧写资料免费下载

    简单的51单片机串口接收和发送的程序免费下载

    本文档的主要内容详细介绍的是简单的51单片机串口接收和发送的程序免费下载。
    发表于 06-19 17:44 5次下载
    <b class='flag-5'>一</b><b class='flag-5'>个</b><b class='flag-5'>简单</b>的51<b class='flag-5'>单片机</b>串口接收和发送的<b class='flag-5'>程序</b>免费下载

    使用单片机编写的音乐程序

    本文档的主要内容详细介绍的是使用单片机编写的音乐程序
    的头像 发表于 01-21 12:18 5951次阅读
    使用<b class='flag-5'>单片机</b><b class='flag-5'>编写</b>的音乐<b class='flag-5'>程序</b>

    单片机程序如何编写

    设计编写单片机程序渐进的过程不可蹴而就,毕竟单片机
    的头像 发表于 02-12 14:38 3.8w次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>程序</b>如何<b class='flag-5'>编写</b>

    单片机与PC通信的程序

    本文档的主要内容详细介绍的是单片机与PC通信的程序
    的头像 发表于 09-06 11:26 5716次阅读

    单片机最小JSON解析,含编写非常简单的JSON资料下载

    电子发烧友网为你提供单片机最小JSON解析,含编写非常简单的JSON资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中
    发表于 04-27 08:44 13次下载
    <b class='flag-5'>单片机</b>最小JSON解析,含<b class='flag-5'>编写</b>了<b class='flag-5'>一</b><b class='flag-5'>个</b>非常<b class='flag-5'>简单</b>的JSON资料下载

    单片机简单介绍

    显示器)等装配在块印刷的电路板上,在配上监控程序(固话在ROM中),就是简单单片机。目前
    发表于 11-11 10:21 9次下载
    <b class='flag-5'>单片机</b>的<b class='flag-5'>简单</b>介绍

    推荐简单好用的单片机

    推荐简单好用的单片机 -----------------------------STC15F10
    发表于 11-17 11:21 6次下载
    推荐<b class='flag-5'>一</b><b class='flag-5'>个</b><b class='flag-5'>简单</b>好用的<b class='flag-5'>单片机</b>

    基于51单片机的呼吸灯程序编写

    利用51单片机编写的呼吸灯小程序,实验程序内容截图分享~
    发表于 11-23 16:36 33次下载
    基于51<b class='flag-5'>单片机</b>的呼吸灯<b class='flag-5'>程序</b><b class='flag-5'>编写</b>

    如何为PIC单片机编写中断服务程序

    问:我应该如何为PIC单片机编写中断服务程序? 答:仅仅是用
    的头像 发表于 01-22 15:16 1631次阅读