89c51单片机的简单运用1--数码管、流水灯
来源:互联网 发布:mysql truncate 恢复 编辑:程序博客网 时间:2024/04/28 17:58
一.简单的点灯程序需要记住的
1.单片机控制开发板的二极管亮灭:
由单片机的P1口控制,注意开发板的原理图,分清楚到底是给低电平亮还是高电平亮,一般都给低电平亮。
控制灯分为总线法和位选法,总线法是用十六进制数控制P1口的高低电平,1为高,0为低,位选是选出P1口的任意一位操作。
流水灯是通过延时函数或定时器延时,依次控制不同的灯亮来完成流水灯
2.数码管的静态显示和动态扫描:
Lab-MCS51开发板通过单片机的P^0~P^3口分别控制四个数码管的亮灭,每个数码管显示的内容由P0口控制,
控制线路图如上,通过P0使a,b,c,d,e,f,g,dp亮,显示不同的数字或符号。
动态扫描是减少数码管间亮的间隙,使人的视觉感觉不出,造成数码管同时亮的假象。
#include<reg52.h> //52单片机头文件void main() //主函数{unsigned int i; //定义一个int型变量while(1){i=50000; //变量赋初值为50000P1=0xfe;//点亮第一个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xfd;//点亮第二个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xfb;//点亮第三个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xf7;//点亮第四个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xef;//点亮第五个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xdf;//点亮第六个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0xbf;//点亮第七个灯while(i--); //延时i=50000; //变量赋初值为50000P1=0x7f;//点亮第八个灯while(i--); //延时} }
流水灯;
#include <reg52.h>#include<intrins.h>void main (){ int i, j ,k ; // for(i=0;i<8;i++) P1=0xfe;for(j=0;j<50000000;j++)P1=_crol_(P1,1); //for(k=0;k<50000000;k++) ; }
数码管显示
#include <reg52.h> #define uchar unsigned char #define uint unsigned int //sbit wela=P2^7;// sbit dula=P2^6; uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x02,0xf8,0x00,0x10}; uchar num; void delay(uint z) { uint x,y;for(x=100;x>0;x--) for(y=z;y>0;y--); } void main() {//wela=1;P2=0xf0;//wela=0;while(1){for(num=0;num<10;num++){//dula=1;P0=table[num];//dula=0;delay(500);}} }
- 89c51单片机的简单运用1--数码管、流水灯
- C51单片机中简单的流水灯程序
- 89c51单片机的简单运用3--串口、液晶显示屏
- C51单片机数码管的显示代码
- 80C51 单片机 流水灯代码
- 单片机C51 8位流水灯
- C51简单花样流水灯
- c51 单片机实验_2 数码管
- 单片机控制流水灯 数码管显示时间 蜂鸣器报警
- 80C51单片机模仿实例100—2 从左到右的流水灯
- 一个简单的STC89C52单片机流水灯的程序设计
- 80C51 单片机 数码管显示循环数字
- C51单片机实现六位数码管时钟
- 初学51单片机——简单的流水灯程序
- 数码管流水灯
- 流水灯&数码管&定时器中断
- MSP430F149流水灯闪烁以及数码管的显示
- 测试C51stc板的流水灯、数码管、按键
- 使用 libvirt创建和管理KVM虚拟机
- XLIBGL
- suse断电开机后进入repair system解决方法
- 黑马程序员 枚举日记
- foreach的缺点与优点
- 89c51单片机的简单运用1--数码管、流水灯
- 模版文件 def.h
- ubuntu 12.04 安装Intel VTune Amplifier XE 2011
- C语言调用SHELL脚本
- ubuntu 交流会!
- Servlet中文乱码问题研究
- Ubuntu 8.10 安装 Adobe Reader 8
- SSH代理设置(Windows和Linux多种方式)
- bash: ulimit: open files: cannot modify limit: 不允许的操作