广州创龙LED程序深度剖析

合集下载

LED显示屏原理详细解析(用到的芯片74HC138、74HC245、74HC595、4953、TB6

LED显示屏原理详细解析(用到的芯片74HC138、74HC245、74HC595、4953、TB6

LED显示屏原理详细解析(用到的芯片74HC138、74HC245、74HC595、4953、TB62726、JXI5020等芯片功能详解)74HC245简介:总线驱动器,典型的TTL型三态缓冲门电路。

由于单片机等CPU的数据/地址/控制总线端口都有一定的负载能力,如果负载超过其负载能力,一般应加驱动器。

另外,也可以使用74HC244等其他电路,74HC244比74HC245多了锁存器。

74HC245实物图:74HC245引脚定义:第1脚DIR,为输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。

第2-9脚“A”信号输入输出端,A1=B1、、、、、、A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。

如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。

第11-18脚“B”信号输入输出端,功能与“A”端一样,不再描述。

第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。

第10脚GND,电源地。

第20脚VCC,电源正极。

TRUTH TABLE真值表Control Inputs 控制输入Operation运行G DIRL L B 数据到A 总线L H A 数据到B 总线H X 隔开H=高电平L=低电平×=不定Absolute Maximum Ratings绝对最大额定值Supply Voltage电源电压(VCC) -0.5 to -7.0V DC Input Voltage DIR and G pins (VIN) 直流输入电压方向和G引脚(输入电压)-1.5 to VCC -1.5V DC Input/Output Voltage (VIN, VOUT)直流输入/输出电压-0.5 to VCC -0.5V Clamp Diode Current 钳位二极管电流(ICD) ±20 mA DC Output Current直流输出电流,每个引脚(输出)±35 mA DC VCC or GND Current, per pin (ICC)±70 mAStorage Temperature Range 储存温度范围(TSTG) -65℃to -150℃Power Dissipation (PD)功耗(Note 3) 600 mW S.O. Package only 500 mW Lead Temperature (TL) (Soldering 10 seconds) 260℃【74HC245的作用:信号功率放大。

AM5728创龙TL5728-EasyEVM开发板简介

AM5728创龙TL5728-EasyEVM开发板简介
开发例程主要包括: 基于 ARM 端的 Linux 开发例程 基于 TI-RTOS 的 ARM、DSP、PRU、IPU 的开发例程 基于 OpenCL、OpenMP、IPC 的多核开发例程 基于 OpenCV 的图像开发例程 基于 Qt 的入门开发例程 基于 TI-RTOS 和 Linux 的 EtherCAT 开发例程 视频采集和编解码例程
Revision History
Draft Date 2018/09/07 2018/04/09 2017/12/25 2017/03/24 2016/08/16
Revision No. V1.5 V1.4 V1.3 V1.2 V1.0
Description
1. 修改电气特性参数。
1. 开发板版本更新为 A3。 1. 规格书文档内容勘误。 2. 修改电气特性参数。 1. 添加产品认证和开发例程。
Ethernet
2x RGMII,RJ45 接口,10/100/1000M 自适应
1x Micro USB 2.0 接口 USB
1x USB 3.0 接口
CAN
1x 3pin 3.81mm 绿色端子
1x UART3,Micro USB 接口,全双工模式
UART
1x RS232 串口(UART1),全双工模式
软件参数
ARM 端软件支持
表2 Linux-4.4.19,Linux-RT 4.9.65,TI-RTOS
DSP 端软件支持 TI-RTOS
CCS 版本号
CCS6.1.3
图形界面开发工具 Qt
双核通信组件支持 IPC
软件开发套件提供 Processor-SDK Linux、Processor-SDK Linux-RT、Processor-SDK TI-RTOS

1-1-TMS320C6655创龙开发板硬件说明书1

1-1-TMS320C6655创龙开发板硬件说明书1

TMS320C6655(TL665x-EasyEVM)创龙开发板硬件说明书1TMS320C6655(TL665x-EasyEVM)是创龙基于SOM-TL665x核心板研发的一款TI C66 x多核定点/浮点高性能DSP创龙开发板,采用核心板+底板方式,底板尺寸为200mm*1 06.65mm,采用4*50pin和1*80pin B2B工业级连接器,稳定、可靠、便捷,可以帮助客户快速评估核心板性能。

SOM-TL665x核心板采用高密度沉金无铅工艺8层板设计,尺寸为80mm*58mm,采用TI KeyStone C66x多核定点/浮点DSP TMS320C665x高性能工业DSP处理器。

采用耐高温、体积小、精度高的B2B连接器,引出了核心板的全部接口资源,帮助开发者快速进行二次开发。

TMS320C6655(TL665x-EasyEVM)创龙开发板底板采用4层无铅沉金电路板设计,为了方便用户学习开发参考使用,上面引出了各种常见的接口。

1 TMS320C6655处理器TI TMS320C665x是一款高性能定点/浮点DSP处理器,主频高达1.0/1.25GHz,处理能力强,单核TMS320C6655和双核TMS320C6657管脚pin to pin兼容,拥有多种工业接口资源,以下是TMS320C665x CPU功能框创龙开发板图:创龙开发板图1创龙开发板图22 TMS320C6655 FLASH核心板上采用工业级NAND FLASH(128/256MByte),硬件如下创龙开发板图:创龙开发板图3核心板上采用工业级SPI NOR FLASH(64Mbit),硬件如下创龙开发板图:创龙开发板图43 TMS320C6655 RAMRAM采用工业级低功耗DDR3L,512M/1GByte可选,硬件如下创龙开发板图:创龙开发板图54 TMS320C6655温度传感器核心板上采用I2C接口的TMP102温度传感器,实现了系统温度的实时监测,测量误差≤2℃,测试温度为-40℃至125℃,硬件如下创龙开发板图:创龙开发板图65 TMS320C6655 EEPROM核心板上采用I2C接口1Mbit大小的工业级EEPROM,硬件如下创龙开发板图:创龙开发板图76 TMS320C6655 底板B2B连接器创龙开发板使用底板+核心板设计模式,底板共有5个B2B连接器。

广州创龙LED程序深度剖析

广州创龙LED程序深度剖析

深度剖析创龙公司LED程序(这个程序是OMAP-L138平台上的LED点灯的双核通信程序)第一部分:ARM端程序1、MainWindow w;//创建MainWindow的对象,这将会调用其构造函数2、在MainWindow::MainWindow(QWidget*parent):QMainWindow(parent)构造函数中a)syslink init-->SysLink_setup();初始化SysLink,此函数必须在用户进程调用其他的SysLink API函数之前调用。

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Void SysLink_setup(Void);///////////////////////////////////////////////////////////////////////////////////////////////////////////////////b)m_slave_id=MultiProc_getId(“DSP”);//获取DSP处理器的ID////////////////////////////////////////////////////////////////////////////////////////////////////////////////////UInt16MultiProc_getId(String name);name:处理器名字返回值:返回处理器的ID/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////String MultiProc_getName(UInt16id);id:多核处理器ID返回值:处理器的名字,返回的处理器名字是不能被修改的/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////c)Ipc_control(m_slave_id,Ipc_CONTROLCMD_LOADCALLBACK,NULL);//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Int Ipc_control(UInt16procId,Int32cmdId,Ptr arg);procId:远程处理器IDcmdId:命令ID值arg:参数值依赖命令ID值返回值:成功返回0,失败返回负值/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Ipc_CONTROLCMD_LOADCALLBACK0xBABE0000加载回调控制命令,此命令只能通过Ipc_control()函数发送,在从设备装载程序之后,并且在从设备使用IPC组件之前调用。

TL665x-EasyEVM开发板规格书

TL665x-EasyEVM开发板规格书

1开发板简介基于TI KeyStone C66x多核定点/浮点DSP TMS320C665x,单核TMS320C6655和双核TMS320C6657管脚pin to pin兼容,同等频率下具有四倍于C64x+器件的乘累加能力; 主频1.0/1.25GHz,单核可高达40GMACS和20GFLOPS,包含2个Viterbi协处理器和1个Turbo协处理解码器,每核心32KByte L1P、32KByte L1D、1MByte L2,1MByte多核共享内存,8192个多用途硬件队列,支持DMA传输;可免装风扇,以最低的功率级别和成本提供最高的性能;支持PCIe、SRIO、HyperLink、uPP、EMIF16、千兆网口等多种高速接口,同时支持I2C、SPI、UART、McBSP等常见接口;连接稳定可靠,80mm*58mm,体积极小的C66x核心板,采用工业级高速B2B连接器,关键大数据接口使用高速连接器,保证信号完整性;提供丰富的开发例程,入门简单,支持裸机和SYS/BIOS操作系统。

图 1 开发板正面图图 2 开发板侧面图1图 3 开发板侧面图2图 4 开发板侧面图3图 5 开发板侧面图4TL665x-EasyEVM是一款基于广州创龙TI KeyStone C66x多核定点/浮点TMS320C665x 核心板SOM-TL665x设计的高端DSP开发板,底板采用沉金无铅工艺的4层板设计,它为用户提供了SOM-TL665x核心板的测试平台,用于快速评估SOM-TL665x核心板的整体性能。

SOM-TL665x引出CPU全部资源信号引脚,二次开发极其容易,客户只需要专注上层运用,降低了开发难度和时间成本,让产品快速上市,及时抢占市场先机。

不仅提供丰富的Demo程序,还提供DSP核间通信开发教程,全面的技术支持,协助客户进行底板设计和调试以及多核软件开发。

2典型运用领域✓数据采集处理显示系统Telecom Tower:远端射频单元(RRU)✓X 射线:行李扫描仪✓专业音频混合器✓军用和航空电子成像✓军用:军需品和目标应用✓军用:雷达/声纳✓军用:雷达/电子战✓打印机✓无线通信测试仪✓机器视觉:帧捕捉器✓机器视觉:摄像机✓条码扫描仪✓点钞机✓电信基带单元✓视频分析服务器✓软件无线电(SDR)✓高速数据采集和生成3软硬件参数硬件框图图 6 开发板硬件框图图7 开发板硬件资源图解1图8 开发板硬件资源图解24、硬件参数CPU单核TMS320C6655/双核TMS320C6657,主频1.0/1.25GHz ROM128/256MByte NAND FLASHRAM512M/1GByte DDR3EEPROM1MbitSENSOR 1x TMP102AIDRLT,核心板温度传感器,I2C接口B2B Connector 2x 50pin公座B2B,2x 50pin母座B2B,间距0.8mm,合高5.0mm;1x 80pin高速B2B连接器,间距0.5mm,合高5.0mm,共280pin,信号速率最高可达10GBaudLED2x供电指示灯(核心板1个,底板1个)5x用户指示灯(核心板2个,底板3个)KEY 2x复位按键,包含1个系统复位和1个软复位1x NMI按键1x用户按键SRIO1x SRIO,四端口四通道,每通道最高通信速率5GBaudPCIe1x PCIe Gen2,单端口双通道,每通道最高通信速率5GBaudHyperLink1x HyperLink,最高通信速率40GBaud,KeyStone处理器间互连的理想接口IO2x 25pin IDC3简易牛角座,间距2.54mm,含uPP、EMIF16拓展信号2x 25pin IDC3简易牛角座,间距2.54mm,含McBSP、SPI、TIMER、GPIO等拓展信号UART1x UART0,Micro USB接口,提供4针TTL电平测试端口1x UART1,DB9接口,提供6针TTL电平测试端口Ethernet 1x SGMII,RJ45接口,10/100/1000M自适应JTAG 1x 14pin TI Rev B JTAG接口,间距2.54mmFAN 1x FAN,12V供电,间距2.54mmBOOT SET 1x 5bit拨码开关SWITCH 1x电源开关POWER 1x 12V 2A直流输入DC417电源接口,外径4.4mm,内径1.65mm 备注:广州创龙SOM-TL6655、SOM-TL6657核心板在硬件上pin to pin兼容。

基于创龙TMS320C6678工业核心板性能简介

基于创龙TMS320C6678工业核心板性能简介

2GByte
备注:标配为 SOM-TL6678-1000-1GN8GD-I,其他型号请与相关销售人员联系。
型号参数解释
8 技术支持
(1) 协助底板设计和测试,减少硬件设计失误; (2) 协助解决按照用户手册操作出现的异常问题; (3) 协助产品故障判定; (4) 协助正确编译与运行所提供的源代码; (5) 协助进行产品二次开发; (6) 提供长期的售后服务。
1 核心板简介
基于 TI KeyStone C66x 多核定点/浮点 TMS320C6678 DSP,集成了 8 个 C66x 核,支 持高性能信号处理应用;
每核心主频 1.0/1.25GHz,单核可高达 40GMACS 和 20GFLOPS,每核心 32KByte L1P、 32KByte L1D、512KByte L2,4MByte 多核共享内存,8192 个多用途硬件队列,支持 DMA 传输;
SOM-TL6678 引出 CPU 全部资源信号引脚,二次开发极其容易,客户只需要专注上层 运用,降低了开发难度和时间成本,让产品快速上市,及时抢占市场先机。
不仅提供丰富的 Demo 程序,还提供 DSP 核间通信开发教程,全面的技术支持,协 助客户进行底板设计和调试以及多核软件开发。
2 典型运用领域
9 增值服务
主板定制设计 核心板定制设计 嵌入式软件开发 项目合作开发 技术培训
工业级 工业级 工业级
部分开发例程详见附录 A,开发例程主要包括: 裸机开发例程 SYS/BIOS 开发例程 多核开发例程
5 电气特性
核心板工作环境
环境参数 工业级温度 工作电压
表3 最小值 -40°C
/
典型值 / 9V
核心版功耗典型值电压表4 典型值电流核心板

8X8LED滚动显示总结

8X8LED滚动显示总结

8X8LED滚动显示总结第一篇:8X8LED滚动显示总结8X8LED滚动显示总结孙俊杰陈泉佑胡庆丽程序设计心得体会:我们组做的作品是8X8LED滚动显示字符项目。

在项目完成的过程中,我们遇到了不少的问题,但还是有了相应的解决办法。

比如在作品制作的初期,当时我们还不了解每个电路板都有相应的电路连接,所以在编写程序时,我们把程序编成共阴极显示,该程序在调试过程中通过了,但是无论换了多少个仿真器,都无法将程序烧入芯片,在老师的指导和帮助下,我们了解了这一个错误,并改变了程序,重新调试,经过努力,终于使程序烧入芯片。

在显示阶段,当插上电源后,字符滚动得太快,我们便了解是定时器定得太小或分频太低,于是我们通过调试程序,看看是那种,结果对症下药,终于让我们将显示的速率减缓,能够很清楚地看清字符的滚动。

在我们的作品完成之后,我跟陈泉佑借来了相机拍了几张演示时的照片,然后我们又录了音,讲述我们的硬件及原理。

网页制作心得体会:由于我们刚开始不会制作网页,只稍微知道点皮毛,但是考试在即也不能再看视频看书,所以我们就根据自己的想法,一步步摸索制作。

结果连续制作了两个下午,可都不能把想的表现出来,有些图片显示不了,有些链接链接不到,由于制作了框架,框架之间无法实现特定内容之间的链接(也就是运用锚点的链接)。

在我们老师说网页只占5分之后,我们对它的重视程度便降低了。

在得知电路连接图可以用Protel se制作之后,我们想方设法画好了电路图,然后经过复制粘贴转换格式之后,终于在预览中可以显示了。

可是还是有几幅图片显示不了,在我制作锚点时,原先用中文对锚点的命名无法形成链接,结果改成英文名便可以了,由这个得到提示,并且想起好象听说Dreamweaver MX中对有些功能来说对中文不起作用,并且我们的那些链接,在显示地址时,总是将中文翻译成乱码。

所以我决定将那些画的名字改成英文或数字,还有被链接的东西。

真没想到还真有用,结果上一次没完成的都完成了。

51单片机88点阵LED显示的原理及程序

51单片机88点阵LED显示的原理及程序

51单片机8*8点阵LED显示原理及程序更多在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。

1.程序设计内容8X8点阵LED工作原理说明:8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

2.硬件电路3.汇编源程序ORG 00HSTART: NOPMOV R3,#3LOP2: MOV R4,#8MOV R2,#0LOP1: MOV P1,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,@A+DPTR MOV P3,AINC R2LCALL DELAY DJNZ R4,LOP1 DJNZ R3,LOP2MOV R3,#3LOP4: MOV R4,#8 MOV R2,#7LOP3: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2MOVC A,@A+DPTR MOV P3,ADEC R2LCALL DELAY DJNZ R4,LOP3 DJNZ R3,LOP4MOV R3,#3LOP6: MOV R4,#8 MOV R2,#0LOP5: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,AINC R2LCALL DELAY DJNZ R4,LOP5 DJNZ R3,LOP6 MOV R3,#3LOP8: MOV R4,#8 MOV R2,#7LOP7: MOV P3,#00H MOV DPTR,#TABB MOV A,R2MOVC A,@A+DPTR MOV P1,ADEC R2LCALL DELAYDJNZ R4,LOP7DJNZ R3,LOP8LJMP STARTDELAY: MOV R5,#10D2: MOV R6,#20D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1DJNZ R5,D2RETTABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH TABB: DB 01H,02H,04H,08H,10H,20H,40H,80HEND4.C51语言源程序#include <AT89X52.H>unsigned CHAR code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned CHAR code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};void DELAY(void){unsigned CHAR i,j;for(i=10;i>0;i--)for(j=248;j>0;j--);}void DELAY1(void){unsigned CHAR i,j,k;for(k=10;k>0;k--)for(i=20;i>0;i--)for(j=248;j>0;j--);}void main(void){unsigned CHAR i,j;while(1){for(j=0;j<3;j++)//FROM left to right 3 time {for(i=0;i<8;i++){P3=taba[i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM right to left 3 time{for(i=0;i<8;i++){P3=taba[7-i];P1=0xff;DELAY1();}}for(j=0;j<3;j++)//FROM top to bottom 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[7-i];DELAY1();}}for(j=0;j<3;j++)//FROM bottom to top 3 time {for(i=0;i<8;i++){P3=0x00;P1=tabb[i];DELAY1();}}}}。

Led点阵广告牌设计显示原理及控制方式分析

Led点阵广告牌设计显示原理及控制方式分析

2.1 LED点阵模块结构八十年代以来出现了组合型LED点阵显示器模块,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。

这种一体化封装的点阵LED模块,具有高亮度、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。

LED点阵规模常见的有4×4、4×8、5×7、5×8、8×8、16×16等等。

根据像素颜色的数目可分为单色、双基色、三基色等。

像素颜色不同,所显示的文字、图象等内容的颜色也不同。

单色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。

图2.1示出最常见的8×8单色LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。

图2.1 8×8单色LED模块内部电路LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号.如5x7点阵显示器用于显示西文字母.5×8点阵显示器用于显示中西文,8x8点阵可以用于显示简单的中文文字,也可用于简单图形显示。

用多块点阵显示器组合则可构成大屏幕显示器,但这类实用装置常通过PC机或单片机控制驱动。

2.2 LED 动态显示原理LED点阵显示系统中各模块的显示方式:有静态和动态显示两种。

静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。

点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。

led显示屏的工作原理

led显示屏的工作原理

led显示屏的工作原理"LED显示屏的工作原理"导言:LED(发光二极管)显示屏已经成为现代生活中不可或缺的一部分。

无论是广告牌、电视、电子设备,还是信息显示系统,都普遍采用了LED显示屏技术。

本文将深入探讨LED显示屏的工作原理,并逐步解析其核心机制。

第一部分:什么是LED显示屏?LED显示屏是一种能够发出可见光的半导体器件。

LED的特别之处在于当电流通过时,电子与空穴结合释放能量,产生光线。

因此,LED显示屏是通过控制电流来实现显示效果的。

第二部分:LED的核心组成部分1. 发光屏幕LED显示屏使用的一种主要技术就是将许多LED组装在一起,构成一个大屏幕。

每一个LED点光源都是显示屏上的一个像素。

这些LED点光源通过透明化的外壳层包裹,形成出色的色彩和效果。

2. 控制电路控制电路是LED显示屏的核心部分之一。

因为显示屏通常是大型复杂的系统,需要一个专门的电路来控制电流和充电状态等参数。

控制电路可以根据需要实现不同的显示模式和效果。

第三部分:LED显示原理当LED显示屏接收到所需显示的图像或视频信号时,工作原理如下:1. 信号解码首先,在LED显示屏接收到信号之前,信号需要经过解码过程。

原始信号将被转换为适合LED的信号格式,并通过控制电路传输给相应的发光屏幕。

2. 点亮在接收到信号之后,适量的电流将通过各个像素点的发光二极管。

这些发光二极管将根据信号的电压和频率逐个点亮。

根据像素点的不同,可以按照特定亮度和颜色发出光线。

3. 显示效果通过逐个点亮像素点,整个屏幕将呈现出相应的图像或视频。

根据光线的亮度和颜色的变化,可以显示出各种复杂的图形和动态效果。

第四部分:驱动和配色方式1. 驱动方式通常,LED显示屏采用逐行驱动或逐列驱动方式。

逐行驱动侧重于逐行显示像素,每一行像素按照预定的时间间隔依次点亮。

逐列驱动类似,但是像素是逐列显示的。

2. 配色方式对于彩色LED显示屏,通常采用RGB(红-绿-蓝)配色方式。

led黄流工艺流程及技术要点

led黄流工艺流程及技术要点

led黄流工艺流程及技术要点下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!LED黄流工艺是LED封装领域的一种新型技术,主要用于生产高性能、低功耗的LED产品。

LED光立方原理加程序

LED光立方原理加程序

8x8x8LED光立方周渴望南阳理工学院功能;通过自定义代码实现LED炫丽动画效果。

通过按钮P3-7按钮实现动画与暂停。

底面是512个LED分成64组的共阳极由8个74hc573控制,每层64个LED共阴极接在一起,共引出8跟负极与uln2803相连由其控制(这里注意uln280输出高电平LED负极通,低电平LED负极断)。

原理:先点亮最下层LED,假设8个74hc573全输出高电平,uln2803控制最下层输出高电平,那么最下层64个LED都点亮,延时10ms到5ms,关断最下层显示开通第二层假设也是8个74hc573全输出高电平,那么倒数第二层64个LED全亮,再延时2ms到5ms那么以此类推每层的LED64个全都会亮,由于从第一层亮到最后一层亮时间小于50ms,由于人眼睛视觉暂留效果,就会觉得是全部层一起亮的,这样就“一起”点亮了512个LED。

其实每层的LED亮的数量不一样就组成了各种画面,通过调节定时器,就会有一种绚丽的动画效果。

本文使用的是STC12c5a60s2单片机,因为其程序存储空间大,stc89c52rc单片机完全可胜任(验证),只是程序太多要想办法了。

原理图:本试验中P0口控制8个74hc573的锁存端,P1控制每层与uln2803相连,P2口传输到74hc573数据。

本文使用动态扫苗,基于我之前做的16x16点阵文字移动显示程序,程序简单易懂,但是代码较多。

程序:#include<AT89X52.H>sbitLA0=P0^0;/*定义8个74hc573锁存脚*/sbitLA1=P0^1;sbitLA2=P0^2;sbitLA3=P0^3;sbitLA4=P0^4;sbitLA5=P0^5;sbitLA6=P0^6;sbitLA7=P0^7;sbitKEY=P3^7;/*定义暂停开关*/voidKEYKONG();/*按钮程序*/unsignedcharcodeceng[]={0x01,0x02,0x04,0x08,0x 10,0x20,0x40,0x80};/*8层控制代码每次亮一层*/ unsignedcharcodedi[1224][8]={{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},/*动画代码,纵向扫描*/{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*31 */{0x00,0x00,0x00,0x00,0x38,0x38,0x38,0x38},{0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44},{0x00,0x00,0x00,0x00,0x04,0x04,0x04,0x04},{0x00,0x00,0x00,0x00,0x3c,0x3c,0x3c,0x3c},{0x00,0x00,0x00,0x00,0x04,0x04,0x04,0x04},{0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44},{0x00,0x00,0x00,0x00,0x38,0x38,0x38,0x38},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*32 */{0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38},{0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x3c,0x3c,0x3c,0x3c,0x3c,0x3c,0x3c,0x3c},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44},{0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*33 */{0x38,0x38,0x38,0x38,0x00,0x00,0x00,0x00},{0x44,0x44,0x44,0x44,0x00,0x00,0x00,0x00},{0x04,0x04,0x04,0x04,0x00,0x00,0x00,0x00},{0x3c,0x3c,0x3c,0x3c,0x00,0x00,0x00,0x00},{0x04,0x04,0x04,0x04,0x00,0x00,0x00,0x00},{0x44,0x44,0x44,0x44,0x00,0x00,0x00,0x00},{0x38,0x38,0x38,0x38,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*34 */{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x3c,0x3c,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*34*/{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x3c,0x3c,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*34 */{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x3c,0x3c,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*34 */{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x3c,0x3c,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x7c,0x7c,0x7c,0x7c},/*21 */{0x00,0x00,0x00,0x00,0x20,0x20,0x20,0x20},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08},{0x00,0x00,0x00,0x00,0x04,0x04,0x04,0x04},{0x00,0x00,0x00,0x00,0x04,0x04,0x04,0x04},{0x00,0x00,0x00,0x00,0x44,0x44,0x44,0x44},{0x00,0x00,0x00,0x00,0x38,0x38,0x38,0x38},{0x7c,0x7c,0x7c,0x7c,0x7c,0x7c,0x7c,0x7c},/*22 */{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44},{0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38},{0x7c,0x7c,0x7c,0x7c,0x00,0x00,0x00,0x00},/*23 */{0x20,0x20,0x20,0x20,0x00,0x00,0x00,0x00},{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x08,0x08,0x08,0x08,0x00,0x00,0x00,0x00},{0x04,0x04,0x04,0x04,0x00,0x00,0x00,0x00},{0x04,0x04,0x04,0x04,0x00,0x00,0x00,0x00},{0x44,0x44,0x44,0x44,0x00,0x00,0x00,0x00},{0x38,0x38,0x38,0x38,0x00,0x00,0x00,0x00},{0x7c,0x7c,0x00,0x00,0x00,0x00,0x00,0x00},/*24 */{0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x7c,0x7c,0x00,0x00,0x00,0x00,0x00,0x00},/*24 */{0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x7c,0x7c,0x00,0x00,0x00,0x00,0x00,0x00},/*24 */{0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},{0x7c,0x7c,0x00,0x00,0x00,0x00,0x00,0x00},/*24 */{0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00},{0x44,0x44,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x38,0x38,0x38,0x38},/*11 */{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x30},{0x00,0x00,0x00,0x00,0x10,0x10,0x10,0x10},{0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38},/*12 */{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x38,0x38,0x38,0x38,0x00,0x00,0x00,0x00},/*13 */{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x00},{0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},/*14 */{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},/*14 */{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},/*14 */{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x38,0x38,0x00,0x00,0x00,0x00,0x00,0x00},/*14 */{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00},{0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},/*再斜1*/{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*再斜2*/{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},/*由左往右4*/{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},/*再斜1*/{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*再斜2*/{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},/*由左往右4*/{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},/*再斜1*/{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*再斜2*/{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},/*由左往右4*/{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF},/*再斜1*/{0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00},{0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00},{0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00},{0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00},{0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*内斜1*/{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*竖一中面4*/{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*内斜2*/{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*内斜1*/{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*竖一中面4*/{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*内斜2*/{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*内斜1*/{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*竖一中面4*/{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*内斜2*/{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/ /*43*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*扩展1*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*扩展2*/{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*扩展1*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/ /*43*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*扩展1*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*扩展2*/{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*扩展1*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*横中面5*/ /*43*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*扩展1*/{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*扩展2*/{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下9*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下8*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下7*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下6*/{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*下5*/{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*下4*/{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*下3*/{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},/*下2*/{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*下1*/{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},/*下1*/{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},/*下2*/{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},/*下3*/{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*下4*/{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},/*下5*/{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02},{0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下6*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08},{0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下7*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20},{0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下8*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*下9*/{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},。

4 创龙TMS320C665x基于SYS-BIOS的Demo例程演示开发例程使用手册

4 创龙TMS320C665x基于SYS-BIOS的Demo例程演示开发例程使用手册

1创龙TMS320C665x基于SYS/BIOS的Demo例程演示●所有工程均位于光盘"Demo\SYSBIOS\Application"文件夹内。

●编译NDK例程需要用到最新的NDK组件,ndk_2_24_03_35包在光盘的Tools目录下,解压到CCS安装目录即可,即ti目录下。

●所有通用库函数和对应的源码在安装光盘资料Tools目录下的"bios_mcsdk_02_01_02_06_setupwin32.exe"后能得到。

用RTSC组件可以简单地解决这个问题。

详细添加组件的方法,请参考第7章:基于广州创龙编写的RTSC组件的例程。

核心板和开发板的用户指示灯编号如下:表 1开发板型号用户指示灯编号TL665x-EasyEVM D3 D5 D7TL665xF-EasyEVM LED1 LED2 LED3表 2核心板型号用户指示灯编号SOM-TL665x D7 D8SOM-TL665xF LED1 LED24.1CLOCK——时钟此程序的作用是实现CLOCK时钟模块控制LED闪烁。

按照工程导入步骤加载CLOCK.out文件,然后点击程序运行按钮。

演示现象核心板用户指示灯循环闪烁。

4.2Task——任务此程序的作用是通过点亮LED演示动态创建任务。

按照工程导入步骤加载Task.out文件,然后点击程序运行按钮。

演示现象底板用户指示灯循环点亮5次。

4.3Task_Mutex——抢占式多任务此程序的作用是通过点亮核心板板LED演示抢占式多任务线程。

按照工程导入步骤加载Task_Mutex.out文件,然后点击程序运行按钮。

演示现象核心板用户指示灯循环点亮,点亮循序如下:TL665x-EasyEVM:核心板D8先闪烁1次,然后D7再闪烁6次。

TL665xF-EasyEVM:核心板LED2先闪烁1次,然后LED1再闪烁6次。

先闪烁用户灯为高优先级,后闪烁用户灯为低优先级。

TMS320C6748开发板硬件说明书

TMS320C6748开发板硬件说明书

TMS320C6748开发板硬件说明书Revision History目录前言 (3)1 TMS320C6748开发板简介 (4)2 开发板硬件资源说明 (5)2.1CPU (6)2.2FLASH (7)2.3RAM (8)2.4电源接口和拨码开关 (8)2.5JTAG仿真器接口 (9)2.6LED指示灯 (10)2.7按键 (11)2.8串口 (13)2.9I2C EEPROM (15)2.10SPI FLASH (16)2.11LCD触摸屏接口 (16)2.12BOOTSET启动选择开关 (18)2.13SD卡扩展卡槽 (18)2.14拓展IO信号 (19)2.15核心板B2B连接器 (21)2.16RTC座 (23)2.17SATA硬盘接口 (24)2.18RJ45以太网口 (25)2.19USB OTG和USB HOST接口 (26)2.20音频输出输入接口 (28)2.21VGA视频输出接口 (30)前言广州创龙TMS320C6748开发板是一款以TMS320C6748作为主处理器的浮点DSPC6748开发板,CPU内部集成了强大的多媒体处理单元,拥有SATA、UPP、OTG等接口,同时支持视频输入和VGA输出。

广州创龙TMS320C6748开发板采用TMS320C6748核心板+EVM底板的设计方式,尺寸为18cm x 13cm,它主要帮助开发者快速评估TMS320C6748的性能。

TMS320C6748核心板采用高密度6层板沉金无铅设计工艺,尺寸为55mm x 33mm,它集成了128MB/256MB DDR2,64MB/128MB/256M/512MB NAND Flash存储器,采用5V供电,板载3路转换率很高的DC-DC核心电压转换电源芯片,实现了系统的低功耗指标,精密、原装进口的B2B连接器引出全部接口资源,以便开发者进行快捷的二次开发使用。

1 TMS320C6748开发板简介TMS320C6748开发板底板布局及接口资源如下图所示,它是一个四层无铅沉金电路板,为了方便用户学习开发参考使用,上面引出了常见的各种接口。

OMAPL138的GPIO输出输入

OMAPL138的GPIO输出输入

__raw_writel(temp,IO_ADDRESS(GPIO0_DATA));
}
else if(arg==10)
{ temp=(temp&(~0x0004));
//GPIO0[2]清 0,灯 D10 灭
__raw_writel(temp,IO_ADDRESS(GPIO0_DATA));
} //GPIO0[0]、GPIO0[1]、GPIO0[2]、GPIO0[5]同时清 0,灯 D6、D7、D9、D10 同时 灭
#include<linux/init.h> #include<linux/module.h> #include<linux/kernel.h> #include<linux/fs.h> #include<linux/types.h> #include<linux/ioctl.h> #include<linux/cdev.h> #include<linux/kdev_t.h> #include<mach/hardware.h> #include<linux/gpio.h>
__raw_writel(temp,IO_ADDRESS(GPIO0_DATA)); } return 0; }
case led_off:
{
if(arg==6)
{
temp=(temp&(~0x0020));
//GPIO0[5]清 0,灯 D6 灭
__raw_writel(temp,IO_ADDRESS(GPIO0_DATA));
Revision History
OMAPL138 的 GPIO 控制

9 基于创龙AM57x_am5728_am5708开发板的 LED指示灯

9 基于创龙AM57x_am5728_am5708开发板的 LED指示灯

1基于创龙AM57x_am5728_am5708开发板的LED指示灯开发板底板具有3个用户可编程指示灯。

它们分别是LED1、LED2和LED3,原理图如下:
图 1
图 2
TI AM5728开发板开发资料
(1)提供核心板引脚定义、可编辑底板原理图、可编辑底板PCB、芯片Datasheet,缩短硬件设计周期;
(2)提供系统烧写镜像、内核驱动源码、文件系统源码,以及丰富的Demo程序;
(3)提供完整的平台开发包、入门教程,节省软件整理时间,上手容易;(4)提供详细的DSP+ARM多核通信教程,完美解决多核开发瓶颈;
(5)提供基于Qt的图形界面开发教程。

开发例程主要包括:
基于ARM端的Linux开发例程
基于TI-RTOS的ARM、DSP、PRU、IPU的开发例程
基于OpenCL、OpenMP、IPC的多核开发例程
基于OpenCV的图像开发例程
基于Qt的入门开发例程
基于TI-RTOS和Linux的EtherCAT开发例程
视频采集和编解码例程。

led行业基本面分析

led行业基本面分析

LED行业基本面分析目录,总结1.1行业演进LED 照明技术的发展路径可以从两个维度来拆解:1,色彩丰富,从60年代的红色,到70年代的黄、绿色,直至 90年代的蓝、白色;2,发光效率提升,从 60年代0.1 Im/w ,至y 80年代的10 Im/w ,直至当前的100 Im/w 。

LED 的应用范围随着其色彩丰富、发光效率提升,逐步从 60年代的指示灯市场,发展到 90年代的手机背光市场,直至当前的显示屏、中型尺寸LCD 背光等市场,未来还可能向大尺寸背光、通用照明、车头灯等市场渗透,市场容量可能从几百亿美元,跃升为上 千亿美元,前景看好。

1.2产业链分解LED 产业链大致分为制造和应用两个环节。

制造环节又可细分为:上游的单晶片衬底制作、 品封装。

应用领域又可大致分为三部分:照明应用、显示屏、背光源应用。

1.3竞争力分析1.3.1行业壁垒1.3.2议价能力MOCV 制造;中游的外延晶片生长、芯片、电极制作、切割和测试分选;下游的产 环节衬底制作 设备制造 封装组件133同业竞争全球LED 产业主要分布在日本、台湾、欧美、韩国和大陆等国家与地区。

日本约占38%勺份额,是全球LED 产业最大生产国,保持高亮度蓝光和白光 LED 的专利技术优势,在高亮度LED 市场居于领导 地位。

美国及欧洲地区掌握上游外延及芯片核心技术,产业垂直整合最为完整,以高端应用产品市场为主,在大尺寸 白光照明及汽车应用等高端市场占有优势。

台湾由封装起步,逐步向上游外延及芯片领域拓展。

台湾以低价策略逐渐威胁到日本的领导地位,基本占据了中低端 场,目前产值位列全球第二,市场占有率约24%中国,封装仍是LED 产业中最大的产业链环节,但芯片比重持续提高。

近几年芯片产能扩大较快,在全球 占有率逐年提升,从 2003年不足10%曾长到将近20% 韩国LED 芯片前几年才组建,在新兴市场发展迅速,目前掌握LED 的技术达到世界先进水平。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深度剖析创龙公司LED程序(这个程序是OMAP-L138平台上的LED点灯的双核通信程序)第一部分:ARM端程序1、MainWindow w;//创建MainWindow的对象,这将会调用其构造函数2、在MainWindow::MainWindow(QWidget*parent):QMainWindow(parent)构造函数中a)syslink init-->SysLink_setup();初始化SysLink,此函数必须在用户进程调用其他的SysLink API函数之前调用。

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Void SysLink_setup(Void);///////////////////////////////////////////////////////////////////////////////////////////////////////////////////b)m_slave_id=MultiProc_getId(“DSP”);//获取DSP处理器的ID////////////////////////////////////////////////////////////////////////////////////////////////////////////////////UInt16MultiProc_getId(String name);name:处理器名字返回值:返回处理器的ID/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////String MultiProc_getName(UInt16id);id:多核处理器ID返回值:处理器的名字,返回的处理器名字是不能被修改的/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////c)Ipc_control(m_slave_id,Ipc_CONTROLCMD_LOADCALLBACK,NULL);//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Int Ipc_control(UInt16procId,Int32cmdId,Ptr arg);procId:远程处理器IDcmdId:命令ID值arg:参数值依赖命令ID值返回值:成功返回0,失败返回负值/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Ipc_CONTROLCMD_LOADCALLBACK0xBABE0000加载回调控制命令,此命令只能通过Ipc_control()函数发送,在从设备装载程序之后,并且在从设备使用IPC组件之前调用。

Ipc_CONTROLCMD_STARTCALLBACK0xBABE0001开始回调控制命令,此命令只能通过Ipc_control()函数发送,同时需要在先发送Ipc_CONTROLCMD_LOADCALLBACK成功之后发送。

这个命令会与从处理器执行一个握手过程,通常在从处理器端调用Ipc_attach()后成功返回。

Ipc_CONTROLCMD_STOPCALLBACK0xBABE0002停止回调控制命令,此命令只能通过Ipc_control()函数发送,从从设备上分离。

这个命令会与从处理器产生一个握手过程,通常在从处理器端调用Ipc_detach()和Ipc_stop()后成功返回,这可能会使资源对于从处理器不可见。

Ipc_CONTROLCMD_SETTERMINATEPOLICY0xBABE0003终止指定的操作策略,传给Ipc_control()函数中的arg参数必须是一个指向Ipc_Terminate结构体的指针。

d)led init-->m_led=new LedClient(...);//创建一个LedClient对象,接着调用构造函数。

在LedClient::LedClient(...)构造函数中,对其中的成员变量进行赋值。

m_slave_id=m_slave_id(ID)m_line_id=SystemCfg_LineId(0)m_event_id=SystemCfg_EventId(7)e)m_led->connect();//调用LedClient类中的connect()成员函数///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f)Int Notify_sendEvent(UInt16procId,UInt16lineId,UInt32eventId,UInt32payload,BoolwaitClear);在一个中断中发送一个事件。

procId:远程处理器IDline_id:线IDenentId:事件IDpayload:命令(需要发送的command)waitClear:一般选择为TRUE,这样命令不会被覆盖返回值:#Notify_E_EVTNOTREGISTERED:事件没有注册回调函数#Notify_E_NOTINITIALIZED:从设备的驱动没有被初始化#Notify_E_EVTDISABLED:从设备事件没有使能#Notify_E_TIMEOUT:发生超时(当waitClear是TRUE)#Notify_S_SUCCESS:事件成功发送3、在MainWindow::~MainWindow()析构函数中a)m_led->disconnect();//调用LedClient类中的disconnect()成员函数b)Ipc_control();//发生Ipc_CONTROLCMD_STOPCALLBACK命令c)sysLink destroy-->SysLink_destroy();//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Void SysLink_destroy(Void);结束syslink//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////4、在MainWindow类中,定义了私有槽函数,当在屏幕上产生相应信号之后,相应的槽函数将会执行(QT程序的典型机制),这里只分析一类,其他的类似a)MainWindow::on_pushButton_6on_clicked();//D6按钮的槽函数在这个函数中,调用了LedClient类中的on_D6():m_led->on_D6();b)LedClient::on_D6();在这个函数中,调用了LedClient类中的send_command();c)LedClient::send_command(uint16_t cmd);cmd:需要发送的命令在这个函数中将会调用Notify_sendEvent()函数发送cmd命令d)其他的过程基本类似,这里不再赘述第二部分:DSP端程序1、首先在main()函数中,a)LOG_INIT();-->UARTStdioInit();-->UARTConsoleInit();-->PSCModuleControl(SOC_PSC_1_REGS,13,0,PSC_MDCTL_NEXT_ENABLE);///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////int PSCModuleControl(unsigned int baseAdd,unsigned int moduleId,unsigned int powerDomain,unsigned int flags) ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////#define SOC_PSC_1_REGS(0x01E27000)//REVID#define PSC_MDCTL_NEXT_ENABLE(0x00000003u)在该函数中,会执行以下程序:HWREG(baseAdd+PSC_MDCTL(moduleId))=(flags&PSC_MDCTL_NEXT);#define HWREG(x)(*((volatile unsigned int*)(x)))#define PSC_MDCTL(n)(0xA00+(n*4))#define PSC_MDCTL_NEXT(0x0000001Fu)0x01E27000+(0xA00+13*4)=0x01E27A34-->0x00000003UARTPinMuxSetup(2,FALSE);/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// void UARTPinMuxSetup(unsigned int instanceNum,unsigned int modemCtrlChoice) ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////清除上下文中的引脚,但保留PINMUX4(0x01c14130)寄存器其他的引脚值svPinMuxTxdRxd=(HWREG(SOC_SYSCFG_0_REGS+SYSCFG0_PINMUX(4))&\~(SYSCFG_PINMUX4_PINMUX4_23_20|\SYSCFG_PINMUX4_PINMUX4_19_16));#define SOC_SYSCFG_0_REGS(0x01C14000)#define SYSCFG0_PINMUX(n)(0x120+(n*4))#define SYSCFG_PINMUX4_PINMUX4_23_20(0x00F00000u)#define SYSCFG_PINMUX4_PINMUX4_19_16(0x000F0000u)svPinMuxTxdRxd=0xXX00XXXX;///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////设置UART2_TXD和UART2_RXD引脚,设置寄存器的值0x00220000HWREG(SOC_SYSCFG_0_REGS+SYSCFG0_PINMUX(4))=\(PINMUX4_UART2_TXD_ENABLE|\PINMUX4_UART2_RXD_ENABLE|\svPinMuxTxdRxd);#define PINMUX4_UART2_TXD_ENABLE(SYSCFG_PINMUX4_PINMUX4_23_20_UART2_TXD<<\SYSCFG_PINMUX4_PINMUX4_23_20_SHIFT)#define SYSCFG_PINMUX4_PINMUX4_23_20_UART2_TXD(0x00000002u)#define SYSCFG_PINMUX4_PINMUX4_23_20_SHIFT(0x00000014u)PINMUX4_UART2_TXD_ENABLE0x00200000#define PINMUX4_UART2_RXD_ENABLE(SYSCFG_PINMUX4_PINMUX4_19_16_UART2_RXD<<\SYSCFG_PINMUX4_PINMUX4_19_16_SHIFT)#define SYSCFG_PINMUX4_PINMUX4_19_16_UART2_RXD(0x00000002u)#define SYSCFG_PINMUX4_PINMUX4_19_16_SHIFT(0x00000010u) PINMUX4_UART2_RXD_ENABLE0x00020000///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// UARTStdioInitExpClk(BAUD_115200,UART_RX_TRIG_LEVEL_1);/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////#define BAUD_115200115200#define UART_RX_TRIG_LEVEL_1(UART_FCR_RXFIFTL_CHAR1\<<UART_FCR_RXFIFTL_SHIFT)#define UART_FCR_RXFIFTL_CHAR1(0x00000000u)#define UART_FCR_RXFIFTL_SHIFT(0x00000006u)UART_RX_TRIG_LEVEL_1=0x00000000使能发送和接收UARTEnable(UART_CONSOLE_BASE);============================================================= void UARTEnable(unsigned int baseAdd)=============================================================#define UART_CONSOLE_BASE(SOC_UART_2_REGS)#define SOC_UART_2_REGS(0x01D0D000)//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// HWREG(baseAdd+UART_PWREMU_MGMT)=(UART_FREE_MODE|\UART_RX_RST_ENABLE|UART_TX_RST_ENABLE); #define UART_PWREMU_MGMT(0x30)#define UART_FREE_MODE UART_PWREMU_MGMT_FREE#define UART_PWREMU_MGMT_FREE(0x00000001u)#define UART_RX_RST_ENABLE UART_PWREMU_MGMT_URRST#define UART_PWREMU_MGMT_URRST(0x00002000u)#define UART_TX_RST_ENABLE UART_PWREMU_MGMT_UTRST#define UART_PWREMU_MGMT_UTRST(0x00004000u)PWREMU_MGMT(0x01D0D030)=0x00006001////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// UARTConfigSetExpClk(UART_CONSOLE_BASE,SOC_UART_2_MODULE_FREQ, baudRate,UART_WORDL_8BITS,UART_OVER_SAMP_RATE_16);======================================================================= void UARTConfigSetExpClk(unsigned int baseAdd,unsigned int uartClk,unsigned int baudrate,unsigned int config,unsigned int overSampRate)=======================================================================输入模块的时钟为150M,波特率为115200,8位数据位,无奇偶校验位,1位停止位,过采样率为16*115200#define SOC_UART_2_MODULE_FREQ(SOC_SYSCLK_2_FREQ)#define SOC_SYSCLK_2_FREQ(SOC_SYSCLK_1_FREQ/2)#define SOC_SYSCLK_1_FREQ(300000000)#define UART_WORDL_8BITS UART_LCR_WLS_8BITS#define UART_LCR_WLS_8BITS(0x00000003u)#define UART_OVER_SAMP_RATE_16UART_MDR_OSM_SEL_SHIFT#define UART_MDR_OSM_SEL_SHIFT(0x00000000u)根据传入参数值,计算分频值和设置寄存器的值divisor=uartClk/(baudrate*16);//150000000/115200/16=81(分频值0x51)HWREG(baseAdd+UART_MDR)&=~UART_OVER_SAMP_RATE;#define UART_MDR(0x34)#define UART_OVER_SAMP_RATE UART_MDR_OSM_SEL#define UART_MDR_OSM_SEL(0x00000001u)MDR(0x01D0D034)=0x*******???0(*表示4位,?表示1位)//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////将分频值写入到分频锁存寄存器中HWREG(baseAdd+UART_DLL)=((divisor&0xFF));HWREG(baseAdd+UART_DLH)=((divisor&0xFF00)>>8);#define UART_DLL(0x20)#define UART_DLH(0x24)DLL(0x01D0D020)=0x51&0xff=0x00000051DLH(0x01D0D024)=(0x51&0xff00)>>8=0x00000000将相应的值写入到LCR,LCR控制数据位,校验位,停止位HWREG(baseAdd+UART_LCR)=(config&(UART_STOP_BIT|UART_WORDL|\ UART_PARITY|UART_SET_PARITY_TYPE|\UART_STICK_PARITY|UART_BREAK_CTRL|UART_DLAB));#define UART_LCR(0xC)#define UART_STOP_BIT UART_LCR_STB#define UART_LCR_STB(0x00000004u)#define UART_WORDL UART_LCR_WLS#define UART_LCR_WLS(0x00000003u)#define UART_PARITY UART_LCR_PEN#define UART_LCR_PEN(0x00000008u)#define UART_SET_PARITY_TYPE UART_LCR_EPS#define UART_LCR_EPS(0x00000010u)#define UART_STICK_PARITY UART_LCR_SP#define UART_LCR_SP(0x00000020u)#define UART_BREAK_CTRL UART_LCR_BC#define UART_LCR_BC(0x00000040u)#define UART_DLAB UART_LCR_DLAB#define UART_LCR_DLAB(0x00000080u)LCR(0x01D0D00C)=(0x00000003&(0x00000004|0x00000003|0x00000008|0x00000010|0x00000020|0x00000040|0x00000080))=0x00000003////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////使能发送和接收FIFO,清除和复位FIFO计数器UARTFIFOEnable(UART_CONSOLE_BASE);======================================================================== void UARTFIFOEnable(unsigned int baseAdd)======================================================================== HWREG(baseAdd+UART_FCR)=(UART_FIFO_MODE|UART_RX_CLEAR|UART_TX_CLEAR);#define UART_FCR(0x8)#define UART_FIFO_MODE UART_FCR_FIFOEN#define UART_FCR_FIFOEN(0x00000001u)#define UART_RX_CLEAR UART_FCR_RXCLR#define UART_FCR_RXCLR(0x00000002u)#define UART_TX_CLEAR UART_FCR_TXCLR#define UART_FCR_TXCLR(0x00000004u)FCR(0x01D0D008)=0x00000007////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////设置接收FIFO触发级别UARTFIFOLevelSet(UART_CONSOLE_BASE,rxTrigLevel);======================================================================= void UARTFIFOLevelSet(unsigned int baseAdd,unsigned int rxLevel)======================================================================= HWREG(baseAdd+UART_FCR)=((rxLevel&(UART_RX_TRIG_LEVEL))|UART_FIFO_MODE);根据传入的参数值,rxLevel=UART_RX_TRIG_LEVEL_1(0x00000000)#define UART_RX_TRIG_LEVEL UART_FCR_RXFIFTL#define UART_FCR_RXFIFTL(0x000000C0u)#define UART_FIFO_MODE UART_FCR_FIFOEN#define UART_FCR_FIFOEN(0x00000001u)FCR(0x01D0D008)=0x00000001//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////b)Error_Block eb;//定义一个错误标志-->typedef UInt32Error_Block;c)Task_Params taskParams;#define Task_Params ti_sysbios_knl_Task_Paramsstruct ti_sysbios_knl_Task_Params{size_t__size;const void*__self;void*__fxns;xdc_runtime_IInstance_Params*instance;xdc_UArg arg0;xdc_UArg arg1;xdc_Int priority;xdc_Ptr stack;xdc_SizeT stackSize;xdc_runtime_IHeap_Handle stackHeap;xdc_Ptr env;xdc_Bool vitalTaskFlag;xdc_UInt affinity;xdc_runtime_IInstance_Params__iprms;};//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////在使用错误块的之前必须初始化Error_init(&eb);========================================================================#define Error_init(eb)*eb=0========================================================================在main()中创建主线程,初始化线程,设置线程的参数Task_Params_init(&taskParams);taskParams.instance->name="smain";//设置线程实例名字taskParams.arg0=(UArg)argc;//线程使用的参数argctaskParams.arg1=(UArg)argv;//线程使用的参数argvtaskParams.stackSize=0x1000;//线程使用的堆栈大小Task_create(smain,&taskParams,&eb);//启动线程函数smain()///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// static inline void ti_sysbios_knl_Task_Params_init(ti_sysbios_knl_Task_Params*prms)如果prms参数不为NULL,则会调用ti_sysbios_knl_Task_Params__init__S(prms,0,sizeof(ti_sysbios_knl_Task_Params),sizeof(xdc_runtime_IInstance_Params));////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// static inline ti_sysbios_knl_Task_Handle ti_sysbios_knl_Task_create(ti_sysbios_knl_Task_FuncPtr fxn,const ti_sysbios_knl_Task_Params*__prms,xdc_runtime_Error_Block*__eb)//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////d)Error_check(&eb);//检测错误块=====================================================================Bool Error_check(Error_Block*eb)=====================================================================e)如果创建任务失败,将会调用以下函数终止程序System_abort("main:failed to create application startup thread");=====================================================================Void System_abort(CString str)=====================================================================f)启动线程调度函数,该函数不会返回,会进行进程调度BIOS_start();===================================================================== Void BIOS_start(void)=====================================================================在函数里,继续调用BIOS_module->startFunc();2、在smain()函数中a)打开Diags_INFO追踪Diags_setMask("LedServer+F");===================================================================== Void Diags_setMask(CString src)=====================================================================b)status=Ipc_start();///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// UInt16baseId=MultiProc_getBaseIdOfCluster();//获取多核系统的基ID返回MultiProc_module->baseIdOfCluster中的值。

相关文档
最新文档