#include<reg51.h> // 包含51单片机寄存器定义的头文件
#include<intrins.h>
#define uint unsigned int
sbit buzz=P0^6;
/**************************************************
函数功能:d延时函数,延时一段时间
***************************************************/
void delay(int x) //延时Xms
{
uint i,j;
for(i=0;i<x;i++)
for(j=0;j<120;j++); //大约1ms
}
/**************************************************
函数功能:主函数
***************************************************/
void main(void)
{
unsigned char temp;
unsigned char code
Tab[]={0x80,0xc0,0xc6,0x92,0xf9};
//数码管显示0~9的段码表,程序运行中当数组值不发生变化时
//前面加关键字code ,可以大大节约单片机的存储空间
P2=0xa0; //令蜂鸣器的锁存器打开
buzz=0;
temp=0x01; //设定中间变量temp
while(1) //无限循环
{ int i;
for(i=0;i<5;i++)
{
P2=0xc0; //位选,令com公共端的锁存器打开
P0=temp; //控制哪个数码管亮
P2=0xe0; //令数码管的锁存器打开
P0=Tab; //让P0口输出数字的段码
// temp=temp<<1; //左移一位
temp=_crol_(temp,1); //左移一位
delay(1); //调用延时函数
}
temp=0x01; //当移到最左端时,再设定temp,重新开始
}
}
有奖活动 | |
---|---|
【有奖活动】智能可穿戴设备AR/VR如何引领科技新潮流! | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! | |
“我想要一部加热台”活动,不花钱赢取开发好工具!活动开始了哦 | |
【有奖活动】伙伴们:您的“需求”解决了吗? |
打赏帖 | |
---|---|
如何实现基于NXPiMX.RT1021的BH1730采集被打赏50分 | |
【换取手持数字示波器】AHT10温度检测分享被打赏40分 | |
【换取手持数字示波器】ACM32F070开发板点亮LCD屏和触控按键,串口,ADC被打赏40分 | |
【换取手持数字示波器】ACM32F070LCD屏和触控按键功驱动蜂鸣器分享被打赏40分 | |
【换取手持数字示波器】国民技术PWM功能知识分享被打赏40分 | |
【换取手持数字示波器】放大器运放知识分享被打赏40分 | |
【分享评测,赢取加热台】+开关电源AC输入知识分享被打赏30分 | |
【换取手持数字示波器】N32G430点亮数码管与串口打印、ADC被打赏40分 | |
老胖子聊电路--分析一个反馈电路被打赏50分 | |
【换取手持数字示波器】+点亮WS2812RGB灯被打赏50分 |