nguyenlc07

New Member
Tải Luận văn Nghiên cứu và thiết kế mạng công nghiệp sử dụng FPGA và CPU 89S8252

Download miễn phí Luận văn Nghiên cứu và thiết kế mạng công nghiệp sử dụng FPGA và CPU 89S8252


BỐ CỤC TRÌNH BÀY

PHẦN A :LÝ THUYẾT LIÊN QUAN

PHẦN B :THIẾT KẾ

PHẦN C :KẾT QUẢ- HƯỚNG PHÁT TRIỂN

1.GIỚI THIỆU MẠNG CÔNG NGHIỆP

Trong nhiều thập niên qua việc ứng dụng mạng thông tin vào lĩnh vực công nghiệp đã bùng nổ rất mạnh mẽ.Các hệ thống mạng phát triển rất mạnh và đa dạng .

Việc ứng dụng mạng công nghiệp đã mang lại những lợi ích rõ nét

Chi phí lắp đặt hệ thống

Nhân công điều hành

Tiện ích quản lý hệ thống

Cải thiện môi trường làm việc


Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

Khoâng
Time out?
Khoâng
Soá laàn phaùt baèng 3 ?
Coù
Xoùa Time out
Taêng bieán soá laàn phaùt döõ lieäu
Xoùa Time out
Xoùa bieán soá laàn phaùt döõ lieäu
Thoaùt
Thoaùt
Loãi ñöôøng truyeàn
1.3.2.Thuû tuïc nhaän döõ lieäu
Giaûm ñoä daøi khung
1 ñôn vò
Ñoä daøi khung =0?
Boä ñeäm coù döõ lieäu ?
Phuïc hoài caùc con troû
vaø caùc thanh ghi
Thoaùt
Löu giöõ caùc con troû
vaø caùc thanh ghi
Khoâng
Coù
Caát döõ lieäu
Ñoä daøi khung =0?
Coù
Kieåm tra
ñaàu khung ?
Coù
Gaùn ñoä daøi khung baèng 5
Gaùn ñoä daøi khung baèng 0
Khoâng
Khoâng
A
B
C
D
Coù
E
Khoâng
Thuû tuïc nhaän döõ lieäu
Tính FCS
Tính FCS K
A
Ñoä daøi khung =0?
Coù
C
Khoâng
D
E
Löu döõ lieäu
Taêng con troû döõ lieäu
B
Phaàn dö tính FCS =0 ?
Coù
Döïng côø baùo nhaän toát
Tính FCS K
Döïng côø baùo nhaän khoâng toát
Tính FCS K
Khoâng
F
Xöû lyù khung leänh
Tính FCS K
Nhaän ñuùng ñòa chæ ?
F
Côø nhaän toát khoâng ?
Coù
Khoâng
Traû con troû döõ lieäu veà vò trí ban ñaàu
Xoùa côø nhaän
Tính FCS K
Thoaùt
Coù
Khoâng
Thuû tuïc nhaän döõ lieäu xöû lyù caùc khung leänh nhaän ñöôïc töø Kit convert.dsn göûi leân baèng 2 con troû
Con troû giöõ vò trí ban ñaàu cuûa boä ñeäm
Con troû giöõ vò trí döõ lieäu coù trong boä ñeäm
Khi 2 con troû khaùc nhau chöùng toû trong boä ñeäm coù döõ lieäu.Khi boä ñeäm nhaän ñuû moät khung leänh thì thuû tuïc tính FCS.Keát quaû tính FCS xaùc ñònh khung nhaän toát hay bò loãi .Khi khung nhaän toát thì thuû tuïc tieáp tuïc xöû lyù xem khung döõ lieäu nhaän ñöôïc laø loaïi khung gì thoâng qua byte Command trong khung maø coù nhöõng xöû lyù töông öùng vôùi khung vöøa nhaän .
1.3.2.1.Tính FCS
Khoâng
Dòch phaûi FCS
Dòch phaûi Data
Dòch phaûi Command
Dòch phaûi Address
Dòch phaûi Header
Giaûm soá laàn quay 1 ñôn vò
Soá laàn quay baèng 0 ?
Coù
Gaùn soá laàn quay dòch phaûi laø 32
Côø C baèng 1?
Côø C baèng 1?
Xor byte Header vaø 07h
Caäp nhaät byte Header
Thoaùt
Khoâng
Khoâng
Coù
Xor byte Header vaø 07h
Gaùn Header vaøo byte FCS
Gaùn Header
vaøo byte FCS
Coù
Tính FCS
Giaûi thuaät tính FCS coù ña thöùc sinh: 100000111
Höôùng phaùt:
Tính CRC-8 cho 4 byte
1/Header
2/Address
3/Command
4/Data
Keát quaû tính FCS laø byte thöù 5 trong khung döõ lieäu phaùt.
FCS
Data
Command Lôùp lieân keát
Address
Header
Khung döõ lieäu phaùt
Höôùng thu:
Tính CRC-8 cho 5 byte nhaän ñöôïc
1/Header
2/Address
3/Command
4/Data
5/FCS
Header
Address
Command Lôùp lieân keát
Data
FCS
Khung döõ lieäu thu
Phaàn dö keát quaû tính FCS baèng 0 thì keát quaû nhaän khoâng loãi .Phaàn dö khaùc 0 thì khung döõ lieäu nhaän bò loãi.
Trong giaûi thuaät tính FCS coù söû duïng côø C.Côø C laø keát quaû dòch phaûi cuûa 5 byte khung döõ lieäu.Keát quaû tính ñöôïc löu vaøo byte FCS.
1.4.Chöông trình nguoàn
Chöông trình:
Frmmain:
Private Sub CmdImage1_Click()
FrmSystemConfig.Show
FrmCom.Show
End Sub
Private Sub CmdOpenPort_Click()
Call PortOpen
End Sub
Private Sub Form_Load()
Demo = " MOÂ HÌNH MAÏNG "
Demolbl = Demo & " "
TimeReadBuffer.Enabled = True
Timereadcode.Enabled = True
End Sub
Private Sub timer_ack_Timer()
MsgBox "Network erro", vbExclamation
FrmMain.timer_ack.Enabled = False
Rx_frame(0) = 0
Rx_frame(1) = 0
Rx_frame(2) = 0
Rx_frame(3) = 0
Rx_frame(4) = 0
End Sub
Private Sub Timer1_Timer()
Dim Str As String
Str = Left(Demolbl.Caption, 1)
Demolbl.Caption = Mid(Demolbl.Caption, 2, Len(Demolbl.Caption) - 1) & Str
End Sub
Private Sub Timer3_Timer()
'=============================================
'Day la doan kiem tra Ack .Neu nhan duoc dung Ack
'thi off kiem tra timoout
'Neu nhu nhan duoc frame tot ma khong dung
'Ack cua kenh vua gui thi cagnh bao dong thoi
'cung off luon timeout
'Kiem tra ACK nhan duoc
'Co Complte_F bao nhan frame tot
If Complete_F Then
'=============================================
Complete_F = False
If Crc_F Then
MsgBox "Crc8 erro", vbExclamation
FrmMain.timer_ack.Enabled = False
Else
If (Rx_frame(1) Kit) Then
MsgBox "Address erro", vbExclamation
FrmMain.timer_ack.Enabled = False
Else
'Sau 6 s ma chua nhan duoc Ack thi canh bao duong truyen
If (Rx_frame(2) Ack_F) Then
MsgBox "Ack erro", vbExclamation
FrmMain.timer_ack.Enabled = False
Else
FrmMain.timer_ack.Enabled = False
Ack_good = True
Msgbox "nhan duoc ack"
Rx_header = Rx_frame(0)
Rx_address = Rx_frame(1)
Rx_command = Rx_frame(2)
Rx_data = Rx_frame(3)
Rx_fcs = Rx_frame(4)
End If
End If
End If
Rx_frame(0) = 0
Rx_frame(1) = 0
Rx_frame(2) = 0
Rx_frame(3) = 0
Rx_frame(4) = 0
End If
End Sub
Private Sub Timer4_Timer()
If Ack_good Then
Ack_good = False
If Data_send_F Then
Data_send_F = False
Else
Header = 160
Address = Kit
Command = Data_F
Data = Val(FrmSystemConfig.txtdata1.Text)
Call senddata
Data_send_F = True
MsgBox "gui data1"
FrmMain.timer_ack.Enabled = True
End If
End If
End Sub
Private Sub TimeReadBuffer_Timer()
TimeReadBuffer.Enabled = False
Call ReadBuffer
End Sub
Private Sub timereadcode_Timer()
timereadcode.Enabled = False
Call Readcode
End Sub
Frmsystemconfig:
Private Sub txdaddress_Change()
End Sub
Private Sub CmdOpenPort_Click()
Call PortOpen
End Sub
Private Sub Cmdsend_Click()
Cmdsend.Enabled = True
Data = Val(txtdata1.Text)
If Data > 255 Then
MsgBox ("Invalid Value,Try again Datatx value:")
Exit Sub
Else
If txtdata1.Text = "" Then
MsgBox ("No value,Try again Datatx value:")
Exit Sub
End If
End If
Address = Kit
If Address > 255 Then
MsgBox ("Invalid Value,Try again Addresstx value:")
Exit Sub
Else
If (Kit 1) And (Kit 2) And (Kit 3) And (Kit 4) And (Kit 5) Then
MsgBox ("No Kit,Try again Kit value:")
Exit Sub
End If
End If
Header = 160
Address = Kit
Command = Token_F
Call senddata
'=============================================
'Cho timer tinh timeout
'=============================================
MsgBox "Phat xong dang cho ack"
FrmMain.timer_ack.Enabled = True
FrmMain.Timer3.Enabled = True
End Sub
Private Sub Combo1_Change()
End Sub
Private Sub Combo1_Click()
End Sub
Private Sub CmpBaud_Click()
Select Case CmpBaud.ListIndex
Case 0
Baud = "1200"
Case 1
Baud = "2400"
Case 2
Baud = "4800"
Case 3
Baud = "9600"
Case 4
Baud = "19200"
End Select
End Sub
Private Sub CmpKit_Click()
Select Case CmpKit.ListIndex
Case 0
Kit = 1
Case 1
Kit = 2
Case 2
Kit = 3
Case 3
Kit = 4
Case 4
Kit = 5
End Select
End Sub
Private Sub Command1_Click()
FrmMain.timer_ack.Enabled = True
End Sub
Private Sub Form_Load()
CmpPort.AddItem "COM1"
CmpPort.AddItem "COM2"
CmpPort.ListIndex = 0
CmpBaud.AddItem "1200"
CmpBaud.AddItem "2400"
CmpBaud.AddItem "4800"
CmpBaud.AddItem "9600"
CmpBaud.AddItem "19200"
CmpBaud.ListIndex = 0
Port_Num = 1
Baud = "1200"
Token_F = 12
Ack_F = 10
Data_F = 15
Cmdsend.Enabled = True
CmpKit.AddItem "1"
CmpKit.AddItem "2"
CmpKit.AddItem "3"
CmpKit.AddItem "4"
CmpKit.AddItem "5"
FCSTX = 0
Count_F = 0
Timer_F = 0
RX_pointer = 0
Buffer_pointer = 0
End Sub
Private Sub Label6_Click()
End Sub
Private Sub Label7_Click()
End Sub
Module1
Declare Function OPENCOM Lib "port" (ByVal A$) As Integer
Declare Sub CLOSECOM Lib "port" ()
Declare Sub SENDBYTE Lib "port" (ByVal b%)
Declare Function READBYTE Lib "port" () As Integer
Declare Sub DTR Lib "port" (ByVal b%)
Declare Sub RTS Lib "port" (ByVal b%)
Declare Sub TXD Lib "port" (ByVal b%)
Declare Function CTS Lib "port" () As Integer
Declare Function DSR Lib "port" () As Integer
Declare Function RI Lib "port" () As Integer
Declare Function DCD Lib "port" () As Integer
Declare Sub DELAY Lib "port" (ByVal b%)
Declare Sub TIMEINIT Lib "port" ()
Declare Sub TIMEINITUS Lib "port" ()
Declare Function TIMEREAD Lib "port" () As Long
Declare Function TIMEREADUS Lib "port" () As Long
Declare Sub DELAYUS Lib "port" (ByVal l As Long)
Declare Sub REALTIME Lib "port" (ByVal i As Boolean)
Module2:
'Var Parametter
Public NewPort As Integer
Public OldPort As Integer
Public Port_Num As Integer
Public Baud As String
Public Setting As String
Public RX_str(0 To 255) As String
Public RX_pointer As Integer
Public RX_code(0 To 255) As Integer
Public RX(0 To 2) As String
Public Buffer_str(0 To 255) As String
Public Buffer_pointer As Integer
Public Buffer_code(0 To 255) As Integer
Public Header As Integer
Public Address As Integer
Public Addresstx As Integer
Public Comma...
 
Các chủ đề có liên quan khác
Tạo bởi Tiêu đề Blog Lượt trả lời Ngày
D Mối quan hệ giữa giá chứng khoán và tỷ giá hối đoái – Nghiên cứu thực nghiệm tại Việt Nam Luận văn Kinh tế 0
D Nghiên cứu mối quan hệ giữa tỷ giá hối đoái và giá chứng khoán Luận văn Kinh tế 0
D Nghiên cứu thành phần hóa học và đánh giá tác dụng diệt tế bào ung thư của lá Xạ đen Y dược 0
D Nghiên Cứu Đặc Điểm Lâm Sàng Và Kết Quả Điều Trị Bệnh Thủy Đậu Bằng Zincpaste Y dược 0
D Nghiên cứu quy trình tổng hợp vật liệu aerogels từ xơ dừa và ứng dụng hấp phụ Khoa học Tự nhiên 0
D Nghiên Cứu, Chế Tạo Carbon Cellulose Aerogel Từ Hỗn Hợp Sợi Lá Dứa Và Sợi Cotton Ứng Dụng Trong Hấp Phụ Khoa học Tự nhiên 0
D Nghiên cứu và thiết kế mô hình học tập hệ thống phun xăng đánh lửa và chẩn đoán trên ô tô Khoa học kỹ thuật 0
D nghiên cứu các phương pháp phân lớp dữ liệu và ứng dụng trong bài toán dự báo thuê bao rời mạng viễn thông Công nghệ thông tin 0
D Nghiên cứu về mạng Nơron tích chập và ứng dụng cho bài toán nhận dạng biển số xe Công nghệ thông tin 0
D Nghiên cứu và đề xuất quy trình xây dựng hệ thống mạng an toàn Công nghệ thông tin 0

Các chủ đề có liên quan khác

Top