微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > 硬件电路设计讨论 > 求程序(C语言)用单片机和max7219控制数码管显示

求程序(C语言)用单片机和max7219控制数码管显示

时间:10-02 整理:3721RD 点击:

用max7219使数码管显示年月日,并用按键选择并控制年月日的加减。最好是用三个按键,一个按键用于选择是年份的加减还是月份的加减或日期的加减,另外两个按键用于选择是加或者减。周五就要交了,求帮忙,急求!

用Proteus可以仿真的。而速度还快。这是一条捷径哦!

送你个驱动吧,我以前用的
#include "MAX7219.h"
void Max7221_Write(unsigned char Address,unsigned char Data)
{
        unsigned char i;
        Max7221_CS = 0;
        for (i=0;i<8;i++)
        {
                Max7221_CLK = 0;
                Max7221_DIN = (Address&(0x80>>i)) ? 1:0;
                _nop_();_nop_();
                Max7221_CLK = 1;
                _nop_();_nop_();
        }
        for (i=0;i<8;i++)
        {
                Max7221_CLK = 0;
                Max7221_DIN = (Data&(0x80>>i)) ? 1:0;
                _nop_();_nop_();
                Max7221_CLK = 1;
                _nop_();_nop_();
        }
        Max7221_CS = 1;       
}
void Max7221_Init(void)
{
        Max7221_Write(0x0A,0x07);        //亮度地址0AH,0x00~0x0F,0x0F最亮
        Max7221_Write(0x0B,0x07);        //扫描LED个数地址0BH,0x00~0x07,最多扫描8个数码管
        Max7221_Write(0x0C,0x01);        //工作模式地址0x0C. 0x00:ShutDown;0x01:Normal
        Max7221_Write(0x09,0xff);        //编码模式地址0x09. 0x00~0xFF:哪一位为1,哪一位就支持编码
}
void Max7221_Display(unsigned char *buffer)
{
        unsigned char i;
        for(i=0;i<8;i++)
        {
                Max7221_Write(i+1,*(buffer+i));
        }
}

#ifndef _MAX7219_H_
#define _MAX7219_H_
sbit Max7221_DIN = P3^0;
sbit Max7221_CS  = P3^1;
sbit Max7221_CLK = P3^2;
#define SHUT_DOWN             0x0C // 关断
#define DISPLAY_TEST          0x0F // 测试
#define DECODE_MODE           0x09 // 译码器
#define SCAN_LIMIT            0x0B // 扫描界限
#define INTENSITY             0x0A // 亮度
void Max7221_Write(unsigned char Address,unsigned char Data);
void Max7221_Init(void);
void Max7221_Display(unsigned char *buffer);
#endif

别提雷锋好吗!我比他硬实!我觉得,我能活过100岁!
arduino,是avr不。我是最近在ICKEY论坛才知道这东西的。我需要现看手!
把你问题拿出来呗,一起研究研究。听说这东西挺火的,我也想见识见识!

谢谢哈,好人啊!

不是开发板,是用proteus和keil进行仿真的

把你积分奖励给我好不!呵呵

这个怎么奖励?

哎呦,我怕是咋滴。就是没有开发板,你先说问题吧。我看看。Proteus里面的avr芯片种类你也是看过了。

没用过!真没用过,第一次听说!

促.....膝.....
长.....
谈.....
0-0

51和430都可以。加sd可以仿真。但是你的电子纸是什么东西?

和液晶显示是一个类型吗?

哦,今天和明天可能白天不在家!
你加我啦?看到qq上线,就可以直接找我!挺好的一个东西。

哦,那这东西还用绑定吗?

液晶是不有驱动型号。那驱动是驱动啥,不是直接驱动液晶吧,是驱动芯片,芯片在控制液晶。比如t6963就是绑定的t6963芯片。

仿真吗!LPC21系类可以的!参加他的PLL说明。
实物吗!stm32一般一般!个别的功能还不会用,需要现研究!

说真的你这个东西应该是不错的!当然,在具体一些手感上能有提高。应该相当有潜力!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top