lập trình kết nối máy chấm công

Cách kết nối máy chấm công bằng dây mạng RJ45

Cách kết nối máy chấm công bằng dây mạng RJ45

Ngày tải lên : 13/03/2013, 08:24
... Cách kết nối máy chấm công bằng dây mạng RJ45 Để kết nối với máy chấm công từ phần mềm cài đặt tại máy tính của bạn, sẽ có 2 cách cắm dây mạng cho máy chấm công, 1-cắm dây mạng cho máy chấm công ... LAN của công ty, 2-Cắm dây mạng trực tiếp từ máy chấm công vào máy tính Để kết nối với máy chấm công từ phần mềm cài đặt tại máy tính của bạn, sẽ có 2 cách cắm dây mạng cho máy chấm công, 1-cắm ... không kết nối được với máy chấm công thẻ từ bạn vui lòng xem lại thông số khai báo trong phần mềm (Khai báo máy chấm công, đăng ký máy chấm công) 2. Cách 2: Cắm dây mạng trực tiếp từ máy chấm công...
  • 17
  • 1.6K
  • 6
Lập trình giao tiếp máy tính qua cổng RS232

Lập trình giao tiếp máy tính qua cổng RS232

Ngày tải lên : 23/11/2012, 13:46
...   trong thực tế.   Do đó tôi xin giới thiệu cho các bạn viết chương trình trên PC dùng MSComm. Tôi xin đưa ra một  số vấn đề như sau:   ‐ Giới thiệu chuẩn giao tiếp  RS232  và  điều khiển Active X Microsoft Communication 6.0(  MSComm): cách tính chất và cách thiết lập tham số tối ưu cho điều khiển.  ‐ Lập trình ứng dụng giao tiếp trên cơ sở sử dụng phần mềm Visual C++ trong bộ công cụ Visual ‐  Studio 6.0 của Microsft:  + Thiết kế giao diện chương trình.   + Viết mã cho chương trình.     1. Điều khiển MSComm  1.1. Chuẩn giao tiếp RS232  RS232 là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nối nhiều  nhất là với 2 thiết bị, chiều dài kết nối lớn nhất cho phép để đảm bảo dữ liệu là 50 – 100 feet  ( 12.7 đến 25.4 m), tốc độ 20kBít/s đôi khi là tốc độ 115 k Bít/s với một số thiết bị đặc biệt.   Để biết được các tham số của chuẩn giao tiếp RS232 trong hệ điều hành của bạn như thế  nảo thì bạn kích phải chuột vào biểu tượng My Computer , chọn Properties, chọn Tab  HardWare chọn Device Manager sẽ có một tree hiện ra. Bạn chọn Port( Com & LPT), kích  chuột phải vào Communication Port( COM1). Chuyển sang tab Port Setting sẽ thấy được  các tham số mà chúng ta cần thiết lập bao gồm tần số bus, Data Bits, Parity Bits, Stop Bits,  Handshaking, ...   trong thực tế.   Do đó tôi xin giới thiệu cho các bạn viết chương trình trên PC dùng MSComm. Tôi xin đưa ra một  số vấn đề như sau:   ‐ Giới thiệu chuẩn giao tiếp  RS232  và  điều khiển Active X Microsoft Communication 6.0(  MSComm): cách tính chất và cách thiết lập tham số tối ưu cho điều khiển.  ‐ Lập trình ứng dụng giao tiếp trên cơ sở sử dụng phần mềm Visual C++ trong bộ công cụ Visual ‐  Studio 6.0 của Microsft:  + Thiết kế giao diện chương trình.   + Viết mã cho chương trình.     1. ... Thêm các EditBox    Hình 2.40: Thêm EditBox1  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  7/78    + InBufferCout: trả lại số kí tự đang có trong bộ đệm nhận Bạn có thể xoá bộ đệm nhận  bằng cách đặt thuộc tính này =0 . Không nhầm với thuộc tính InBufferSize là tổng kích  thước của bộ đệm nhận.  + Input: nhận và xoá dữ liệu trong bộ đệm nhận.  Nếu InputMode là comInputModeText  thì giá trị trả về sẽ là một xâu tức có kiểu  String , dữ liệu dạng text trong một biến kiểu Variant. Nếu InputMode =  comInputModeBinary thì thuộc tính này sẽ trả lại dữ liệu dạng nhị phân dưới dạng một  mảng kiểu byte trong một biến Variant.  + OutBufferCount: trả lại số kí tự trong bộ đệm truyền.  + Output: ghi dữ liệu vào bộ đệm truyền. có thể truyền kiểu text hoặc kiểu nhị phân.  Nếu truyền bằng kiểu text thì cho một biến Variant = kiểu String, nếu truyền kiểu nhị phân  thì cho cho Output= variant = một mảng kiểu Byte.  Bắt tay( handshaking):   + Break : thiết lập hoặc xoá tín hiệu. object.Break [ = value] value = true hoặc false. Khi  set value= true thì thông số Break này sẽ gửi một tín hiệu break. Tín hiệu break trì hoàn  việc truyền dữ liệu và đưa đường truyền vào trạng thái break tới khi mà value = false.  + CDHolding: quết định xem sự truyền này đến đâu bằng cách truy vấn đường CD(  Carrier Detect). Carrier Detect là tín hiệu gửi từ modem tới máy tính kết nối với nó thống  báo rằng nó đang online. Nếu giá trị = true thì nó đường CD đang ở mức cao, nếu = false  thì đường dây này đang ở mức thấp. Tính chất này không có trong lúc thiết kế chỉ có trong  khi chạy chương trình. Carrier Detect được biết như là Receive Line Signal Detect (RLSD).  + CTSHolding: quết định khi nào bạn gửi dữ liệu bằng cách truy vấn trạng thái đường  Clear To Send (CTS). Thông thường tín hiệu CTS được gửi từ modem tới máy tính kết nối với nó để báo rằng đang quá trình truyền dữ liệu. Thuộc tính Readonly chỉ xuất hiện khi  chạy chương trình.  Đường Clear To Send dùng trong RTS/CTS (Request To Send/Clear To  Send) bắt tay phần cứng. CTSHolding cho bạn một cách để tự tay dò đường Clear To Send  nếu bạn cần biết trạng thái của nó.   + DSRHolding: biết trạng thái của đường Data Set Ready (DSR). Tín hiệu Data Set  Ready truyền từ modem tới máy tính nối với nó để thông báo rằng modem đã sẵn sàng  hoạt động. Tính chất này dùng khi viết Data Set Ready/Data Terminal Ready handshaking  routine cho máy Data Terminal Equipment (DTE)‐ máy trang bị đầu cuối dữ liệu.  + DTREnable: tính chất này quyết định khi nào cho phép đường Data Terminal Ready  (DTR) trong truyền thông. Tín hiệu DTR gửi từ máy tính tới modem đẻ báo rằng máy tính  sẵn sàng là nơi nhận dữ liệu. Khi DTREnable = true thì đường Data Terminal Ready set lên  cao khi cổng mở, và thấp khi cổng đóng. Nếu DTREnable = false thì đường đó luôn mức  thấp. Trong phần lớn trường hợp set đường Data Terminal Ready thành thấp để hang up  telephone.   Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  10/78     ...
  • 78
  • 3.1K
  • 7
Lập trình giao tiếp máy tính qua cổng RS232

Lập trình giao tiếp máy tính qua cổng RS232

Ngày tải lên : 26/04/2013, 17:20
... Cách thiết lập tối ưu cho ứng dụng  Để  cho ứng dụng có thể đọc ngay dữ liệu khi bắt đầu có trong bộ đệm nhận thì các bạn  nên đặt thuộc tính RthresHold = 1.  Ngoài ra các bạn cần quan tâm đến các tham số: CommPort, Settings, Rthreshold,  SthresHold,PortOpen, InputLen, InputBuffer, OutputBuffer, InBufferSize, InputMode,  OutBufferSize.    2. Lập trình 2.1. Mục đích yêu cầu  Chương trình này rất là đơn giản. Chúng ta sẽ tạo ra một chương trình có giao diện như  sau:    Hình 2.1: Giao diện chương trình    Chương trình có chức năng sau:  ‐ Nhập kí tự hoặc xâu kí tự vào EditBox Transfer, điều chỉnh tham số giao tiếp trên  các ComboBox. Nhấn nút Send để gửi dữ liệu ra cổng COM.   ‐ Đồng thời với nó nếu có dữ liệu truyền vê cổng Com thì dữ liệu sẽ được hiển thị  lên EditBox Receive. Khi bạn nhấn vào Clear thì sẽ xoá dữ liệu hiển thị trên EditBox này.  Chú ý:  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  32/78      Hình 2.37 Làm cho các GroupBox 7‐>9 có khoảng cách bằng nhau    Hình 2.38: Làm cho các GroupBox này thẳng hàng với nhau  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  8/78    + Handshaking: thiết lập và trả lại giao thức bắt tay phần cứng. object.Handshaking [ =  value ].  Các giá trị của value:     comNone   ... Thêm các Button    Hình 2.47: Thêm Button1    Hình 2.48: Thêm Button2  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  7/78    + InBufferCout: trả lại số kí tự đang có trong bộ đệm nhận Bạn có thể xoá bộ đệm nhận  bằng cách đặt thuộc tính này =0 . Không nhầm với thuộc tính InBufferSize là tổng kích  thước của bộ đệm nhận.  + Input: nhận và xoá dữ liệu trong bộ đệm nhận.  Nếu InputMode là comInputModeText  thì giá trị trả về sẽ là một xâu tức có kiểu  String , dữ liệu dạng text trong một biến kiểu Variant. Nếu InputMode =  comInputModeBinary thì thuộc tính này sẽ trả lại dữ liệu dạng nhị phân dưới dạng một  mảng kiểu byte trong một biến Variant.  + OutBufferCount: trả lại số kí tự trong bộ đệm truyền.  + Output: ghi dữ liệu vào bộ đệm truyền. có thể truyền kiểu text hoặc kiểu nhị phân.  Nếu truyền bằng kiểu text thì cho một biến Variant = kiểu String, nếu truyền kiểu nhị phân  thì cho cho Output= variant = một mảng kiểu Byte.  Bắt tay( handshaking):   + Break : thiết lập hoặc xoá tín hiệu. object.Break [ = value] value = true hoặc false. Khi  set value= true thì thông số Break này sẽ gửi một tín hiệu break. Tín hiệu break trì hoàn  việc truyền dữ liệu và đưa đường truyền vào trạng thái break tới khi mà value = false.  + CDHolding: quết định xem sự truyền này đến đâu bằng cách truy vấn đường CD(  Carrier Detect). Carrier Detect là tín hiệu gửi từ modem tới máy tính kết nối với nó thống  báo rằng nó đang online. Nếu giá trị = true thì nó đường CD đang ở mức cao, nếu = false  thì đường dây này đang ở mức thấp. Tính chất này không có trong lúc thiết kế chỉ có trong  khi chạy chương trình. Carrier Detect được biết như là Receive Line Signal Detect (RLSD).  + CTSHolding: quết định khi nào bạn gửi dữ liệu bằng cách truy vấn trạng thái đường  Clear To Send (CTS). Thông thường tín hiệu CTS được gửi từ modem tới máy tính kết nối với nó để báo rằng đang quá trình truyền dữ liệu. Thuộc tính Readonly chỉ xuất hiện khi  chạy chương trình.  Đường Clear To Send dùng trong RTS/CTS (Request To Send/Clear To  Send) bắt tay phần cứng. CTSHolding cho bạn một cách để tự tay dò đường Clear To Send  nếu bạn cần biết trạng thái của nó.   + DSRHolding: biết trạng thái của đường Data Set Ready (DSR). Tín hiệu Data Set  Ready truyền từ modem tới máy tính nối với nó để thông báo rằng modem đã sẵn sàng  hoạt động. Tính chất này dùng khi viết Data Set Ready/Data Terminal Ready handshaking  routine cho máy Data Terminal Equipment (DTE)‐ máy trang bị đầu cuối dữ liệu.  + DTREnable: tính chất này quyết định khi nào cho phép đường Data Terminal Ready  (DTR) trong truyền thông. Tín hiệu DTR gửi từ máy tính tới modem đẻ báo rằng máy tính  sẵn sàng là nơi nhận dữ liệu. Khi DTREnable = true thì đường Data Terminal Ready set lên  cao khi cổng mở, và thấp khi cổng đóng. Nếu DTREnable = false thì đường đó luôn mức  thấp. Trong phần lớn trường hợp set đường Data Terminal Ready thành thấp để hang up  telephone.   Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  29/78      Hình 2.32: Thiết lập thuộc tính cho GroupBox5    Hình 2.33: Thiết lập thuộc tính cho GroupBox6  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  39/78      Hình 2.51: Chọn Properties    Hình 2.52: Thuộc tính của Button1  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  40/78      Hình 2.53: Thuộc tính của Button2    Hình 2.54: Thuộc tính của Button3  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  22/78    Thế là các bạn đã cho được ứng dụng MSComm vào trong Dialog  2.2.3. ... Thêm các Button    Hình 2.47: Thêm Button1    Hình 2.48: Thêm Button2  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  7/78    + InBufferCout: trả lại số kí tự đang có trong bộ đệm nhận Bạn có thể xoá bộ đệm nhận  bằng cách đặt thuộc tính này =0 . Không nhầm với thuộc tính InBufferSize là tổng kích  thước của bộ đệm nhận.  + Input: nhận và xoá dữ liệu trong bộ đệm nhận.  Nếu InputMode là comInputModeText  thì giá trị trả về sẽ là một xâu tức có kiểu  String , dữ liệu dạng text trong một biến kiểu Variant. Nếu InputMode =  comInputModeBinary thì thuộc tính này sẽ trả lại dữ liệu dạng nhị phân dưới dạng một  mảng kiểu byte trong một biến Variant.  + OutBufferCount: trả lại số kí tự trong bộ đệm truyền.  + Output: ghi dữ liệu vào bộ đệm truyền. có thể truyền kiểu text hoặc kiểu nhị phân.  Nếu truyền bằng kiểu text thì cho một biến Variant = kiểu String, nếu truyền kiểu nhị phân  thì cho cho Output= variant = một mảng kiểu Byte.  Bắt tay( handshaking):   + Break : thiết lập hoặc xoá tín hiệu. object.Break [ = value] value = true hoặc false. Khi  set value= true thì thông số Break này sẽ gửi một tín hiệu break. Tín hiệu break trì hoàn  việc truyền dữ liệu và đưa đường truyền vào trạng thái break tới khi mà value = false.  + CDHolding: quết định xem sự truyền này đến đâu bằng cách truy vấn đường CD(  Carrier Detect). Carrier Detect là tín hiệu gửi từ modem tới máy tính kết nối với nó thống  báo rằng nó đang online. Nếu giá trị = true thì nó đường CD đang ở mức cao, nếu = false  thì đường dây này đang ở mức thấp. Tính chất này không có trong lúc thiết kế chỉ có trong  khi chạy chương trình. Carrier Detect được biết như là Receive Line Signal Detect (RLSD).  + CTSHolding: quết định khi nào bạn gửi dữ liệu bằng cách truy vấn trạng thái đường  Clear To Send (CTS). Thông thường tín hiệu CTS được gửi từ modem tới máy tính kết nối với nó để báo rằng đang quá trình truyền dữ liệu. Thuộc tính Readonly chỉ xuất hiện khi  chạy chương trình.  Đường Clear To Send dùng trong RTS/CTS (Request To Send/Clear To  Send) bắt tay phần cứng. CTSHolding cho bạn một cách để tự tay dò đường Clear To Send  nếu bạn cần biết trạng thái của nó.   + DSRHolding: biết trạng thái của đường Data Set Ready (DSR). Tín hiệu Data Set  Ready truyền từ modem tới máy tính nối với nó để thông báo rằng modem đã sẵn sàng  hoạt động. Tính chất này dùng khi viết Data Set Ready/Data Terminal Ready handshaking  routine cho máy Data Terminal Equipment (DTE)‐ máy trang bị đầu cuối dữ liệu.  + DTREnable: tính chất này quyết định khi nào cho phép đường Data Terminal Ready  (DTR) trong truyền thông. Tín hiệu DTR gửi từ máy tính tới modem đẻ báo rằng máy tính  sẵn sàng là nơi nhận dữ liệu. Khi DTREnable = true thì đường Data Terminal Ready set lên  cao khi cổng mở, và thấp khi cổng đóng. Nếu DTREnable = false thì đường đó luôn mức  thấp. Trong phần lớn trường hợp set đường Data Terminal Ready thành thấp để hang up  telephone.   Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  29/78      Hình 2.32: Thiết lập thuộc tính cho GroupBox5    Hình 2.33: Thiết lập thuộc tính cho GroupBox6  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  39/78      Hình 2.51: Chọn Properties    Hình 2.52: Thuộc tính của Button1  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  40/78      Hình 2.53: Thuộc tính của Button2    Hình 2.54: Thuộc tính của Button3  Người báo cáo:  Ngô Hải Bắc  Tài liệu:  TUT01.03  Ngày:  10/01/06  Trang:  22/78    Thế là các bạn đã cho được ứng dụng MSComm vào trong Dialog  2.2.3....
  • 78
  • 1.1K
  • 3
LẬP TRÌNH GIAO TIẾP MÁY TÍNH QUA CỔNG RS232

LẬP TRÌNH GIAO TIẾP MÁY TÍNH QUA CỔNG RS232

Ngày tải lên : 10/05/2014, 11:15
... Cáchthiết lập tốiưuchoứngdụng Đểchoứngdụngcóthểđọcngaydữliệukhibắtđầucótrongbộđệmnhậnthìcácbạn nênđặtthuộctínhRthresHold=1. Ngoàiracácbạncầnquantâmđếncácthamsố:CommPort,Settings,Rthreshold, SthresHold,PortOpen,InputLen,InputBuffer,OutputBuffer,InBufferSize,InputMode, OutBufferSize.  2. Lập trình 2.1. Mụcđíchyêucầu Chương trình nàyrấtlàđơngiản.Chúngtasẽtạoramộtchương trình cógiaodiệnnhư sau:  Hình2.1:Giaodiệnchương trình  Chương trình cóchứcnăngsau: ‐NhậpkítựhoặcxâukítựvàoEditBoxTransfer,điềuchỉnhthamsốgiaotiếptrên cácComboBox.NhấnnútSendđểgửidữliệuracổngCOM. ‐ĐồngthờivớinónếucódữliệutruyềnvêcổngComthìdữliệusẽđượchiểnthị lênEditBoxReceive.KhibạnnhấnvàoClearthìsẽxoádữliệuhiểnthịtrênEditBoxnày. Chúý: ...  trongthựctế. Dođótôixingiớithiệuchocácbạnviếtchương trình trênPCdùngMSComm.Tôixinđưaramột sốvấnđềnhưsau: ‐GiớithiệuchuẩngiaotiếpRS232vàđiềukhiểnActiveXMicrosoftCommunication6.0( MSComm):cáchtínhchấtvàcáchthiết lập thamsốtốiưuchođiềukhiển. ‐ Lập trình ứngdụnggiaotiếptrêncơsởsửdụngphầnmềmVisualC++trongbộ công cụVisual‐ Studio6.0củaMicrosft: +Thiếtkếgiaodiệnchương trình.  +Viếtmãchochương trình.   1. ĐiềukhiểnMSComm 1.1. ChuẩngiaotiếpRS232 RS232làmộtchuẩngiaotiếp nối tiếpdùngđịnhdạngkhôngđồngbộ, kết nối nhiều nhấtlàvới2thiếtbị,chiềudài kết nối lớnnhấtchophépđểđảmb ...  trongthựctế. Dođótôixingiớithiệuchocácbạnviếtchương trình trênPCdùngMSComm.Tôixinđưaramột sốvấnđềnhưsau: ‐GiớithiệuchuẩngiaotiếpRS232vàđiềukhiểnActiveXMicrosoftCommunication6.0( MSComm):cáchtínhchấtvàcáchthiết lập thamsốtốiưuchođiềukhiển. ‐ Lập trình ứngdụnggiaotiếptrêncơsởsửdụngphầnmềmVisualC++trongbộ công cụVisual‐ Studio6.0củaMicrosft: +Thiếtkếgiaodiệnchương trình.  +Viếtmãchochương trình.   1....
  • 20
  • 782
  • 11

Xem thêm