导航:首页 > 操作系统 > 单片机求立方

单片机求立方

发布时间:2023-04-06 08:20:43

⑴ 你好,作为一个单片机初学者,对光立方真心看不懂,可不可以详细点介绍一下光立方怎么工作的,求程序参考

光立方简单讲就是用单片机控制很多规则排列的LED的亮和灭。

1、先了解单个LED的控制方式,可以是将正极接电源,负极通过一个限流电阻连接至单片机的某个IO口。IO口输出低电平时,LED就亮,反之,LED灭。

2、若按照单个LED的控制方式,每个LED需要占用单片机的一个IO口,控制100个LED就需要100个IO口。那么,有没有一种方式,可以用较少的IO口,控制较多的LED呢?答案是肯定的,这种方法,就是扫描驱动电路。

3、扫描驱动电路基本原理是利用人眼的视觉停留效应。以2×2扫描驱动电路为例对其工作原理进行简述,有4LED,分为2行2列,电路如下(图中省略了限流电阻):

当:

C1=x,C2=x,L1=1,L2=1时,全灭

C1=1,C2=0,L1=0,L2=1时,D11亮

C1=1,C2=0,L1=1,L2=0时,D12亮

C1=0,C2=1,L1=1,L2=1时,全灭

C1=0,C2=1,L1=0,L2=1时,D21亮

C1=0,C2=1,L1=1,L2=0时,D22亮

可见,通过控制C1、C2、L1、L2,可以使D11、D12、D21、D22的任意一个LED的亮灭,也可以使四个LED全灭。

用上述方式轮流点亮D11和D12,一次只亮一个,但是,若将轮换速度加快,每秒之内轮换50次以上,由于人眼的视觉停留效应,视觉效果上就是两个LED同时亮。

这样,通过控制C1、C2、L1、L2,可以控制全部LED的亮灭。

上述电路用4个IO口控制4个LED,与直接控制相比,并未节约IO口,但是,若将行和列的数量加大,变为16×16时,共256个LED,控制仅需32个IO口,也就是说,行列数越多,相比越节省IO口。

仔细分析上述控制过程,可以发现,还可以进一步节约IO口的数量。

以16×16的整列为例,若限定16列中,每次只亮一列,就可以用4根IO线加一个4~16译码器替代。这样,就变为16+4只有20个IO口了。而行还是保留16根,因为这样做,可以一次控制1列中的多个LED同时亮。加快扫描进度。

以上就是光立方的基本原理。熟悉其控制过程后,编写程序并不难。

⑵ 单片机:利用(PC)查表程序求0_9bcd码的立方值,和求平方值有什么区别

立方表的数值超过255,需2个字节存储

⑶ 用STC89C51单片机做光立方和用STC12C5A60S2有什么不同,程序能通用么

5a指令读取速迟缺度特别快,所以51的程序不工作一般在延时程序上的宏旦罩改动,所以可蔽闹以通用,但注意一些延时,一些器件有反应时间,跟不上就丢失数据

⑷ 单片机编写查表程序求十进制数0-99的立方

//查表法

u32 code tab[]={0,1*1*1,2*2*2,3*3*3,4*4*4,....99*99*99};//表格自建
u32 js(u8 a)
{
if(a<=99)

{
return tab[a];

}

else
{
return 0xffff;

}
}

//非查表法
u32 js(u8 a)
{
return (a*a*a);

}
//非查表法,算乘方(算a的b次方)
float js(u8 a,u8 b)
{
float value;
value=1;
while(b>0)
{
value*=a;

b--;
}

return value;

}

⑸ 8051单片机 应用MOVC A,@A+DPTR指令求累加器A的立方值

单片机16位数据都是分两部分放的..
一个存低8,一个存高8
写的时候分两次写,读的时候也分两次读..
mov
r2,a
movc
a,@a+dptr
xch
a,r2
inc
a
movc
a,@a+dptr
mov
r3,a
大根是这样...
不知道是不是懂了...
祝你好运!
^_^

⑹ 单片机编程 建立0~6的立方表,通过查表指令将4的立方送到外部RAM 2000H单元

MOV DPTR,#TAB
MOV A,#4
MOVC A,@A+DPTR
MOV DPTR,#2000H
MOVX @DPTR,A
TAB:DB 00H,01H,08H,1BH,40H,7DH,D8H

⑺ 51单片机,c语言写程序,什么数学运算都可以吗加减乘除,对数,指数,三角函数,平方,根号,立方,

KEIL C51 有个数学函数库(和C语言的 数学函数库类似)

指数,三角函数,平方,开方,立方都有的。具体可以看 相关的资料。
数学函数库 需要看头文件MATH.H
例如:
1.指数函数 float exp(float x)
2.对数函数 float log(float x) ,float log10(float x)
3.平方根:float sqrt(float x)
3.三角函数 :
float cos(float x),float sin(float x),float tan(float x)
float acos(float x),float asin(float x),float atan(float x),float atan2(float y, float x)
float cosh(float x),float sinh(float x),float tanh(float x)
等很多了,具体去看相关的资料吧
希望我的回答对你有所帮助,很高兴和你一起讨论单片机编程技术。

⑻ 怎样制作光立方、一个单片机最多控制32个灯、我想弄8*8*8的光立方怎么办、需要什么硬件、怎样编程

我想弄8*8*8的光立方怎么办、需要什么硬件、怎样编程、

----
LED 点阵显示屏,显示两个16 * 16 的汉字,就和《 8*8*8 的光立方》相同了。

只不过,一个是平面安装,一个是重叠安装,而已。

⑼ 单片机程序作业,用两种查表指令查3,4的立方值并送到外部RAM的50H和1000H中保存

使用歼铅槐DPTR的查表指令
ORG 0000H;
LJMP MAIN
ORG 0030H;
MAIN:
MOV DPTR,#TAB
MOV A,#3;
MOVC A,@A+DPTR
MOV R0,#50H;
MOVX @R0,A;
MOV A,#4
MOVC A,@A+DPTR
MOV DPTR,#1000H;
MOVX @DPTR,A
SJMP $
TAB:
DB 0,1,8,27,64,125
END
使用MOVX A,@A+PC自己氏友考虑激誉吧

⑽ 单片机8×8×8LED光立方需要的材料

LED灯N个,51单片机2个,20或30pf的电容4个,USB转串口下载器1个,,杜邦线一排,5V锂电池一个,晶振2个,漆包线一小卷,自锁按钮2个,烙铁,焊锡丝,LED灯若干。

阅读全文

与单片机求立方相关的资料

热点内容
androidedittext文字居中 浏览:904
我的世界怎么在服务器里吊打腐竹 浏览:656
为什么程序会编译出错 浏览:950
帝豪gl的文件夹怎么打开 浏览:151
加密门禁卡的复制方法 浏览:731
树莓派搭建云服务器 浏览:672
论坛源码php手机版 浏览:545
wow如何跨服务器发邮件 浏览:357
恐龙识字app怎么调低背景音乐 浏览:514
程序员那么可爱这部剧好吗 浏览:325
程序员开发棋牌类游戏 浏览:783
文章加密了怎么解除 浏览:72
西安交通大学邮箱服务器地址 浏览:608
java读文件字符 浏览:163
解压码的拼音怎么拼 浏览:581
主力绝对控盘指标源码贴图 浏览:9
超市真空压缩袋多少钱 浏览:20
javaweb简单项目源码 浏览:272
对所有的excel加密 浏览:492
编程逻辑与结构化程序设计 浏览:881