微控制器 序列口實驗

2021-10-01 03:14:25 字數 2071 閱讀 6991

實驗目的和任務

目的:利用「模組化微控制器教學實驗平台」,加深對微控制器的序列口的理解。

任務:利用微控制器的序列口完成程式設計。

實驗內容

使用at89s52微控制器的序列口通過rs232通訊介面與pc機進行通訊,讓微控制器把接收到的每一幀資料(即pc機傳送給微控制器的每一幀資料)直接再傳送給pc機。(序列口波特率設定為9600bit/s,使用方式1)注意:使用串列埠除錯助手(baud 9600、資料位8、停止位1、效驗位無)作為上位機來向微控制器傳送資料和接收微控制器串列埠所發的資料,觀察串列埠除錯助手接收視窗。

實驗過程和結果

電路圖硬體連線:

母版

cpu

j57/j59rxd

p2p3.0

j57/j59txd

p2p3.1

用232串列埠線連線計算機的usb口和main_board的rs2/rs1串列埠。

注意:實驗箱的at89s52微控制器的晶振頻率為11.0592mhz!

實驗結果圖

實驗心得

實驗過程讓我熟悉了中斷程式和串列埠的編寫步驟和微控制器執行串列埠傳輸的工作流程。實驗中由於不熟悉中埠的相關暫存器分布和功能,導致錯誤設定了特殊功能暫存器,程式不能正常執行,後來在老師的指導下修改了程式和中斷入口位址,程式能正常執行並返回輸入內容。

附錄(**)

(1)基本實驗

org 0000h

ljmp main               

org 0023h

ljmp u

main: 

mov scon,#01010000b

setb es

setb ea

mov tmod,#00100000b

mov th1,#0fdh

setb tr1

ljmp $

u:clr ri

mov a,sbuf

mov sbuf,a

jnb ri,$

clr ri

reti

end(2)擴充套件實驗

org 0000h

ljmp main               

org 0023h

ljmp u

main: 

mov scon,#01010000b

setb es

setb ea

mov tmod,#00100000b

mov th1,#0fdh

setb tr1

setb t1      ;手動執行中斷

ljmp $

u:clr ri

mov sbuf,#68h

mov sbuf,#65h

mov sbuf,#6ch

mov sbuf,#6ch

mov sbuf,#6fh

mov sbuf,#26h

mov sbuf,#20h

mov sbuf,#77h

mov sbuf,#6fh

mov sbuf,#72h

mov sbuf,#6ch

mov sbuf,#64h

mov sbuf,#0dh

mov sbuf,#0ah

mov sbuf,#0ah

jnb ri,$

clr ri

ljmp u      ;傳送完畢後回到中斷程式頭部,迴圈傳送hello world

reti

end

序列非同步通訊 微控制器序列口介紹

序列口是微控制器與外界進行資訊交換的工具,8051微控制器的通訊方式有兩種 並行通訊 資料的各位同時傳送或接收。序列通訊 資料一位一位次序傳送或接收。非同步通訊 字元格式規定能使雙方把0和1串理解成同一種意義,原則上自由制定,通用角度使用標準如ascii 波特率即資料傳輸速率,每秒傳送的二進位制位數...

51微控制器序列口並 串 串 並轉換實驗

一 實驗內容 利用mcs 51微控制器p1.2做控制訊號 把並轉串單元的lock和串轉並單元的lock連線至p1.2。實現並轉串 串轉並,並把串轉並的資料送到發光二極體單元顯示。二 圖 三 c語言實現 74ls164 串入並出 74ls165 併入串出 include include define ...

51微控制器序列口速率設定

51微控制器速率設定公式波特率 sysclk 32 12 256 th1 ifndef monitor51 scon 0x50 scon mode 1,8 bit uart,enable rcvr tmod 0x20 tmod timer 1,mode 2,8 bit reload th1 221 ...