Kít của tớ cũng bắt chước của Olimex thui (xem attachment). Còn nếu dùng PIC giao tiếp với ENC mà không cần con 74HCT thì dùng PIC 18LF nó cũng chạy 3.3V giống ENC. Xem chi tiết tại đây.
Thông báo
Collapse
No announcement yet.
PIC và Internet application
Collapse
X
-
@hackervnbk: cái RJ45 đó có biến áp ở trong, những loại tôi có đều có chiều dài của cái Jack là 2.5cm, có 2 LED, nếu cái RJ của bạn có chiều dài như vậy thì chắc chắn nó có biến áp.
Còn chân SDO của ENC28J60 dùng điện áp 3v3 nối vào SDI của PIC là chân ST, về nguyên tắc thì mức 1 của ST là 0.8Vdd, nhưng trong thực tế thử với cả PIC và dsPIC đều nhận tốt mức 1 không cần qua đệm, tớ đã thử với SPI tốc độ 5Mhz, nhưng vẫn nên thêm đệm cho chắc chắn.
Cái SCH anh Ngọc đính kèm nó dùng PIC 5V và con HCT125, PIC8LF có thể chạy ở điện áp 3v3 nhưng với điện áp đó chỉ có thể chạy được ở tốc độ 20Mhz, muốn tìm PIC 18 chạy 3v3 thì đó là những con PIC18FJ.
Comment
-
Thằng e của bác LinhNc đây,hic thời gian vừa rồi bận quá cũng chưa làm được nhiều với đề tài này,đã thế hôm nọ mua cái RJ45 của bác Newday bị ăn 1 vố to quá.Gì mà cái RJ45 "xịn" (tức là phải tích hợp biến áp bên trong) cảu bác Newday lại là cái loại có tích hợp thêm có mỗi 2 cái Led thôi ah (tìm mãi chẳng thấy biến áp đâu )
Thế có ai muốn dùng RJ45 xịn không, giá cũng hơi xịn nhưng RJ45 thì chắc chắn vì phamthaihoa đã test rồi.Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.
Biến tần
Máy giặt
Lò vi sóng
Bếp từ.
Tủ lạnh.
Điều hòa
Comment
-
Nguyên văn bởi phamthaihoa Xem bài viết@hackervnbk: cái RJ45 đó có biến áp ở trong, những loại tôi có đều có chiều dài của cái Jack là 2.5cm, có 2 LED, nếu cái RJ của bạn có chiều dài như vậy thì chắc chắn nó có biến áp.
Còn chân SDO của ENC28J60 dùng điện áp 3v3 nối vào SDI của PIC là chân ST, về nguyên tắc thì mức 1 của ST là 0.8Vdd, nhưng trong thực tế thử với cả PIC và dsPIC đều nhận tốt mức 1 không cần qua đệm, tớ đã thử với SPI tốc độ 5Mhz, nhưng vẫn nên thêm đệm cho chắc chắn.
Cái SCH anh Ngọc đính kèm nó dùng PIC 5V và con HCT125, PIC8LF có thể chạy ở điện áp 3v3 nhưng với điện áp đó chỉ có thể chạy được ở tốc độ 20Mhz, muốn tìm PIC 18 chạy 3v3 thì đó là những con PIC18FJ.
Bác có biết cách nào nhận biết RJ45 có sẵn biến áp ko , đo thử các pin của nó ? Bác đo thử rồi cho mình biết đc ko , mới tháo đc 1 RJ cái từ cái router wifi bị hỏng .
@ Minh Ha : cho em cái giá xịn của RJ45 đi anh .
Comment
-
Đã có bác nào làm xong board chưa? Thử nghiệm đầu tiên của em cho thấy mặc dù PIC chạy ở 40Mhz (XTAL 10Mhz, OSC=HSPLL) nếu thêm các lệnh đọc I/O (đọc nhiệt độ/độ ẩm từ sensor) vào chừng vài lần thì PIC và webserver ngủm củ tỏi. Có cách nào viết cho thao tác I/O tách riêng với phần giao tiếp TCP/IP? Dưới đây là vòng lặp chính của chương trình
Code:// Once all items are initialized, go into infinite loop and let // stack items execute their tasks. // If application needs to perform its own task, it should be // done at the end of while loop. // Note that this is a "co-operative mult-tasking" mechanism // where every task performs its tasks (whether all in one shot // or part of it) and returns so that other tasks can do their // job. // If a task needs very long time to do its job, it must be broken // down into smaller pieces so that other tasks can have CPU time. while(1) { // This task performs normal stack task including checking // for incoming packet, type of packet and calling // appropriate stack entity to process it. StackTask(); // This is a TCP application. It listens to TCP port 80 // with one or more sockets and responds to remote requests. HTTPServer(); // Add your application specific tasks here. ProcessIO(); // Giao tiếp với sensor trong hàm này. Đọc nhiệt độ/độ ẩm vào các biến // toàn cục để có thể view được từ web }“If you create your own electricity, heating and water systems, you create your own politics. Maybe that’s what they’re afraid of.” –– Michael Reynolds
Comment
-
Khởi động computer từ Internet (Wake Up Over Internet)
Chúng ta cùng cài đặt chức năng khởi động máy tính từ Internet (tạm đặt là Wake Up Over Internet).Máy tính đã có sẵn chức năng Wake on LAN tức là khởi động máy tính từ mạng LAN. Để sử dụng chức năng này ta vào CMOS setup và enable chức năng này lên. Và tất nhiên là máy tính đã cắm nguồn sẵn sàng và được nối network cable vào hub/switch của LAN hoặc ADSL modem.
Để kích hoạt máy tính khởi động thì từ mạng LAN, một máy tính bất kỳ (hoặc kit ethernet của chúng ta) phải gởi một UDP package 1024 bytes đến địa chỉ broadcast là 255.255.255.255 (0xFF.0xFF.0xFF.0xFF) với nội dung như sau:
- 6 bytes đầu tiên là 0xFF (0xFF,0xFF,0xFF,0xFF,0xFF,0xFF)
- Địa chỉ MAC của máy tính cần khởi động lặp 16 lần.
Để có được địa chỉ MAC ta gõ lệnh ipconfig /all trong console của Windows. Dòng Physical Address chính là địa chỉ MAC (00-11-0A-40-F7-92)
Các bạn có thể tải chương trình demo Wake On Lan viết bằng C# và bằng VB để xem cách hoạt động của nó.
Bây giờ quay lại bài toán của chúng ta. Ethernet kit sẽ hoạt động như một webserver, khi bạn từ ngoài Internet truy cập vào trang web sẽ có một button khi bấm vào PIC sẽ gởi một broadcast UDP package chứa địa chỉ MAC của máy tính cần khởi động.
Hàm WakeUpOnLAN được viết cho PIC bằng C18 dựa theo ví dụ UDPPerformanceTest trong TCP/IP stack v4.02 như sau
Bạn có thể gọi hàm WakeUpOnLAN với tham số là địa chỉ MAC máy tính cần khởi động như sau:Code:#define WAKE_UP_PORT 0x2fff // port=12287 let's use this one rom BYTE buffer[1024]; //buffer to be send; 6 bytes 0xFF; 16 times of MAC 6 bytes (6+16*6), remaining bytes is zero int parseHex(char* hex) { int res; int val; char* ptr; res = 0; ptr = hex; while((*ptr)=='0') ptr++; while(*ptr) { if(!((*ptr<'0')||(*ptr>'9'))) { val = *ptr - '0'; } else if(!((*ptr<'a')||(*ptr>'f'))) { val = *ptr - 'a' + 10; } else if(!((*ptr<'A')||(*ptr>'F'))) { val = *ptr - 'A' + 10; } else { return -1; } res = res*16+val; ptr++; } return res; } // My MAC address is 00-11-0A-40-F7-92 void WakeUpOnLAN(const char* szMyMAC) { UDP_SOCKET MySocket; NODE_INFO Remote; int i, counter; const unsigned char delimiters[]=":- "; unsigned char * token; BYTE MAC[6]; // Set the socket's destination to be a broadcast over our IP // subnet // Set the MAC destination to be a broadcast memset(&Remote, 0xFF, sizeof(Remote)); // Open a UDP socket for outbound transmission MySocket = UDPOpen(0, &Remote, WAKE_UP_PORT); // Abort operation if no UDP sockets are available // If this ever happens, incrementing MAX_UDP_SOCKETS in // StackTsk.h may help (at the expense of more global memory // resources). if(MySocket == INVALID_UDP_SOCKET) return; // Make certain the socket can be written to if(!UDPIsPutReady(MySocket)) { UDPClose(MySocket); return; } memsetpgm(buffer,0,1024); //first 6 bytes should be 0xFF counter=0; for(i=0;i<6;i++) { buffer[i]=0xff; counter++; } i = 0; token = strtok(szMyMAC, delimiters); while (token!= NULL) { MAC[i]=parseHex(token); i++; token = strtok (NULL, delimiters); if(i>5) break; } //now repeate MAC 16 times for(i=0;i<16;i++) { memcpypgm((rom BYTE*)&buffer[counter],(rom BYTE*)MAC,6); counter+=6; } UDPPutROMArray(buffer, 1024); // Send the packet UDPFlush(); // Close the socket so it can be used by other modules UDPClose(MySocket); }
WakeUpOnLAN("00-11-0A-40-F7-92") hoặc
WakeUpOnLAN("00:11:0A:40:F7:92") hoặc
WakeUpOnLAN("00 11 0A 40 F7 92")
Để kiểm tra xem PIC có gởi UDP package lên LAN không ta dùng một công cụ để monitor package trên LAN gọi là Ethereal (Cái này mà cài ở máy tính dịch vụ thì có thể ngửi (sniff) password, email, chat của mấy máy tính trong dịch vụ).
Note: Mặc dù code trên khi chạy thì PIC có gởi UDP package vào LAN nhưng khi mình dùng Ethereal để monitor thì thấy nội dung không đúng yêu cầu là:
- 6 bytes đầu là 0xFF
- Địa chỉ MAC 6 bytes được lặp 16 lần (16*6=96 bytes)
- 922 bytes còn lại (1024 - 6 - 96) là 0x00
Các bác kiểm tra dùm mình xem sai ở chỗ nào nhé.Last edited by bxngoc; 09-08-2007, 16:59.“If you create your own electricity, heating and water systems, you create your own politics. Maybe that’s what they’re afraid of.” –– Michael Reynolds
Comment
-
Mình cũng mới làm 1 cái kít pic ve internet dự vào cai sch trên. Có dung con 74hct125 dien ap cap cho pic la 5v cap cho enc la 3v3(da kiem tra) nhưng ko hiểu sao con enc cua minh sờ vao thấy hơi nóng ko biết con cua bạn có bị nóng như vậy ko?Nguyên văn bởi bxngoc Xem bài viếtKít của tớ cũng bắt chước của Olimex thui (xem attachment). Còn nếu dùng PIC giao tiếp với ENC mà không cần con 74HCT thì dùng PIC 18LF nó cũng chạy 3.3V giống ENC. Xem chi tiết tại đây.
Comment
-
Quá nóng đi nữa. Rờ vào con 7805 phỏng tay dù có tản nhiệt. Con ENC thì ấm ấm. Mạch này tiêu thụ dòng khác cao. Phải dùng adapter 9V/1A trở lên mới đủ.“If you create your own electricity, heating and water systems, you create your own politics. Maybe that’s what they’re afraid of.” –– Michael Reynolds
Comment
-
Hien tai mihn cung co vai cai RJ45 hang xin luon. Nhìn vao khe ho ban cung thay cuon day dong ben trong roi. Neu ko thi dung VOM kiem tra neu co bien ap thi phan ket noi vao rj45 va phan han len board mach ko bi noi tat.Nguyên văn bởi batbatdieu Xem bài viếtBác có biết cách nào nhận biết RJ45 có sẵn biến áp ko , đo thử các pin của nó ? Bác đo thử rồi cho mình biết đc ko , mới tháo đc 1 RJ cái từ cái router wifi bị hỏng .
@ Minh Ha : cho em cái giá xịn của RJ45 đi anh .
Comment
-
bác để em vài cái đc ko ?Nguyên văn bởi VENUS_START Xem bài viếtHien tai mihn cung co vai cai RJ45 hang xin luon. Nhìn vao khe ho ban cung thay cuon day dong ben trong roi. Neu ko thi dung VOM kiem tra neu co bien ap thi phan ket noi vao rj45 va phan han len board mach ko bi noi tat.Last edited by batbatdieu; 11-09-2007, 11:46.
Comment
-
lâu lâu rồi không thấy mem nào update thông tin về mục này nhỉ. Ai có thông tin gì mời thì share cho anh em cùng biết. Ứng dụng trên nền Ethernet rất là hay và thực tế.Ethernet-RS232, PIC Webserver, RFID Reader
CallerID, Cảnh báo BTS, ...
0988006696
linhnc308@gmail.com
http://linhnc308.blogspot.com
Comment
Bài viết mới nhất
Collapse
-
bởi lvhnHãng nào tùy thích thôi bác! bây giờ các hãng đều hỗ trợ xem qua máy tính hay điện thoại đều được. Gắn Trước tiên mua về cắm nguồn set ip hết xong hãy lắp lên, cam poe chỉ cần 4 lõi là hoạt động bình thường nên 1 dây kéo cho 2 cam vẫn ok
-
Channel: Tâm tình dân kỹ thuật
hôm nay, 15:49 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi lvhnNhớ không nhầm thì lúc còn đi học có gặp chú 1 lần cf bãi xe Nguyễn Kim, giờ quán cf đó nghỉ bán rồi
-
Channel: Tâm tình dân kỹ thuật
hôm nay, 15:44 -
-
Trả lời cho Thắc mắc pin 21v ?bởi lvhnCon số đấy biểu thị gần đúng thôi, cái đồng hồ đó có đảm bảo chính xác hay không? pin có cục lên 4v4 vẫn bình thường. Cái gì cũng có sai số trong phạm vi không quá lớn thì không ảnh hưởng gì đâu, bàn ngay ngón ngắn ngón dài mà
-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 15:32 -
-
Trả lời cho Amply bị rò DC 22 voltbởi lvhnThay mấy con transisto nhỏ đầu vào, thường vi sai lỗi hay bị. Khám tổng quát chân các linh kiện xem có bị rỉ sét nhiều không?
-
Channel: Điện thanh
hôm nay, 15:24 -
-
bởi dinhthuong92Mạch này hiệu suất ra led đạt khoảng 90.7% tại 12V in, 40W out.
-
Channel: Nguồn!
27-07-2026, 10:15 -
-
bởi dinhthuong92Có lẽ nguồn viết bài này chỉ mang tính định tính để nói rằng cần thay đổi tổng trở tải để có Pmax chứ trình bày chưa chi tiết và thấu đáo một cách định lượng. Công thức tổng quát phải có mặt L mới được, và nói là "tổng...
-
Channel: Nguồn!
27-07-2026, 10:09 -
-
Trả lời cho [Chia sẻ] Tổng hợp các công ty AI Việt Nam đang làm gì thật sự — Từ voicebot, computer vision đến AI agentsbởi nguyendinhvanCàng ngày, CNTT càng trở nên lôi thôi , rách việc.
Cái AI và Ge... trên trình duyệt chỉ tổ làm vướng mắt, mất thì gian.
Tôi toàm phải mất cộng tắt nó đi.-
Channel: Xu hướng, nhu cầu và thị trường
25-07-2026, 14:59 -
-
bởi trung30000Em có con amply 12 sò D 718 và e688 , biến áp 15A, 30v 0 30 v, một kênh thì hoạt động bình thường, kênh còn lại nổ bụp bụp, sột sột, đèn tín hiệu nhảy lên vạch max, khoảng 4 đến 5 giây, sau đó đèn tín hiệu trả về mức không, Em thấy như...
-
Channel: Điện thanh
24-07-2026, 13:50 -
-
Trả lời cho Tìm hiểu máy hàn lăn (Rolling Welding)bởi hoang_3ibác cần thì liên hệ Em: mayhanhaivuong.com (0903238399)...
-
Channel: Điện tử công nghiệp
24-07-2026, 10:58 -
-
Trả lời cho Công thức tính định luật kirchhoffbởi abcnewmemberGiải bằng hệ phương trình bật nhất 3 ẩn.
...
-
Channel: Hỗ trợ học tập
23-07-2026, 14:52 -

Comment