数码管应用digital_pile

发布者:CelestialGarden最新更新时间:2024-08-15 来源: cnblogs关键字:数码管 手机看文章 扫描二维码
随时随地手机看文章

#include 'reg52.h'

#include 'digital_pile.h'


void main(){

    //P0 = 0x00;

    //P2 = 0xff;

    static_pile(6);//静态显示函数,主函数调用子函数

    //digital_pile();// 动态显示函数

}                                                                                  


/*

数码管的显示输出

电路:一代版黄盒子,开发板中内置P0口接共阴数码管的段选端

,P1口的0123分别接数码管的位选端


*/


#include

#include 'sys.h'

#include 'digital_pile.h'


       int duan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//定义数字数组0~9

//分别显示的数字是 0  1    2    3     4   5    6    7    8     9

                        int wei[]={0x01,0x02,0x04,0x08};

//分别选择亮的数码管   1    2    3    4    共阴则取反


                        

//静态数码管显示   

void static_pile(unsigned char number)//含参数定义

{

    if(number <= 9)

     P0 = ~duan[number];//~是取反的意思,此代码合适共阴数码管,如用共阳数码管则要取反

     P3 = duan[number];//P3端口要接共阴数码管

}




//动态数码管显示

void digital_pile()

{

    int i;

    while(1)                 //循环嵌套

{

        for(i=0;i<4;i++)

      {

            P1 = wei[i];        //选择某个数码管

            P2 = duan[i];        //选择的数码管显示

            delays(50);

        }

    }

}


//-----------------------------------------------------------------------------------


#ifndef _DIGITAL_H_

#define _DIGITAL_H_

void static_pile(unsigned char number);//静态显示函数

void digital_pile();                   //动态显示函数


#endif


关键字:数码管 引用地址:数码管应用digital_pile

上一篇:数码管按键加减一
下一篇:蜂鸣器类代码

推荐阅读最新更新时间:2024-11-10 10:35

PIC单片机开发板独立键盘扫描+蜂鸣器响+数码管 C程序代码
/* 为自已写的独立键盘扫描+蜂鸣器响+数码管 犯的错:unsigned密写成了unsigner一直提示找不到a,b PORTD0=1;不行,要写成PORTD=0x01;才可以,经实验证得没有PORTD0没这个东西,应为RD0=1; PORTD=0x03;不是第三个灯亮,而是0000 0011是两个灯亮 PORTD=0x8则是0000 1000是第4个灯亮。。。。。出错因原进制转化,刚开始写程序进制转化混掉了。 */ #include pic.h #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31); const unsigned
[单片机]
PIC单片机开发板独立键盘扫描+蜂鸣器响+<font color='red'>数码管</font> C程序代码
单片机SPI模块+74LS164驱动数码管
效果如下:循环右移再左移 #include htc.h #ifndef _XTAL_FREQ #define _XTAL_FREQ 4000000 #endif const unsigned char seg_comAnode ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f};//共阳 const unsigned char seg_comCathode ={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd, 0x87,0xff,0xef}; //共阴 /*同时发送和接收一个字节,74L
[单片机]
单片机SPI模块+74LS164驱动<font color='red'>数码管</font>
STM32单片机学习(10) 数码管输出实验补 静态(共阳)+动态(共阴)
注:使用普中科技开发板测试时,需要拔掉Boot1插口 参考手册、电路图等参见 STM32单片机学习(1) 总记 学习资料+参考手册+LED灯 静态数码管实验 /* * * 软件功能: 静态数码管实验(软件延时方式) * */ #include stm32f10x.h #include delay.h void RCC_Configuration(void); void GPIO_Configuration(void); u8 Count=0; // 此表为 LED 的字模 0-f, . unsigned char LED7Code = {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~
[单片机]
Linglong之AVR程例4 数码管一位显示
因为这个程序比较简单,我就不做过多说明了。硬件电路也将在源程序中做简单说明。 看源程序: #include avr/io.h //IO口头文件调用 #include util/delay.h #define uchar unsigned char //申明 #define uint unsigned int uchar reg ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; //8位数码管字型编码表 int main(void) { DDRB = 0xff; //这两
[单片机]
使用51单片机并行口驱动LED数码管显示电路及程序
介绍利用51单片机的一个并行口实现多个LED数码管显示的方法,给出了利用此方法设计的多路LED显示系统的硬件电路结构原理图和软件程序流程,同时给出了采用51汇编语言编写程序。 1 硬件电路多位LED显示时,常将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由另一个8位I/O口控制;也可采用并行扩展口构成显示电路,通常,需要扩展器件管脚的较多,价格较高。本文将介绍一种利用单片机的一个并行I/O口实现多个LED显示的简单方法,图1所示是该电路的硬件原理图。其中,74LS138是3线-8线译码器,74LS164是8位并行输出门控串行输入移位寄存器,LED采用L05F型共阴极数码管。 显示时,其显示数据
[单片机]
使用51单片机并行口驱动LED<font color='red'>数码管</font>显示电路及程序
51单片机矩形按键控制16个LED灯亮灭和数码管显示
电路原理图 程序 #include reg51.h #define uint unsigned int #define uchar unsigned char //函数声明 void delay(uint time); //延时函数 void display(uchar k); //数码管显示0-F以及LED灯的亮灭 uchar getKey(); //读取键盘的数值 //主程序 void main(){ uchar keyValue; while(1){ keyValue = getKey(); //读取键盘值 display(keyValue); //数码管显示&LED亮灭 } }
[单片机]
四位数码管的加减计数器
/*四位数码管的加减计数器程序,陈永飞同志写,采用AT89C2051单片机,4位共阳数码管显示*/ #include reg51.h #define leddata P1 //数码管的段码输出 #define uchar unsigned char #define uint unsigned int uint shu; sbit jia=P3^0; //加一按键 sbit jian=P3^1; //减一按键 sbit qw=P3^2; //数码管的千位 sbit bw=P3^3; //数码管的百位 sbit sw=P3^4; //数码管的十位 sbit gw=P3^5; //数码管的个位 uchar code tab ={ 0x
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved