1、创龙TMS320C665x基于裸机开发的Demo例程演示1 创龙TMS320C665x基于裸机开发的Demo例程演示所有工程均位于光盘DemoNonOSApplication文件夹内。例程通过配置寄存器驱动GPIO。本章节讲述在不使用操作系统的情况下,基于创龙TMS320C665x开发板的例程演示。5.1 GPIO_LEDGPIO输出(LED灯)此程序的作用是实现GPIO输出功能。按照工程导入步骤加载GPIO_LED.out文件,然后点击程序运行按钮。演示现象核心板用户指示灯循环点亮。5.2 GPIO_LED_C+GPIO输出(LED灯)此程序是用C+语言编写,实现GPIO输出功能。按照工程导
2、入步骤加载NonOS_GPIO_LED_C+_C665x.out文件,然后点击程序运行按钮。演示现象底板用户指示灯循环点亮。5.3 GPIO_KEYGPIO输入(按键中断)此程序的作用是实现GPIO输入功能。按照工程导入步骤加载GPIO_KEY.out文件,然后点击程序运行按钮。演示现象 TL665x-EasyEVM:当按下USER0按键1次后,将标志Flag置1,底板LED D3、D5、D7开始循环点亮;当再次按下USER0按键1次后,将标志Flag置0,底板LED停止循环点亮。 TL665xF-EasyEVM:当按下DSP USER1按键1次后,将标志Flag置1,底板DSP LED1LE
3、D3开始循环点亮;当再次按下DSP USER1按键1次后,将标志Flag置0,底板DSP LED1LED3停止循环点亮。5.4 UART0_POLLUART0串口查询收发此程序的作用是实现UART0查询方式数据收发功能。将开发板的UART0和PC机连接,打开串口调试终端,按照工程导入步骤加载UART0_POLL.out文件,然后点击程序运行按钮。演示现象(1) 串口调试终端会打印提示信息,如下图所示:图 418(2) 使用键盘输入任意字符,CPU会将接收到的字符回显到串口调试终端,如下图所示:图 4195.5 NMINMI不可屏蔽中断此程序的作用是实现不可屏蔽中断功能。NMI(Non Mask
4、able Interrupt)不可屏蔽中断(即CPU不能屏蔽),无论状态寄存器中IF位的状态如何,CPU收到有效的NMI必须进行响应。使用跳线帽连接J9接口的:1-2、3-4、7-8(注意B4板的原理图和PCB的J9引脚编号不对应),原理图如下所示:图 420按照工程导入步骤加载NMI.out文件,然后点击程序运行按钮。演示现象按下NMI按键,LED灯D3、D5、D7点亮和熄灭。5.6 Timer定时器此程序的作用是使用NonOS通用组件创建定时器线程,此例程使用的是定时器2。C665x有8个定时器/计数器,均可配置为64位计数器、两个独立32位计数器及自动重装32位计数器,可以产生周期中断D
5、MA事件及外部事件。定时器/计数器还可以用于捕获外部输入信号边缘并计数。此外,定时器2还可以用作64位看门狗计数器。按照工程导入步骤加载NonOS_TIMER.out文件,然后点击程序运行按钮。演示现象核心板用户指示灯间隔1秒循环点亮。5.7 WatchDog看门狗此程序的作用是实现看门狗功能,使用定时器0。用于在程序运行过程中出现错误或陷入死循环等异常情况下复位程序。此程序设定看门狗超时时间为5s。程序运行后在5s内输入任意字符,程序会持续运行,否则系统将复位。按照工程导入步骤加载NonOS_WatchDog.out文件,然后点击程序运行按钮。演示现象串口调试终端会打印提示信息,若在5s内无
6、任何信息输入将复位系统。由于在仿真加载模式下,复位后程序不会自动运行,故只会打印一次信息,见下图所示。图 421定时器1时钟来源于PLL旁路时钟,即晶体振荡器时钟166.66MHz,所以看门狗时间间隔:T=计数周期*(1/166.66MHz)=0x31ABA852/166660000s=5s0x31ABA852是程序中设定的计数周期。5.8 SPI_FLASHSPIFLASH读写此程序的作用是实现对SPI FLASH设备的数据读写功能。按照工程导入步骤加载SPI_FLASH.out文件,然后点击程序运行按钮。演示现象串口调试终端会打印如下信息:此程序先提示是否擦除SPIFLASH,输入y擦除S
7、PIFLASH上的数据,然后对比写入和读出的数据,根据结果判断SPIFLASH设备读写是否成功。图 4225.9 IIC_EEPROMIIC EEPROM读写此程序的作用是实现IIC EEPROM设备的数据读写功能,地址是0x50(高7位)。按照工程导入步骤加载NonOS_I2C_EEPROM.out文件,然后点击程序运行按钮。演示现象(1) 串口调试终端会打印如下信息:图 423此程序先写入并读出一个字节数据,然后写入并读出一页数据,接着对比写入和读出的数据,根据结果判断IICEEPROM设备读写是否成功。5.10 EDMA3EDMA3一维数据传输此程序的作用是实现了第三代增强型直接内存存取
8、EDMA3一维数据传输功能,此处使用的例子是数组的拷贝。按照工程导入步骤加载NonOS_EDMA3.out文件,然后点击程序运行按钮。(1) 串口调试终端会打印信息,如下图所示:图 4245.11 UART1_INTUART1串口中断收发表 18开发板型号UART1TL665x-EasyEVMRS232(CON1)TL665xF-EasyEVMRS485(CON10)此程序的作用是实现了UART1中断方式数据收发功能。将开发板的UART1和PC机连接,打开串口调试软件,按照工程导入步骤加载NonOS_UART1_INT.out文件,然后点击程序运行按钮。演示现象在串口调试终端会打印,使用键盘输
9、入任意字符,CPU会将接收到的字符回显到串口调试终端,如下图所示:图 4255.12 I2C_TempSensorIIC总线温度传感器测试本测试程序实现的功能是通过IIC接口获取核心板温度传感器温度值。按照工程导入步骤加载NonOS_I2C_TempSensor.out文件,然后点击程序运行按钮。演示现象在CCS Console窗口会打印相关信息,如下图所示:图 426串口也会打印温度信息,如下图所示:图 4275.13 I2C_TempSensor_POLLIIC总线温度传感器测试本测试程序实现的功能是I2C配置及获取温度传感器温度值,这个使用的是I2C查询模式。按照工程导入步骤加载NonO
10、S_I2C_TempSensor_POLL.out文件,然后点击程序运行按钮。演示现象在CCS Console窗口会打印相关信息,如下图所示:图 428串口也会打印温度信息,如下图所示:图 4295.14 NANDFLASHNANDFLASH读写测试此程序实现了NANDFLASH读写测试,使用EMIF16总线CE0片选。打开光盘DemoHostApp路径下的Serial Port Utility,根据电脑配置好调试串口。点击调试串口的连接按钮。按照工程导入步骤加载NonOS_NandFlash.out文件,然后点击程序运行按钮。图 430演示现象(1) 串口调试终端打印输入读写起始块数值的提示
11、信息,输入范围在04095,这里以输入1024为例,输入1024后按回车键(1024后面只能有一个回车号),然后点击按钮,如下图所示:图 431(2) 串口调试终端打印输入读写起始页数值的提示信息,范围在063之间,这里以16页开始为例,输入16按Enter键(注:16后面只能有一个回车号),点击,如下图所示:图 432(3) 串口调试终端打印输入读写页大小的提示信息,这里以4页大小为例,输入4后然后按回车键(后面只能有一个回车号),串口调试终端将打印成功读写的信息:图 4335.15 GPIO_LED_AssemblyGPIO输出(标准汇编)此程序是用标准汇编编写,实现GPIO输出功能。按照
12、工程导入步骤加载NonOS_GPIO_LED_Assembly_C665x.out文件,然后点击程序运行按钮。演示现象核心板用户指示灯循环点亮。5.16 GPIO_LED_LinearAssemblyGPIO输出(线性汇编)此程序是用线性汇编编写,实现GPIO输出功能。按照工程导入步骤加载NonOS_GPIO_LED_LinearAssembly_C665x.out文件,然后点击程序运行按钮。演示现象核心板用户指示灯循环点亮。5.17 NonOS_MPAX访问相同的逻辑地址共享内存拥有多个内存保护和地址扩展(MPAX)单元。C66x DSP可透过XMC本地MPAX访问MSMC信道,而数据IO则透过MSMCMPAX逻辑访问MSMC,并对内部共享内存和外部内存制约。此例程的作用是每个核心访问相同的逻辑地址。比如0xF0000000实际上对应不同的DDR3物理地址。按照工程导入步骤加载NonOS_MPAX.out文件,运行程序,Console窗口输出如下:。图 434
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1