武汉轻工大学
2015年校电子设计大赛
10*10*10光立方
2015年4月25日
1
武汉轻工大学
摘要
本设计以STM32F103ZET6为控制核心,通过控制74HC573锁存器与ULN2803控制10*10*10光立方任意LED点亮
STM32F1系列属于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3。
STM32F103ZET6芯片介绍
●基于ARM Cortex-M3核心的32 位微控制器,LQFP-144封装. ●512KB片内FLASH(相当于硬盘),64K片内RAM(相当于内存) ,片内FLASH 支持在线编程(IAP).
●高达72MHz的频率,数据,指令分别走不同的流水线,以确保 CPU运行速度达到最大化 .
●通过片内BOOT区,可实现串口下载程序(ISP). ●片内双RC 晶振,提供8M和32K 的频率.
●支持片外高速晶振(8M),和片外低速晶振(32K).其中片外低速晶振可用于 CPU 的实时时钟,带后备电源引脚,用于掉电后的时钟行走.
●42个16位的后备寄存器(可以理解为电池保存的RAM),利用外置的纽扣电池,和实现掉电数据保存功能.
●支持 JTAG,SWD调试.配合廉价的J-LINK,实现高速低成本的开发调试方案. ●多达80个IO(大部分兼容5V逻辑),4个通用定时器,2个高级定时器,2个基本定时器,3路SPI接口,2路I2S 接口,2路I2C接口,5路USART,一个USB从设备接口,一个 CAN接口,SDIO接口,可兼容SRAM,NOR和NAND Flash 接口的16位总线-FSMC.
●3路共16通道的12位AD输入,2路共2 通道的12位 DA 输出.支持片外独立电压基准.
●CPU操作电压范围:2.0-3.6V.
关键字:STM32F103 LED驱动 74HC573 ULN2803
2
武汉轻工大学
目录
摘要 ........................................................................................................................................... 2 目录 ........................................................................................................................................... 3 1 设计任务与要求 ................................................................................................................. 4 1.1设计任务 ......................................................................................................................... 4 1.2设计要求 ......................................................................................................................... 4 2方案比较与论证 .................................................................................................................... 4 2.1方案比较 ......................................................................................................................... 4 2.2总体总结 ......................................................................................................................... 5 3 硬件设计 ............................................................................................................................... 6 3.1 stm32最小系统 .............................................................................................................. 6 驱动模块 ............................................................................................................................... 6 显示模块 ............................................................................................................................... 7 4 软件设计 ............................................................................................................................... 8 4.1总体软件框图 ................................................................................................................. 9 4.2 主程序 .......................................................................................................................... 10 5 系统调试与测试 ................................................................................................................. 10 5.1 硬件测试 ...................................................................................................................... 10 5.2软件调试 ....................................................................................................................... 11 5.3 软硬件联合调试 .......................................................................................................... 11 6 设计总结 ............................................................................................................................. 11 参考文献 ................................................................................................................................. 12 附录 ......................................................................................................................................... 12 附录A:元器件清单 .......................................................................................................... 12 附录B:程序清单 .............................................................................................................. 12
3
武汉轻工大学
1 设计任务与要求
1.1设计任务
设计制作一个10*10*10的三维立体显示图案的LED光立方,以STM32F103ZET6单片机为主控芯片,加上驱动电路,能够实现对二极管显示阵列中的每一个发光二极管进行控制。从而显示出不同的造型和图案,呈现出立体动态效果。
1.2设计要求
1. 以单片机为核心,驱动电路采用74HC573、ULN2803。 2. 可以显示静态和动态的图案。 3. 控制显示输出至少5种显示效果。 4. 电路原理图设计。
5. 程序流程图,编写程序代码。
2方案比较与论证
2.1方案比较
单片机主控制模块
方案一 采用常用的89c51单片机作为主控芯片,由于89c51只有4K字节
的存储器,而光立方需要形成多种动画程序量大,可能会有溢出的情况发生。所以不采用此方案。
方案二 采用STM32F103ZET6为控制核心,STM32基于ARM公司最新一代cortex-M内核的芯片,意法半导体(ST)公司推出的,因为其超高的性价比和简单函数库编程方式,而广泛采用。STM32系列几乎集成了所有工控领域的所有功能模块,包括USB、网络、SD卡、AD、DA等等。主频72M。ROM与RAM均比89c51的大,I/O口比51多。故选择STM32作为控制核心芯片。
驱动模块
方案一:采用10个8050NPN三极管驱动,虽能起到反相的作用。但由于需要十个数量较多,对于整体布局效果不佳,影响美观。并且性价比不高,所以不采
4
武汉轻工大学 用此方案。 方案二:采用八重达林顿uln2803,1 至 5脚为5路输入,18 到 14脚为5路输出。驱动能力 500MA \\50V。因为整个光立方体由1000个LED灯组成,所需电流也较大,并且两片芯片就能等效10个三极管的作用,大大缩小元器件占用空间。综上所述选择ULN2803芯片。
显示模块
方案一:由于我们常用的LED灯不容易聚光,光发散比较厉害点亮时相互之间将会有影响,容易影响视角效果。
方案二:采用2*3*4mm方形白发蓝雾状led,电压:3-3.2V,电流:17-20mA,波长:460-470NM,使用雾状的比较聚光,1000个灯同时点亮时也同样能够达到动画的效果。
2.2总体总结
根据以上方案的分析,单片机主控制模块采用STM32F103ZET6,驱动模块采用八重达林顿ULN2803,显示模块采用2*3*4mm方形白发蓝雾状LED。
5