本文是针对《CCS+C6678LE开发记录06:以太网接口测试》的后续研究。
在已经通过测试之后我想研究一下测试用例的实现原理,至少应该明白大致原理。
为了方便贴代码,我将原始实例的代码做了精简;
为了探索其原理,我修改/添加了少量代码。
主要代码如下
#include <stdio.h>
#include <ti/ndk/inc/netmain.h>
#include <ti/sysbios/BIOS.h>
#include <ti/sysbios/knl/Task.h>
#include <xdc/runtime/Error.h>
#include <xdc/runtime/System.h>
#include "ti/platform/platform.h"
#include "ti/platform/resource_mgr.h"
static int counter=0;
static HANDLE hHello=0;
char *HostName = "TMS320C6678";
char *LocalIPAddr = "169.254.11.119"; // My PC Local IP
char *LocalIPMask = "255.255.255.0"; // Not used when using DHCP
char *GatewayIP = "192.168.2.101"; // Not used when using DHCP
char *DomainName = "demo.net"; // Not used when using DHCP
char *DNSServer = "0.0.0.0"; // Used when set to anything but zero
Uint8 clientMACAddress[6] = {0x01, 0x02, 0x03, 0x04, 0x0C, 0xEF}; /* MAC Addr */
static void NetworkOpen();
static void NetworkClose();
static void NetworkIPAddr(IPN IPAddr, uint IfIdx, uint fAdd);
extern int dtask_udp_hello();
void EVM_init()
{
printf("\nEVM_Init()\n");
platform_init_flags sFlags;
platform_init_config sConfig;
memset( (void *) &sFlags, 0, sizeof(platform_init_fla