Tài liệu Thiết kế giao tiếp máy tính với KIT 8085, chương 7 ppt

81 382 0
Tài liệu Thiết kế giao tiếp máy tính với KIT 8085, chương 7 ppt

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LUÂÄN VĂN TỐT NGHIỆP 1 Chương 7: Chương trình nhận dữ liệuKit thực tập vi xử lý 8085. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++;Chuong trinh nhan du lieu tu may tinh goi xuong Thiet bi thuc tap ;vi xu li 8085. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ Org 2500h MVI A,99h ;khoi tao 8255, Mode 0: PortA nhap du lieu, PortB xuat OUT RegCNT ;trang thai, PortC nhan lenh dieu khien. MVI A,80h ;bao cho may tinh biet thiet bi dang ban. OUT PortB MVI C,00h ;reset bien dem dia chi. CALL READY ;xuat chu "READY" ra hien thi tren 5 LED 7 doan. WaitGO: CALL KEYBRD ;doi nhan phim. CPI KeyGO ;chuong trinh chi thuc hien tiep khi nhan dung JNZ WaitGO ;phim "GO". CALL SENDING ;nhan dung phim "GO" se xuat hien "SENDING" tren 8 LED. MVI A,00h ;bao cho may tinh biet thiet bi da san sang tiep ;nhan OUT PortB ;du lieu. CkSTB1:IN PortC ;doc lenh dieu khien STROBE tai PortC. ANI 01h CPI 01h JNZ CkSTB1 ;neu STROBE # 1 thi doi tiep. MVI A,80h ;bao BUSY\ = 0, ACK = 0. LUAÂÄN VAÊN TOÁT NGHIEÄP 2 OUT PortB IN PortA ;doc du lieu vao. MOV B,A ;tam cat du lieu vao thanh ghi B. MVI A,0C0h ;bao ACK = 1. OUT PortB ChkAF1: IN PortC ;doc lenh dieu khien AF. ANI 02h CPI 02h JNZ ChkAF1 ;neu AF # 1 thi doi tiep. MOV A,B ;hoan tra B lai cho A. ANI 0F0h ;che nibble thap va reset bit ERROR = 0. OUT PortB ;xuat nibble cao va bao ERROR = 0. ChkAF0: IN PortC ;doc lenh dieu khien AF. ANI 02h CPI 00h JNZ ChkAF0 ;neu AF # 0 thi doi tiep. MOV A,B ;hoan tra B lai cho A. RLC ;dich 4 bit thap thanh 4 bit cao tuong ung. RLC RLC RLC ANI 0F0h ;che nua byte thap thap. ORI 08h ;set bit ERROR = 1. OUT PortB ;xuat nibble thap va bao ERROR = 1. ChkSTB0:IN PortC ;doc lenh dieu khien STROBE. ANI 01h CPI 00h JNZ ChkSTB0 ;neu STROBE # 0 thi doi tiep. IN PortA ;doc du lieu. CPI 0FFh ;FFh la ma bao du lieu dung. JZ NoChk CALL PROCESS NoChk: MVI A,40h ;bao BUSY\ = 1. OUT PortB LUAÂÄN VAÊN TOÁT NGHIEÄP 3 JMP ChkSTB1 ;chuan bi nhan byte ke tiep. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ ;Chuong trinh con hien thi "READY" tren nam LED 7 doan. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ READY: PUSH PSW MVI A,10h ;khoi tao 8279: hien thi 8 ki tu,loi vao phai, STA CntI79 ;quet ban phim co lap ma, khoa ngoai 2 phim. MVI A,3Eh ;lap trinh xung Clock = 100 KHz. STA CntI79 MVI A,0C3h ;xoa hien thi va xoa FIFO. STA CntI79 MVI A,01h ;tri hoan 0.1 ms > 160 us. CALL DELAY MVI A,90h ;bat dau ghi vao tai LED dau tien ben phai, co STA CntI79 ;tang dia chi tu dong. MVI A,31h ;cho hien thi "R". STA DataI79 MVI A,79h ;cho hien thi "E". STA DataI79 MVI A,77h ;cho hien thi "A". STA DataI79 MVI A,5Eh ;cho hien thi "D". STA DataI79 MVI A,6Eh ;cho hien thi "Y". STA DataI79 POP PSW RET ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++;Chuong trinh con hien thi "SENDING" tren bay LED 7 doan. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ SENDING:POP PSW LUAÂÄN VAÊN TOÁT NGHIEÄP 4 MVI A,10h ;khoi tao 8279: hien thi 8 ki tu,loi vao phai, STA CntI79 ;quet ban phim co lap ma, khoa ngoai 2 phim. MVI A,3Eh ;lap trinh xung Clock = 100 KHz. STA CntI79 MVI A,0C3h ;xoa hien thi va xoa FIFO. STA CntI79 MVI A,01h ;tri hoan 0.1 ms > 160 us. CALL DELAY MVI A,90h ;bat dau ghi vao tai LED dau tien ben phai, co STA CntI79 ;tang dia chi tu dong. MVI A,6Dh ;cho hien thi "S". STA DataI79 MVI A,79h ;cho hien thi "E". STA DataI79 MVI A,37h ;cho hien thi "N". STA DataI79 MVI A,5Eh ;cho hien thi "D". STA DataI79 MVI A,06h ;cho hien thi "I". STA DataI79 MVI A,37h ;cho hien thi "N". STA DataI79 MVI A,6Fh ;cho hien thi "G". STA DataI79 POP PSW RET ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++;Chuong trinh con xu li du lieu: Chuong trinh nay se nhan dia chi bat ;dau va dia chi cham dut cua vung du lieu, cac ma may cua chuong trinh ;tren may tinh do xuong se duoc dat trong pham vi vung nay. LUAÂÄN VAÊN TOÁT NGHIEÄP 5 ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ PROCESS:MOV A,C ;kiem tra xem co phai day la byte thu nhat ;khong ? CPI 00h JNZ A1 MOV H,B ;neu dung thi cat byte thu nhat vao thanh ghi H. INR C ;tang bien dem byte dia chi len 1 don vi. RET A1: MOV A,C ;kiem tra xem co phai day la byte thu hai khong ? CPI 01h JNZ A2 MOV L,B ;neu dung thi cat byte thu hai vao thanh ghi L. INR C ;tang bien dem byte dia chi len 1 don vi. RET A2: MOV A,C ;kiem tra xem co phai day la byte thu ba khong ? CPI 02h JNZ A3 MOV D,B ;neu dung thi cat byte thu ba vao thanh ghi D. INR C ;tang bien dem byte dia chi len 1 don vi. RET A3: MOV A,C ;kiem tra xem day co phai la byte thu tu khong ? CPI 03h JNZ A4 MOV E,B ;neu dung thi cat byte thu tu vao thanh ghi E. INR C ;tang bien dem byte dia chi len 1 don vi. RET LUAÂÄN VAÊN TOÁT NGHIEÄP 6 A4: MOV M,B ;ke tu byte thu nam tro di se duoc cat vao o nho co INX H ;dia chi do cap thanh ghi HL quan li. MOV A,D CPI H RNZ MOV A,E CMP L RNZ ;thoat neu HL tro den dia chi cham dut nam trong DE. CALL END ;cho hien thi "END." tren ba LED 7 doan. MVI A,40h ;bao BUSY\ = 1. OUT PortB HLT ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++;Chuong trinh con hien thi "END." tren ba LED 7 doan. ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ END: PUSH PSW MVI A,10h ;khoi tao 8279: hien thi 8 ki tu,loi vao phai, STA CntI79 ;quet ban phim co lap ma, khoa ngoai 2 phim. MVI A,3Eh ;lap trinh xung Clock = 100 KHz. STA CntI79 MVI A,0C3h ;xoa hien thi va xoa FIFO. STA CntI79 MVI A,01h ;tri hoan 0.1 ms > 160 us. CALL DELAY MVI A,90h ;bat dau ghi vao tai LED dau tien ben phai, co STA CntI79 ;tang dia chi tu dong. MVI A,79h ;cho hien thi "E". STA DataI79 MVI A,54h ;cho hien thi "N". STA DataI79 LUAÂÄN VAÊN TOÁT NGHIEÄP 7 MVI A,0DEh ;cho hien thi "D.". STA DataI79 POP PSW RET ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++;Hai chuong trinh con sau day da co san trong thiet bi thuc tap Vi xu ;li 8085 ;nen nguoi thuc hien de tai nay thay khong can thiet phai viet lai va ;trinh bay ;ra. Do la 2 chuong trinh: ;KeyKRB : Chuong trinh con quet ban phim. Ma cua phim an duoc cat ;trong thanh ; ghi A. ;DELAY : Chuong trinh con tri hoan theo thoi hang 0.1 ms. He so tri ;hoan duoc ; nap vao thanh ghi A. ;+++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++ ;########################################### ##########################;Khai bao cac nhan duoc su dung. ;########################################### ########################## RegCNT equ 03h PortA equ 00h PortB equ 01h PortC equ 02h CntI79 equ 0A001h DataI79 equ 0A000h KEYBRD equ 0216h DELAY equ 0310h KeyGO equ 17h ;+++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++ End LUAÂÄN VAÊN TOÁT NGHIEÄP 8 B.Module Demo.cpp #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <graphics.h> #include <string.h> #include <dos.h> #include <math.h> #include <complex.h> #include <time.h> #include <dir.h> #include <ctype.h> #include "screen.h" #include "mouse.h" #include "button.hpp" #include "textbox.hpp" #include "list.hpp" #include "disklist.hpp" #include "send.hpp" #define NumBox 2 #define NumBut 2 LPEVENT lpEvent; //bien chua cac bien co chuot char szMessage[128]; BUTTON But[NumBut],NutKiem; TEXTBOX Box[NumBox],Port; char DiskName[27],DName; char ftype[15]="*.prn"; char inter_Path[100]=""; char RequF[100]; unsigned int St_address,End_address=0; char Sta_hex[5],End_hex[5]; //------------------------------------------ --------------- LUAÂÄN VAÊN TOÁT NGHIEÄP 9 int TestPressedButton(int x,LPEVENT lpEvent); int TestPressTexbox(int x,LPEVENT lpEvent,char layra[],unsigned *attribp); void MainProgram(); int TestPressList(LIST L,LPEVENT lpEvent,char s[],unsigned *attrib,char *typ);//nhap bang liet ke int SendFile(); //------------------------------------------ --------------- void main(void) { InitGraphics(); InitValues("Download Program."); InitScreen(); if (!InitMouse(&MainWindow.rViewPort)) { OutMessage("Mouse driver not found. Init mouse and return"); getch(); closegraph(); exit(1); } ShowMouse(); MainProgram(); closegraph(); } //------------------------------------------ --------------- void MainProgram() { char Name[20],buffer[MAXPATH]; unsigned attrib,Attribp; SEND Send; LIST L; LUAÂÄN VAÊN TOÁT NGHIEÄP 10 But[0].InitButton(200,380,250,400,LIGHTGRAY, "Send"); But[1].InitButton(400,380,450,400,LIGHTGRAY, "Exit"); Box[0].InitTextBox(50,70,477,90,GREEN,LIGHTG REEN,"Open File"); Port.InitTextBox(50,270,250,290,GREEN,LIGHTG REEN,"Out port"); Port.GetS_in("LPT1"); L.InitList(480,70,500,90,LIGHTGRAY); But[0].OutButton();//xuat nut lenh But[1].OutButton();//xuat nut lenh Box[0].OutTextBox();//xuat hop nhap text Port.OutTextBox(); L.Show(); setcolor(BLACK); line(50,150,250,150); line(50,150,50,215); setcolor(WHITE); line(50,215,250,215); line(250,150,250,215); outtextxy(50,130,"Free memory request"); outtextxy(55,158,"Start ad :"); outtextxy(55,178,"End ad :"); outtextxy(55,198,"Total :"); OutMessage("Click mouse to chose action"); int kkkk; char RequestFile[15]=""; do//kiem tra nhap chuot chon cong viec { [...]... int x71=x52+30,x72=x22,y71=y51,y72=y52;//toa do DiskBox char DNameTemp[4]; sprintf(DNameTemp,"%c:",*DName); TEXTBOX DiskBox; DiskBox.InitTextBox(x71,y71,x72,y72,WHITE,LI GHTBLUE,"Driver name"); DiskBox.GetS_in(DNameTemp); DiskBox.OutTextBox(); setcolor(BLACK); line(x71+1,y71+1,x72-1,y71+1); line(x71+1,y71+1,x71+1,y72-1); setcolor(LIGHTGRAY); line(x71+1,y72-1,x72-1,y72-1); line(x72-1,y71+1,x72-1,y72-1);... bar(x1+1,y +7+ 14*i,x-1,y +7+ 14+14*i); setcolor(YELLOW); sprintf(Temp,"%c:",DiskName[i]); outtextxy(x1+10,y+10+i*14,Temp); LPEVENT LpEvent; do { ShowMouse(); delay(50); LpEvent=GetEvent(); 27 LUAÂÄN VAÊN TOÁT NGHIEÄP 28 HideMouse(); if(LpEvent->Msg==1) for(i=0;iPosx>=x1+1&&LpEvent>PosxPosy>=y +7+ i*14&&LpEvent->Posy . STA CntI79 ;tang dia chi tu dong. MVI A,31h ;cho hien thi "R". STA DataI79 MVI A ,79 h ;cho hien thi "E". STA DataI79 MVI A ,77 h ;cho. LUÂÄN VĂN TỐT NGHIỆP 1 Chương 7: Chương trình nhận dữ liệu ở Kit thực tập vi xử lý 8085. ;+++++++++++++++++++++++++++++++++++++++++++

Ngày đăng: 15/12/2013, 07:15

Hình ảnh liên quan

Gọi tên Demo.exe, lúc đó màn hình sẽ hiện lên như sau: - Tài liệu Thiết kế giao tiếp máy tính với KIT 8085, chương 7 ppt

i.

tên Demo.exe, lúc đó màn hình sẽ hiện lên như sau: Xem tại trang 80 của tài liệu.
Sau khi chọn xong file thì trong bảng “Free memory request” xuất hiện các địa chỉ đầu cuối, và dung lượng bộ nhớ sẽ sử  dụng. - Tài liệu Thiết kế giao tiếp máy tính với KIT 8085, chương 7 ppt

au.

khi chọn xong file thì trong bảng “Free memory request” xuất hiện các địa chỉ đầu cuối, và dung lượng bộ nhớ sẽ sử dụng Xem tại trang 81 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan