Requset a valid result during INIT_ROM process through serail port 0
"? ?" <[email protected]>
| Newsgroups | gmane.comp.hardware.microcontrollers.tini |
|---|---|
| Message-ID | <[email protected]> |
I connected tini with PC via a LAN cable, while I could not grap a packet
by using ethernet tools. Could anyone offer me a valid result during the
init process, I doubt that I had not passed the rom and network init. I
use a realtek PHY chip and using the phy address #1, I can read and write
the chip's register with "eth_readmii" and "eth_writemii" when I set phy =
#1. However, I am confused about the INIT process. I do not know how TINI
work when it INIT.
Thanks a lot!!
My Result as below:
DS80C400 Template Project
About to perform an init of the rom...
DS80C400 Initialization Library Version 13
Dallas Semiconductor DS80C400 Socket Demonstration
Set network parameters result: 0
Network params result: 0
IP : 192 168 110 244
Subnet: 255 255 255 0
Prefix: 16
Gate : 192 168 110 1
Create a network socket handle: 0
Connect a TCP socket to host result: 70
Create a network socket handle: 1
Connect a TCP socket to host result: 70
Close socket result: 0
Close socket result: 0
The program will now freeze.
My code as below:
printf("DS80C400 Template Project\r\n");
/*
* Perform an init of the rom
*/
printf("About to perform an init of the rom...\r\n");
init_clearXSEG();
init_copyivt();
init_redirect();
init_clearSystemRAM();
init_mm(RAM_START, RAM_END);
init_km();
init_network();
init_eth();
init_sockets();
init_tick();
task_genesis(ROM_SAVESIZE);
init_enableinterrupts();
task_settickreload(RELOAD_18_432); // Necessary for accurate timing.
clear_param_buffers();
// let's print out a little version information...
printf("DS80C400 Initialization Library Version %d\r\n", init_version());
/*
* Allocate Static IP address, Get Network config params
*/
printf("\r\nDallas Semiconductor DS80C400 Socket
Demonstration\r\n\r\n");
do_static();
network_config();
/*
* Try build a socket and connect to server, send sample data
*/
for (i=0;i<100;i++)
{
data1[i] = i;
// data2[i] = i;
}
for (i=0;i<18;i++)
address.sin_addr[i] = 0;
address.sin_addr[12] = HOST_IP_MSB;
address.sin_addr[13] = HOST_IP_2;
address.sin_addr[14] = HOST_IP_3;
address.sin_addr[15] = HOST_IP_LSB;
address.sin_port = 33333;
socket_handle1 = socket(0, SOCKET_TYPE_STREAM, 0);
printf("Create a network socket handle: %u\r\n", socket_handle1) ;
result = connect(socket_handle1, &address, sizeof(address));
printf("Connect a TCP socket to host result: %u\r\n", result);
socket_handle2 = socket(0, SOCKET_TYPE_STREAM, 0);
printf("Create a network socket handle: %u\r\n", socket_handle2) ;
result = connect(socket_handle2, &address, sizeof(address));
printf("Connect a TCP socket to host result: %u\r\n", result);
// send(socket_handle1, data1, 55, 0);
result = closesocket(socket_handle1);
printf("Close socket result: %u\r\n", result);
result = closesocket(socket_handle2);
printf("Close socket result: %u\r\n", result);
printf("\r\nThe program will now freeze.\r\n");
while(1)
{
}
_________________________________________________________________
与联机的朋友进行交流,请使用 MSN Messenger: http://messenger.msn.com/cn
_______________________________________________
TINI mailing list
TINI-6tN4nzCoH/[email protected]
To UNSUBSCRIBE, edit your profile, or see list archives:
http://lists.dalsemi.com/mailman/listinfo/tini