測溫微控制器設計徐志飛

2023-01-08 20:51:03 字數 4056 閱讀 7375

微控制器課程設計報告書

石家莊鐵道大學四方學院

2023年 7 月3日

測溫一、設計目的

1. 熟悉測溫的工作原理

2. 加深對微控制器程式語言的理解

3. 熟練掌握微控制器偉福實驗箱的使用

二、設計要求

1.通過按鍵設定溫度上、下限(比如20℃~80℃)

2.讀入a/d轉換資料,

若資料《下限,則顯示溫度並顯示l,並使乙個發光二極體點亮。

若資料》上限,則顯示溫度並顯示h,並使另乙個發光二極體點亮,

下限《若資料《上限,則顯示c

(可將ad訊號的0v~5v對應0℃~100℃)

(本機位址為06h,當接到上位機發的06h時,則回發06h

當接到上位機發的aah時,則將當前溫度發給上位機

當收到上位機發的55h時,則修改設定上、下限)

3、電路及連線設計

主機:p1.0--eoc

p1.5--d(燈)

p1.6--l1

p1.7--l3

(主機)rxd--txd(從機)

txd--rxd

p3.2--k0

cs0--key/led

cs1--ad/cs

in0--電位器

從機:p1.0--l0

p1.1--l1

p1.2--l2

p1.3--l3

p1.4--l4

p1.5--l5

p1.6--l6

p1.7--l7

四、使用說明

將電位器的旋轉轉換的數字值對應為相應的溫度值,通過旋轉電位器,對外部溫度進行改變。

當旋轉轉換的外部溫度值小於所限定的下限溫度值時,數碼管顯示l,並且,p1.0所對應的led燈閃亮

當轉換的溫度值大於所限定的上限溫度值時,數碼管顯示h,並且,p1.1所對應的led燈閃亮

當外部輸入溫度值介於所限定的溫度上限值和下限值之間時,數碼管顯示c,所有的燈均熄滅

原鍵盤按鍵:

各按鍵對應數值和設定為:

五、流程圖設計

六、程式設計如下:

主機程式:

org 0000h

ajmp main ;鍵盤掃瞄

org 0030h

ljmp begin

org 0030h

main:mov tcon,#01

mov scon,#50h ;01010000b,串列埠方式一,接收

mov tmod,#20h ;t1定時方式二

mov pcon,#00h ;波特率不倍增

mov ie,#00h

mov ip,#00h

mov th1,#0fah

mov tl1,#0fah

setb tr1

clr es

setb ex0

setb ea

mov 30h,#20h ;把溫度下限放在30位址單元

mov 31h,#02h ;把溫度下限的十位放在31單元

mov 32h,#00h ;把溫度下限的個位放在32單元

mov 33h,#80h ;把溫度上限放在33位址單元

mov 34h,#08h ;把溫度上限的十位放在34單元

mov 35h,#00h ;把溫度上限的個位放在35單元

loop:clr p1.5

setb p1.0

mov dptr , #9000h ;啟動數模轉換

movx @dptr , a

jnb p1.0 , $ ; 查詢是否轉換完

mov a , 31h ;轉換上下限

swap a

orl a , 32h

mov 30h , a

mov a , 34h

swap a

orl a , 35h

mov 33h , a

mov dptr , #9000h ;數模轉換

movx a , @dptr

mov 40h , a ;把檢測到的溫度放到40單元

mov b , #0ah

div ab

mov 41h,a ;把檢測到的溫度的十位放到41單元

mov 42h,b ;把檢測到的溫度的個位放的42單元

swap a

orl a,b

mov 40h,a

jnb ri,$

mov a,sbuf

clr ri

cjne a,#55h,fasong

setb ie0

mov a,31h

swap a

orl a,32h

mov 30h,a

mov a,34h

swap a

orl a,35h

mov 33h,a

clr p1.5

ajmp loop

fasong:jnc wendu

mov sbuf ,#06h

jnb ti,$

clr ti

ajmp follow

wendu:mov sbuf ,40h

jnb ti ,$

clr ti

follow:mov a,40h

clr c

cjne a ,30h ,step0

ajmp wdzc ;跳入溫度正常處理子程式

step0:jc wddc1 ;跳入溫度低處理子程式

cjne a,33h,step1

ajmp wdzc ;跳入溫度正常處理子程式

step1:jnc wdgc1 ; 跳入溫度高處理子程式

;跳入正常溫度處理程式

wdzc:mov a,#39h ;把字元c顯示

mov dptr,#8004h ; 斷碼位址

movx @dptr,a

mov dptr , #8002h ; 線選位址

mov a , #04h ; 選最後乙個led燈

movx @dptr,a

acall delay

mov a,41h ;最右邊第2個led燈顯示溫度的十位

mov dptr ,#table

movc a , @a+dptr

mov dptr ,#8004h

movx @dptr ,a

mov dptr ,#8002h

mov a , #02h

movx @dptr ,a

acall delay

mov a ,42h ;最右邊led燈顯示溫度的個位

mov dptr , #table

movc a , @a+dptr

mov dptr , #8004h

movx @dptr ,a

mov dptr , #8002h

mov a , #01h

movx @dptr , a

acall delay

clr p1.6

clr p1.7

clr p1.0

ajmp loop

wddc1 : setb f0

wdgc1:

mov a,41h;最右邊第2個led燈顯示溫度的十位

mov dptr , #table

movc a , @a+dptr

mov dptr , #8004h

movx @dptr , a

mov dptr , #8002h

mov a , #02h

movx @dptr , a

acall delay

mov a , 42h ;最右邊led燈顯示溫度的個位

mov dptr , #table

movc a , @a+dptr

mov dptr , #8004h

movx @dptr , a

mov dptr , #8002h

mov a , #01h

movx @dptr , a

acall delay

jb f0 , jsm ;根據溫度選擇警示

mov a , #76h ;顯示h字元

mov dptr , #8004h

movx @dptr , a

微控制器設計報告

微控制器課程設計 簡易數字頻率計 姓名 學號 專業 實驗時間 1 實驗目的 1.要求學生具有製作除錯微控制器最小系統及外設的能力,能夠掌握微控制器內部資源的使用。2.熟練掌握焊接技術的基礎上,能熟練使用微控制器軟體開發環境keil c51程式設計除錯,並使用stc isp除錯工具採用串列埠 方式聯調...

微控制器設計報告格式

電子課程設計報告 班級 b120408 設計題目 定時搶答器 一 設計目的 掌握解碼器 十進位制加 減計數器的邏輯功能和工作原理,設計可預置時間的定時電路 分析與設計時序控制電路。畫出定時搶答器的整機邏輯電路圖,掌握智力搶答器的工作原理及其設計方法,並對各種元器件的功能和應用有所了解。並能對其在電路...

微控制器設計廣告燈

微控制器作業班級 020811 學號 02081087 姓名 楊昕煜 廣告燈 利用取表方式 1 目標 利用取表的方法,使埠p1做單一燈的變化 左移2次,右移2次,閃爍2次 延時的時間0.2秒 2 電路原理圖 3 系統板上硬體連線 把 微控制器系統 區域中的p1.0 p1.7用8芯排線連線到 八路發光...