求 51单片机 4*4矩阵键盘 控制8*8点阵 显示 的语音 程序。

求 51单片机 4*4矩阵键盘 控制8*8点阵 显示 的语音 程序。,第1张

第一次认真回答,不采纳没有小鸡鸡。。。。。。。。。。

#include <reg52H>

#include<intrinsh>

#define uint unsigned int

#define uchar unsigned char

//心形显示

//unsigned char code tabP0[]={0x30,0x48,0x44,0x22,0x44,0x48,0x30,0x00};

//unsigned char code tabP2[]={0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE};

//圆形显示

unsigned char code tabP0[]={0x00,0x3c,0x42,0x42,0x42,0x42,0x3c,0x00};

unsigned char code tabP2[]={0x7F,0xBF,0x0DF,0x0EF,0x0F7,0x0FB,0x0FD,0x0FE};

//菱形显示

//unsigned char code tabP0[]={0x00,0x08,0x14,0x22,0x41,0x22,0x14,0x08};

//unsigned char code tabP2[]={0x7F,0xBF,0x0DF,0x0EF,0x0F7,0x0FB,0x0FD,0x0FE};

//叉形显示

//unsigned char code tabP0[]={0x00,0x41,0x22,0x14,0x08,0x14,0x22,0x41};

//unsigned char code tabP2[]={0x7F,0xBF,0x0DF,0x0EF,0x0F7,0x0FB,0x0FD,0x0FE};

//中字显示

//unsigned char code tabP0[]={0x00,0x1e,0x12,0x12,0x7f,0x12,0x12,0x1e};

//unsigned char code tabP2[]={0x7F,0xBF,0x0DF,0x0EF,0x0F7,0x0FB,0x0FD,0x0FE};

/

名称 : Delay_1ms()

功能 : 延时子程序,延时时间为 1ms x

输入 : x (延时一毫秒的个数)

输出 : 无

/

void Delay_1ms(uchar i)//1ms延时

{

uchar x,j;

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

for(x=0;x<=148;x++);

}

/

名称 : Main()

功能 : 主函数

输入 : 无

输出 : 无

/

void main()

{

int i;

while(1)

{

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

{

P0=0;

P2=tabP2[i];

P0=tabP0[i];

Delay_1ms(2);

}

}

}

LED点阵,与51单片机没有必然的关系。一般的单片机都能控制它。主要的问题在于,点阵的控制方式:是用专门的控制芯片,还是由单片机的IO口进行控制。

要处理的问题主要是LED的驱动电压及控制方式,比如共阳还是共阴,是静态,还是动态等。一般单片机应用的书都会讲到它。

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/biaobai/2979756.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-01-25
下一篇2024-01-25

发表评论

登录后才能评论

评论列表(0条)

    保存