学校机械设计大赛,打算做一个温度控制电风扇速度或开关的东西.请问都需要什么东西?89C51,热敏传感器,数模转换..我只知道这些,还需要些什么?具体的信号和电路图最好能给我..

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/17 21:53:43

学校机械设计大赛,打算做一个温度控制电风扇速度或开关的东西.请问都需要什么东西?89C51,热敏传感器,数模转换..我只知道这些,还需要些什么?具体的信号和电路图最好能给我..
学校机械设计大赛,打算做一个温度控制电风扇速度或开关的东西.
请问都需要什么东西?89C51,热敏传感器,数模转换..我只知道这些,还需要些什么?具体的信号和电路图最好能给我..

学校机械设计大赛,打算做一个温度控制电风扇速度或开关的东西.请问都需要什么东西?89C51,热敏传感器,数模转换..我只知道这些,还需要些什么?具体的信号和电路图最好能给我..
我以前是搞风扇设计的,
1. 热敏电阻接法:图片参考:http://hi.baidu.com/thomaseed/
2. ADC0832接法查规格书就好




整体思路是:热敏电阻与10K电阻串联,到
建议使用ADC0832,
下面是程序,用到MAX7219,ADC0832,AT89C51
你修改一下就可以用:
;;
ORG 0000H
AJMP MAIN
ORG 0200H
MAIN: nop
nop
nop
nop
;以下根据硬件连线更改
;ADCS BIT P3.5 ;使能接口
;ADCLK BIT P3.4 ;时钟接口
;ADDO BIT P3.3 ;数据输出接口
;ADDI BIT P3.3 ;数据输入接口
CH EQU 30H ;通道选择寄存器
ADOUT_M EQU 31H ;数据输出寄存器
CLK BIT P1.0 ;
DIN BIT P1.1 ;定义变量
LOAD BIT P1.2 ;
adclk BIT P1.3
addo BIT P1.4
addi bit p1.4
adcs BIT P1.5
LED_BF EQU 50H ;显示数据首地址
rb0 bit 00h
clr rb0
MOV SP,#70H
LCALL PROCESS ;设置7219初值
temp: jnb p3.2,fun1
jnb p3.3,fun2
MOV 50H,#10H
MOV 51H,#10H
MOV 52H,#10H
MOV 53H,#10H
MOV 54H,#10H
MOV 55H,#10H
MOV 56H,#10H
MOV 57H,#10H
lcall display
ajmp temp
fun1: lcall delay10ms
jnb p3.2,start
ajmp temp
start: jnb p3.2,$
mov 5fh,#00h
MOV 50H,#10H
MOV 51H,#10H
MOV 52H,#10H
MOV 56H,#10H
MOV 57H,#10H
LCALL adconv
LCALL BIN_BCD
lcall display
jb p3.2,start
lcall delay10ms
jb p3.2,start
jnb p3.2,$
ajmp temp
ajmp start
fun2: lcall delay10ms
jnb p3.3,start1
ajmp temp
start1: jnb p3.3,$
LCALL adconv
lcall chcode
lcall tiaozheng
lcall display
jb p3.3,start1
lcall delay10ms
jb p3.3,start1
jnb p3.3,$
ajmp temp
;>>>>>>>>>>>>>>>>>> over,200609071053 a=? 小数点没有处理!
chcode:
;--------------bin>>0v~5v to display
cjne a,#128,chcode4
chcode0:mov r7,a
mov r6,#08h
mov r0,#led_bf
chcode2:mov @r0,#00h
inc r0
djnz r6,chcode2
chcode1: lcall chcodesun
djnz r7,chcode1
RET
chcode4:mov psw.1,c
cjne a,#00h,chcode5
mov 53h,#00
mov 54h,#00
ajmp chcodeexit
chcode5:mov c,psw.1
jc chcode0
inc a
ajmp chcode0
chcodesun:
clr c
mov r5,#07h
mov r0,#led_bf
mov a,r0
add a,#07h
mov r0,a
mov r6,#05h
mov dptr,#tab1
chcode3: mov a,r5
movc a,@a+dptr
addc a,@r0
da a
mov @r0,a
dec r5
dec r0
djnz r6,chcode3
chcodeexit: RET
tab1: db 10h,10h,10h,00h,19h,53h,12h,50h ;0.0195312
tiaozheng:
mov 50h,#10h
mov 51h,#10h
mov a,53h
rrc a
rrc a
rrc a
rrc a
anl a,#0fh
mov 52h,a
mov a,53h
anl a,#0fh
mov 53h,a
mov r5,54h
mov a,r5
rrc a
rrc a
rrc a
rrc a
anl a,#0fh
mov 54h,a
mov a,r5
anl a,#0fh
mov 55h,a
mov 56h,#10h
mov 57h,#10h
ret
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;------------BIN_BCD------------
BIN_BCD:
MOV B,#100
DIV AB
MOV 53h,A
MOV A,#10
XCH A,B
DIV AB
MOV 54H,A
MOV 55H,B
RET
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;cadb: clr cscad
; mov a,#03H
; mov R7,#03H
;LOOPB1: CLR clkcad
; RRC A
; MOV dacad,C
; NOP
; SETB clkcad
; nop
; DJNZ R7,LOOPB1
; CLR clkcad
; NOP
; SETB clkcad
; MOV R7,#08H
;LOOPB2: CLR clkcad
; NOP
; MOV C,dacad
; NOP
; RLC A
; SETB clkcad
; NOP
; nop
; DJNZ R7,LOOPB2
; SETB cscad
;RET
;---------------------------------------------
;---------------------------------------ADC0832读数据子程序
ADCONV:
MOV CH,#02H ;装入通道选择值
;(00H:CH0+CH1-,01H:CH0-CH1+,02H:CH+,03H:CH-)
SETB ADDI ;初始化通道选择
NOP
NOP
CLR ADCS ;拉低/CS端
NOP
NOP
SETB ADCLK ;拉高CLK端
NOP
NOP
CLR ADCLK ;拉低CLK端,形成下降沿
MOV A,CH
MOV C,ACC.1 ;确定取值通道选择
MOV ADDI,C
NOP
NOP
SETB ADCLK ;拉高CLK端
NOP
NOP
CLR ADCLK ;拉低CLK端,形成下降沿2
MOV A,CH
MOV C,ACC.0 ;确定取值通道选择
MOV ADDI,C
NOP
NOP
SETB ADCLK ;拉高CLK端
NOP
NOP
CLR ADCLK ;拉低CLK端,形成下降沿3
SETB ADDI
NOP
NOP
MOV R7,#8 ;准备送下后8个时钟脉冲
AD_1:
MOV C,ADDO ;接收数据
MOV ACC.0,C
RL A ;左移一次
SETB ADCLK
NOP
NOP
CLR ADCLK ;形成一次时钟脉冲
NOP
NOP
DJNZ R7,AD_1 ;循环8次
MOV C,ADDO ;接收数据
MOV ACC.0,C
MOV ADOUT_M,A
MOV R7,#8
AD_13:
MOV C,ADDO ;接收数据
MOV ACC.0,C
RR A ;左移一次
SETB ADCLK
NOP
NOP
CLR ADCLK ;形成一次时钟脉冲
NOP
NOP
DJNZ R7,AD_13 ;循环8次
CJNE A,ADOUT_M,ADCONV ;数据校验
SETB ADCS ;拉高/CS端
CLR ADCLK ;拉低CLK端
SETB ADDO ;拉高数据端,回到初始状态
RET
;---------------------------------------------
DISPLAY:
;将寄存器中的数字转换成相应的段码
;----------------------------------------------
ch_code: mov r1,#led_bf
mov r7,#08h
ch_code1:mov dptr,#tab
mov a,@r1
movc a,@a+dptr
mov @r1,a
inc r1
djnz r7,ch_code1
LCALL DISPLAY1
RET
;-----------------------------------------------
DISPLAY1:
;将相应的段码传入7219进行显示
;-----------------------------------------------
MOV R0,#LED_BF ;置显示区首址
MOV R4,#01H ;第一个LED
MOV R3,#08H ;显示个数
C_DISP: MOV A,@R0 ;
MOV B,A ;
MOV A,R4 ;
LCALL W_7219 ;
INC R0 ;数据地址增1
INC R4 ;LED增1
DJNZ R3,C_DISP ;
RET
;---------------------------------------------------
W_7219: CLR LOAD ;置LCAD=0
LCALL SD_7219 ;传送7219地址
MOV A,B ;
LCALL SD_7219 ;传送数据
SETB LOAD ;数据装载
RET
;--------------------------------------------------
SD_7219:MOV R6,#08H ;向7219传送地址或数据
C_SD: NOP ;
CLR CLK ;
RLC A ;
MOV DIN,C ;
NOP ;
SETB CLK ;
DJNZ R6,C_SD ;
RET
;-------------------------------------------------
PROCESS:MOV A,#0BH ;设置扫描界限
MOV B,#07H ;
LCALL W_7219 ;
MOV A,#09 ;设置不译码
MOV B,#00 ;
LCALL W_7219 ;
MOV A,#0AH ;设置亮度
MOV B,#09H ;19/32亮度
LCALL W_7219 ;
MOV A,#0CH ;设置正常工作方式
MOV B,#01 ;
LCALL W_7219 ;
RET
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
delay0:mov r6,#08h
delay01:djnz r6,delay01
ret
DELAY10ms:
mov r7,#10
DELAYA: MOV R6,0FFH
DELAYB: NOP
NOP
DJNZ R6,DELAYB
DJNZ R7,DELAYA
RET
;----------------------------------------------------
;----------共阴级--------
TAB: DB 03fH,06H,05bH,4fH,66H ;01234
DB 6dH,7dH,07H,7fH,6fH ;56789
DB 77H,7cH,39H,5eH,79H,71H ;ABCDEF
DB 40H,80H,00H ;- . 全灭
END

学校机械设计大赛,打算做一个温度控制电风扇速度或开关的东西.请问都需要什么东西?89C51,热敏传感器,数模转换..我只知道这些,还需要些什么?具体的信号和电路图最好能给我.. 一个电机1带动旋转的圆盘上,怎么样才能再加另一个电机2控制圆盘上其他构件的运动?现在在做机械设计大赛.很纠结,如果转起来感觉线会缠在一块儿.还有盘上的电机2,应该怎么控制它的转速, 功率控制电路图我想做一个电路,用个温度感应器来控制电压或电流,在通过电压或电流控制功率,永不断电同时可以省电提高加热器的使用寿命,谁有电路图? 求个数电高手帮助我做数电设计打算做音量控制电路设计 有许多地方不会送Q钻 做一个烘房,根据空间、时间、温度计算电热管的功率做一个烘房,长X宽X高=4.5米X4.5米X2.5米,如用30分钟时间将此烘房温度升到60℃,需要多少功率的电热管?(电热管打算用功率稍微小点,根数多 如何控制电热管的温度? 如何控制电热管的温度? 电炸锅温控器、接触器和一个开关(220V)怎么接能控制温度 我想自制一个电加热的铁板 ,该怎么弄,最好可以控制温度? 用以金属做一个开关间接控制继电器手上不能有电 怎样控制电热管的温度?改变它的电流就OK了吗,有没有一个计算公式呀? 电烘箱的温度应该控制在那个范围 电加热带的温度该如何控制? 电接点温度计与电磁阀如何控制温度 我想自己做一个焊台,请问能用功率来控制温度吗? 如何电加热铁板,我想自制一个电加热的铁板 ,该怎么弄,最好可以控制温度,有图表最好 活动宣传语我们学校要举办一个什么求职简历设计大赛,需要一段宣传语.就是给这个大赛做个广告,提高一下知名度.要求新颖,有想法.大家帮个忙, 机械设计作业怎么做啊