//
題目:運用微機系統序列口知識,進行微機系統序列口的測試;完成硬體測試環境;編寫程式對微機系統的串列埠進行自發自收的內環測試;資料傳送從鍵盤輸入,接受資料在螢幕上顯示。
不多bb,直接上**
.586
data segment use16
buf db 30 dup(?)
data ends
code segment use16
assume cs:code, ds:data
start:
mov ax, data
mov ds, ax
call i8250 ; 8250初始化
mov bx, offset buf
send:mov dx, 3fdh
in al, dx
test al, 20h
jz send
mov dx, 3f8h
mov ah, 1
int 21h
cmp al, '$'
jz cout
out dx, al
rece:mov dx, 3fdh
in al, dx
test al, 01h
jz rece ; 判斷一幀資料接收完整
mov dx, 3f8h
in al, dx
and al, 01111111b
cmp al, 03h
jz exit
mov [bx], al
inc bx
jmp send
cout:mov ah, 2
mov dl, 0ah
int 21h ; 游標下移一行
mov byte ptr [bx+1], '$'
mov ah, 09h
mov dx, offset buf
int 21h ; 顯示字元字串
exit:mov ah,4ch
int 21h ; 結束程式
i8250 proc
mov dx, 3fbh
mov al, 80h
out dx, al
mov dx, 3f9h
mov al, 0
out dx, al
mov dx, 3f8h
mov al, 30h
out dx, al
mov dx, 3fbh
mov al, 0ah
out dx, al
mov dx, 3f9h
mov al, 0
out dx, al
mov dx, 3fch
mov al, 10h
out dx, al
ret
i8250 endp
code ends
end start
輸入樣例123$
輸出樣例123
串列埠通訊實驗
晶振12mhz,波特率1200,程式啟動後微控制器主動發出hello server,pc使用串列埠助手應答微控制器,當微控制器收到pc發來的資料aah後,將30h 3fh的16個位元組傳送給pc,當51收到e0h時就發40h 5fh的32個位元組資料,若微控制器收到其他資料後,則不做任何修改返回pc...
數字系統實驗 串列埠通訊A
a級任務 本次實驗採用狀態圖形成vhdl檔案方法 之前的bcd級任務已經完成,得到的如下所示 名稱針腳號 輸入資料d7 d0 28 24,9 7 控制訊號rxf 144控制訊號txe 4控制訊號rd 143控制訊號wr 3傳送aa 傳送55 雙向傳輸 接下來是實現crc演算法,a級實驗實際上就是要求...
微控制器實驗 串列埠通訊實驗
實驗三 串列埠通訊實驗 內容 1 利用電腦串列埠與實驗台串列埠進行連線 2 根據幀格式定義 波特率定義,程式設計配置串列埠,並編寫控制程式 3 實現從電腦上輸入控制字元,由微控制器通過串列埠接收,並控制led顯示的功能 4 對所程式設計序進行除錯及驗證。要求 1 掌握波特率的概念 學會程式設計設定波...