亲,嗮出来的程序不够全哦,不过既然用MAX7219,那么对它的通信部分则都是一样的
MAX7219 除了电源两根线之外,还需要三根信号线连接至单片机
1、使能,即用来控制MAX7219是否允许写入数据的
2、时钟、每更换一位字节数据则需要输出一个脉冲,作为时钟信号
3、数据、在脉冲有效状态下传送数据,此数据是二进制位传递,非0即1
只要对MAX7219的数据传输摆弄明白,那么久可以随意控制MAX7219驱动的电子元件了,数码管也好,LED点阵也罢,都在掌握之内
MAX7219在进行通信的时候,是需要先送地址再送数据的,就是说要传递一个数据,就要进行两次通信
打个比方,例如想把鞋子收起来,然而鞋柜却很多,那么收起鞋子的步骤只能是 先确定要放在哪里,然后再将鞋子放进去,所以MAX7219的通信原理就是这么简单
话不多说,贴出个经过硬件测试通过的程序出来,供大家参考!
这是一个利用一片MAX7219的八位数码管显示模块,程序中只是为了试验,所以只显示固定数字12-34-56,程序中的星号是各个函数之间区分用的,可以删除
#include <REG52h> //通用89C52头文件
sbit DN=P3^7; sbit CS=P3^6; sbit CL=P3^5;//MAX7219 端口定义
void MaxINT(void); void Max(char Xi,char Yi); void MaxR(char ch);// Max7219
void XSa(void);
//
void main(void)//主函数
{
MaxINT(); // MAX7219初始化
while(1)
{
XSa(); //数据显示
}
}
//
void XSa(void)//显示时钟数据
{
Max(1,6); Max(2,5); Max(3,0);
Max(4,4); Max(5,3); Max(6,0);
Max(7,2); Max(8,1);
}
//
void MaxINT(void)// MAX7219初始化
{
Max(0x0b,0x07);// 设置扫描界限
Max(0x09,0xff);// 设置译码模式
Max(0,0);// 设置亮度
Max(0x0c,0x01);// 设置工作模式
}
//
void Max(char Xi,char Yi)// Max7219 数据写入 主函数
{CS=0;MaxR(Xi);MaxR(Yi);CS=1;}
//
void MaxR(char ch)// Max7219 数据写入 子函数
{
char m,temp;
for (m=0;m<8;m++)
{
temp=ch&0x80; ch=ch<<1;
if(temp){DN=1;CL=0;CL=1;}
else{DN=0;CL=0;CL=1;}
}
}
也跟 那个数码管一个原理的
把写好的字段码 放数组里面
先去吧 显示原理 搞明白 这个的话 看不懂 别来问!
然后 两个FOR循环 大循环0~7自增 内嵌一个 段码0~7自增 :这是88 单个的点阵了
你所说的 是要1616才有能力显示汉字的吧 是这样的 你如果也像上面这样的话一个字就用了整个 48个端口了 你 考虑用 两个4-16 译码器来节省一下端口 方法吗 你看懂上面一个下面这个方法看不懂的话 我就不说什么了 也不要找我! 看不懂上面 一个 的话 可以找我!
我就 不懂了 一楼 明明不会 又没有说 有多少分 楼主 一看 没多少人回答 给个辛苦的这种
二是 你说 他是灌水 又不像这辛辛苦苦 的 偏偏要坐要坐这个沙发!
以简单的8X8点阵为例,它共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;
如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮
主循环程序中,j 循环结束别加延时,那个delay(250);删掉。j 循环一次只是显示一屏,应再循环显示n屏,再 i 循环,调这个n大小,就是调滚动的速度。
你现在是,一屏只显示一次,又加延时250,这等于黑屏了250的延时,那还不闪一下才怪!
以上就是关于我是初学者,大家帮我看看我想用AT89C52通过MAX7219驱动8x8点阵的程序哪里错了怎么改全部的内容,包括:我是初学者,大家帮我看看我想用AT89C52通过MAX7219驱动8x8点阵的程序哪里错了怎么改、C51单片机如何用二维数组让88点阵显示汉字、led点阵屏如何滚动显示,以及滚动的原理,比如向左滚动显示,说说是怎么实现的,求指导啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)