1、TMDSCNCD280025C + TMDSHSECDOCK 套件简介
1.1 TMDSCNCD280025C 是一款适用于 TI C2000™ MCU 系列 F28002x 器件的低成本评估和开发板。它附带一个 HSEC180(一种 180 引脚高速边缘连接器,用作 controlCARD),非常适合用于初始评估和原型设计。进行 TMDSCNCD280025C 评估时,需要一个 180 引脚集线站 TMDSHSECDOCK,这个dock把芯片的引脚全数引出,并有一个电压供电的接口。如果没有dock,就只能进行开发的演示和代码的测试,不能进入项目的开发过程。
主页超链接如下,
e2echina.ti.com/.../195513在
1.2 TMDSHSECDOCK引脚集线站,提供了以下三个功能,MCU关键信号的引接出线,自定义洞洞板区域可以直接焊接分立元件,USB或者外接5V供电接口。
1.3 使用开发板首先要仔细阅读下面的手册,
最重要的是正确设定如下跳线
对照位置如下,
具体芯片参数参照
作为DSP概念的鼻祖,运行在100MHz,具有128KB的Flashhe 24kB的RAM,提供浮点加速器FPU和数学计算加速器TMU,这款FM2800025C是入门级芯片,但是同样具备强大的功能。这款芯片一直是微波雷达的控制芯片的首选。其他的功能同样强大,12位3.45MSPS的ADC采样功能尤其出色,能够实现高性能的信号采集,搞个入门级的2M多通道示波器就用一块板子就可以搞定了。
其他还有适合于电机控制和电源控制的增强型ePWM功能,更是本芯片目前主打的特色。
2、开发环境和开发工具
2.1 采用TI芯片的众多好处之一就是CCS,一个强大的免费开发工具。因此,对应TI的芯片来说,第三方IDE如IAR等,都不是首选。同时还提供了CCS cloud的选项,此前用过,也开发了一些项目。不过,这次还想用的时候,发现google改了规矩了,所以的crx都要他的market上才能下载使用,要不就认为是不安全的插件。这样,TI agent就无法连接使用。
这样,就gooogle又帮助我们提供了一个卸载停用chrome的工具。总是搜集个人信息,还要云端备份我的各种密码就不说什么了,啊这。。。
果断下载安装CCS,访问https://www.ti.com/tool/CCSTUDIO,
下载安装无门槛,
启动程序,
显示创建的项目
2.2 配套提供了C2000ware,访问ti.com/tool/c2000ware,就可以直接下载,安装再CCS不同的目录,
3、专用库和例程
对应于开发的过程,需要导入的库都再C2000ware中,同时提供了PWM的传输控制例程,下面是main主循环的代码
// Included Files // #include "driverlib.h" #include "device.h" // // Example configuration parameters // #define BIT_RESOLUTION 11 #define PWM_FREQ 200U // // Globals // float32_t offset = 0.00016f; float32_t duty_offset = 0.0f; volatile float32_t duty_output = 0.0f, duty_output_minus_offset = 0.0f, dig_value_output_norm = 0.0f; volatile uint16_t dig_value_output = 0, dig_output_buff[500] = {0}, count = 0; volatile uint32_t cap1Count = 0, cap2Count = 0, cap3Count = 0; volatile uint32_t absCountOn1 = 0, absCountPeriod1 = 0, ecapIntCalCount = 0; // // Function Prototypes // void initGPIO(void); void configECAP(void); __interrupt void ecap6ISR(void); // // Main // void main(void) { // // Initialize device clock and peripherals // Device_init(); // // Disable pin locks and enable internal pull-ups. // Device_initGPIO(); // // Initialize PIE and clear PIE registers. // Interrupt_initModule(); // // Initialize the PIE vector table with pointers to the shell Interrupt // Service Routines (ISR). // Interrupt_initVectorTable(); // // Initialize GPIOs for ECAP // initGPIO(); // // Interrupts that are used in this example are re-mapped to ISR functions // found within this file. // Interrupt_register(INT_ECAP6, &ecap6ISR); // // Configure eCAP // configECAP(); // // Configure HRCAP // HRCAP_enableHighResolutionClock(HRCAP6_BASE); // // Add small delay for HRCLK to start // __asm(" RPT #25 || NOP"); // // Enable high resolution capture // HRCAP_enableHighResolution(HRCAP6_BASE); // // Calculating the offset in duty based on the offset value // at 100 Khz // duty_offset = offset * ((float)PWM_FREQ / 100.0f); // // Enable interrupts ECAP interrupt // Interrupt_enable(INT_ECAP6); // // Enable Global Interrupt (INTM) and realtime interrupt (DBGM) // EINT; ERTM; while(1) { } // end infinite for loop }
可以看到如何引入库,使用GPIO初始化和对应控制的,其他的项目都可以按照这个来执行和开发,上手很快,逻辑也很清楚。
4、上电测试和连接
4.1 项目的开发从创建新项目开始,
再测试以前,先拿MSP430G2553搞一个电灯,
#include <msp430.h> /** * blink.c */ void main(void) { WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer P1DIR |= 0x01; // configure P1.0 as output volatile unsigned int i; // volatile to prevent optimization while(1) { P1OUT ^= 0x01; // toggle P1.0 for(i=50000; i>0; i--); // delay } }
下载和运行正确。
4.2 使用F2800025C,创建项目
这个过程很顺利,
按照手册的指引,需要用XD100v2的USB UART emulator模拟器下载。
代码创建以及编译都可以通过,多次下载都没有成功。
于是测试以下,再创建页面有一个verify.,不过,结果是这样滴,
经过再次确认跳线和引脚位置
很清楚地可以看到跳线是出厂设置,同时可以清晰地看到PCB清洁整齐,反面就更干净简单了,不上图了。
所以,所以,串口芯片正确识别但是找不到hardware,就是连不上芯片。
刚上手,就初步确认这个板子挂了。
5、Summary
从芯片的参数了解和板子的开发来看,这个板子是超级强大滴,开发也是非常流畅的。资源充分。只是做了一个最快评测。希望能尽快beduge一下,解决这个问题。