版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本设计采用8*8*8STC12C5A60S2为主控,驱动电路是采用74HC573数字二、关键字:8*8*81、STC12C5A60S2是STC生产的单时钟/机器周期(1T)的单片机,是高速、低功耗、超强的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810复位电路,2路,8路高速10位A/D转换,针对25.5-3、1280每个I/O口驱动能力均可达到20mA,但整个最大不要超过120mA5EEPROM67、内部集成MAX810复位电R/C振荡器频率为:5.0V3.3V10、4168051兼容的定时器/计数器,16位定时器T011、3T0P3.4/T0输出时钟,可由T112I/O7路,传统的下降沿中断或电平触发中断,并新增支持上升PCA模块,PowerDown模式可由外部中断唤醒,INT0/P3.2,INT1/P3.3,13、214、A/D转换,10位精度ADC8P0.0~P0.7P0:P0口既可以作为输入/输出口,也可以作为地址/数据复用总线使P0口作为输入/输出口时,P08位准双向口,内部有弱上拉电阻,无P0作为地址/8位地址线A0~A7,数D0~D7IO口、ADC0、独立波特率发生器的时钟输出IO口、ADC2、PCA计数器的外部脉冲输入脚,第二串口数据P1.4/ADC4/1/SSSPI同步串行接口的主出从入(主器件的输入和从器件的输出)P2口内部有上拉电阻,既可作为输入输出口(8位准双向口)8位地IO1P3.1/INT00,下降沿中断或低电平中断P3.4/T0/INT非A/DSTC12C5A60AD/S2A/DA/DP18路10位高速A/D250KHz(25万次/秒)。8A/D,可做P1IO8A/DA/D使IO口使用。ADC由多路开关、比较器、逐次比较寄存器、10DAC、转换结果寄存器以及ADC_CONTER构成。该单片机的ADCADCADC由一个比较器和D/A转D/A转换器输出进行比较,经过多次比较,使转换所得的数字量逐次近输入模拟量对应值。逐次比较型A/D转换器具有速度高,功耗优点。ADP1ASF特殊功能寄存器中的相应位置为‘1’,将相应的STC12C5A602、74HC573八进制3态非反转透明锁存器。器件的输入是和标准CMOS输出状态;在这种状态下,可以多个并联输出,当输入的数据时,在的输出3、4DS1302是一种高性能、低功耗的实时时钟,附加31字节静态RAM,采用2.5~5.5V。采用双电源供DS130264灯的阳极相连,这样就有了八层(个)64(个)阳极输入端。采hc57364出到灯上,8个并行74HC573的64个输出引脚接到64束阳控制灯;而8层灯uln28038uln2803DS1302单片机主控STC12C5A60S2来控制所有灯的亮灭,从而控制P0、P1、P2实现控制X、Y、Z图 8层 图 64个灯4uln2803的1~8脚接主控的P1口(1~8脚,数据由主控P2口输入经过uln280311~18uln28035732~9脚(数据输入)都连接在一起连接到主控的P0口(32~39脚,数据从主控P0口输送到573,573的1脚是3态输出使能输入(低电平)一般都与地相接,57311脚(锁存使能输入)都连接在一起连接到主控的P2口(21~28脚)作为锁存控制。当573的11脚为高电平和2~9脚为高电平时,57312~19脚(3态锁存输出)11脚为高低平、2~9脚为低电平时,57312~1911脚为低电平时,2~9脚不管高低电平,12~19脚的输出不变。主控通过573+uln2803来驱动控制哪竖面的哪一层的哪个51STC12C5A60S2,选择的理由:1.无法,采用第六代加密技术;2.超强;3.内部集成高可靠复位电路,外部复位可用可不用;4.8051快8-12ULN280374HC573,其优点有1.高阻态,就是输出既不是高电平,也不是低电平,而是高阻抗的状态;在这种状态下,可以多个并联输出;2.数据锁存;当输入的数据时,在的输出端,数据仍然保持;3.数据缓冲、加4)LED灯的选择,出于外观和整体的形状美观,采用的是雾状蓝光的LED图 雾状LED15128*82.3mm64DIY6474HC573ULN2803。我把驱动电路及主控都焊接在一个控制板上了,这样减少了很多跳图 灯的焊图2)5732和公司。他们的搜索功能庞大、快捷又免费,让我们很方便地搜索到了我【1】祈伟杨亭.单片机C51程序设计与实验航空航天大【2】张瑞玲.单片机原理与应用西北工业大学2010年12#include<REG52.H>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintuchardisy[8][8];/*rank:A,1,2,3,4,I,心 /*the /*railway /*railway /*3p ThatistoinitializetheprogramItiswritetosetthetimerinc52Sotheprogramcanrenovatetheled_3d_cubeinfixedtimeusetheinterruptfunction.*/void{}void //误差-0.026765046296usSTC1T{unsignedchara,b;for(a=2;a>0;a--}voiddelay(uint{while(i--)delay5us();//12tmcu}/*Tojudgethenumbit*/ucharjudgebit(ucharnum,ucharb){charn;if(num)return}/*Tofigureouttheroundnumberucharabs(uchar{ucharb;if(a>=5)return}/*Tofigureouttheabsolutevalueucharabss(char{if(a<0)returna;}/*Thefunctioncancomparatthecharacter.Andremovethebigonetotheback.*/voidmax(uchar*a,uchar{ucharif{}}/*Thefunctionistofigureoutthemaxnumberandreturnit.*/ucharmaxt(uchara,ucharb,ucharc){if(a<b)if(a<c)returna;}voidclear(char{ucharfor{for(i=0;i<8;i++)dis}}voidtrailler(uint{charfor(i=6;i>=-3;i--{if{}if{}
for(j=0;j<8;j++)for(j=0;j<8;j++) }}voidpoint(ucharx,uchary,ucharz,uchar{ucharch1,ch0;if(le)}voidtype(ucharcha,uchar{ucharfor{dis}}/*Thefirstvariableisthedistancefromthemidpoint.Thesecondisthelayer.thethirdistheflashspeedofthetimebetweeneachtwopoint.Theforthistheenableio,itcontrolsweatherdraworclaen.*/voidcirp(charcpp,uchardir,ucharle){ucharif{if(dir)if(cpp>63)point}}voidline(ucharx1,uchary1,ucharz1,ucharx2,uchary2,ucharz2,uchar{chart,a,b,c,a1,b1,c1,i;c1=z2-for{}}voidbox(ucharx1,uchary1,ucharz1,ucharx2,uchary2,ucharz2,ucharfill,ucharle){uchari,j,t=0;forifif{
if{
for{}}{
for for{}{
}}if{
for }{}
ifif{
for(j=z1;j<=z2;j+=(z2-{fordis}for(j=y1;j<=y2;j+=(y2-{}}{
for for(j=z1;j<=z2;j+=(z2-{for{dis}}for(j=y1;j<=y2;j+=(y2-{for{dis}}}}}voidbox_apeak_xy(ucharx1,uchary1,ucharz1,ucharx2,uchary2,ucharz2,ucharfill,ucharle){uchari;if(fill){for line}{linelinelineline}}voidpoke(ucharn,ucharx,uchar{ucharfor(i=0;i<8;i++)}voidboxtola(chari,uchar{if poke(n,0,7-if poke(n,i-if poke(n,7,i-}voidrolldisy(uint{ucharj;charfor(i=23;i>-40;i--{for{if}}}voidroll_apeak_yz(ucharn,uint{uchari;{case1: case3: case0: }}voidroll_apeak_xy(ucharn,uint{uchari;{ d);}break;case2:for(i=0;i<7;i++){line(i,7,0,i,7,7,0);line(7,6-i,0,7,6-case3:for(i=0;i<7;i++){line(7,7-i,0,7,7-i,7,0);line(6-i,0,0,6- }}voidroll_3_xy(ucharn,uint{uchari;{case for{box_apeak_xy(0,i,0,7,7-i,7,1,1);if box_apeak_xycase for{box_apeak_xy(7-i,0,0,i,7,7,1,1);if box_apeak_xycase for{box_apeak_xy(0,i,0,7,7-i,7,1,1);if box_apeak_xy(4,4,0,7,7-}case for{box_apeak_xy(7-i,0,0,i,7,7,1,1);if box_apeak_xy(4,3,0,7-}}}voidtrans(ucharz,uint{ucharfor{for(i=0;i<8;i++) }}voidtranoutchar(ucharc,uint{uchari,j,k,a,i2=0;for(i=0;i<8;i++){ifbox_apeak_xy(i+1,0,0,i+1,7,7,1,1);box_apeak_xy(i2,0,0,i2,7,7,1,0);for(j=0;j<=i;j++) for(k=0;k<8;k++){ }}}void{ucharfor{for(j=0;j<8;j++)dis}}/*Fromnowon,thefunctionbelowistodis ytheflash.*/voidflash_1(){}void{ucharfor(i=129;i>0;i--{}for{}for(i=129;i>0;i--{}for{}}void{charfor{if(i<7)}for(i=7;i>=0;i--{if(i>0)}for{if}}void{chari,j,an[8];for(j=7;j<15;j++)an[j-for{for{if}for{if}for{ifan[j]--}}forfor(i=0;i<=16;i++){for{if}for{if(((an[j]-line(0,an[j]-1,j,7,an[j]-}for{if}}}void{uinta=15000;//a=delaychari=8,j,an[4];foran[j-while(i--{for{if
if(an[j]<7)box_apeak_xy(j,an[j]+1,j,7-}for{ifan[j]--}}for(j=0;j<4;j++)while(i--{for{ifbox_apeak_xy(j,an[j],j,7-j,an[j],7-
ifbox_apeak_xy(j,an[j]+1,j,7-}for{ifan[j]--}
for(j=1;j<4;j++)while(i--{for{ifif(an[j]>0)
box_apeak_xy(j,an[j]-1,j,7-j,an[j]-}for{}
}
iffor(j=0;j<4;j++){for{if
if(an[j]>3)box_apeak_xy(j,an[j]-1,j,7-j,an[j]-}for}foran[j-while(i--{for{box_apeak_xy(j,an[j],j,7-j,an[j],7-
box_apeak_xy(j,an[j]+1,j,7-}for}
}
ifan[j]--for(j=0;j<4;j++)while(i--{for{
ifif(an[j]<3)box_apeak_xy(j,an[j]+1,j,7-}for{}}for(j=0;j<4;j++)while(i--
ifan[j]--{for{ifj,an[j],7-j,an[j]+1,7-}
iffor{}
}
if(j<5-i)foran[j]=j-while(i--{for{ifbox_apeak_xy(j,an[j],j,7-j,an[j],7-
ifbox_apeak_xy(j,an[j]-1,j,7-j,an[j]-}for{if}}void{
uchari,j,k,z;for{for{for{if{for{point(j,7-k,z,1);if(z-1)point(j,7-k,z-}}}}}}void{uchari;uintfor(i=0;i<8;i++){box_apeak_xy(0,i,0,7-i,i,7,1,1);}for(i=7;i>0;i--){}}void{ucharfor{}}void{charucharj,an[8],x,y,t,x1,y1;for(i=0;i<8;i++){box_apeak_xyifbox_apeak_xy(i-1,0,0,i-1,7,7,1,0);}for(i=0;i<7;i++){}forfor{for{}for{if((i>j)&(j>i-71))}}for{for{}for{if((i>j)&(j>i-an[j]--}}for{}for{}for{}for{}for{box(7,7,7,7-i,7-i,7-}for{box(0,0,0,7-i,7-i,7-}for{}for{box(7,0,0,i,7-i,7-}for{box(7,0,0,7-}for{box(0,7,7,7-}}vo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论