版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要本文介绍了采用ATmega48单片机实现恒速风扇控制器的方法。概括地说就是通过用ATmega48单片机控制双向可控硅的导通角的大小来实现对电机的转速控制,同时要将给定转速显示在DG03532液晶显示器的液晶屏上。由于单片机的工作电源为直流5V,电机为交流220V,需要从交流220V中整流出直流5V电源;双向可控硅的导通角分别通过转速上升键、转速下降键来实现,而且能适应不同工频电压下的工作环境。在硬件设计部分,运用Protel软件绘制出原理图,从原理图中所涉及的元件的选择开始介绍,对原理图进行了各部分的功能的实现进行讲解并详细解释所选元件值的计算方法。在软件设计部分,通过前面对AVR系列AT
2、mega48单片机的指令系统、硬件结构和管脚功能的具体介绍,用AVR的汇编语言编程并配合程序流程图对程序进行解释,使通过程序实现电机的转速控制和显示、双向可控硅触发功能以及DG03532液晶的显示驱动等功能,并通过对所编写程序在AVR Studio上的调试,验证了程序的正确性及可用性。关键词:小型单相异步电机 双向可控硅 DG03532液晶显示器 ATmega48ABSTRACTThis paper introduces the method that uses the ATmega48 single-chip to realize the constant speed ventilator
3、controller. Generally speaking, it uses ATmega48 single-chip to control the breakover angle size of the TRAIC to realize to control the speed of single-phase asynchronous motor, at the same time, it must make the given speed number display on the LCD, whose model is DG03532. Because the work power s
4、upply of the ATmega48 single-chip is 5V DC, and the work power supply of single-phase asynchronous motor is 220V AC, it must exchange the source from 220V AC to 5V DC using the rectification; it uses the up and down key of the speed to control the breakover angle size of the TRAIC, at the same time,
5、 it must adapt to different working environment that has different frequency.To design the part of hardware, it uses Protel to draw the schematic diagram. The paper also reduces the choice of components involved, the functions of the various parts involved, and the calculation methods of the value o
6、f the components. To design the part of software, with the information of the instruction system, the hardware structure and the function of the pin of the ATmega48 single-chip reduced above, the paper makes the procedure with assembly language and explains them with the procedure flow chat, in orde
7、r to make the functions mentioned above achieved, it uses AVR Studio to test the procedure to verify the procedure, and makes the procedure accurate and available.Key words: single-phase asynchronous motor TRAIC DG03532LCD ATmega48目录第一章概述11.1小型单相异步电机11.2 AVR单片机介绍11.3 ATmega48单片机21.4恒速风扇控制器的功能介绍71.5可
8、行性分析7第二章恒速风扇控制器的硬件设计82.1硬件总体设计82.2电路保护部分82.3单片机的电源部分92.4测速部分112.5转速控制部分132.6液晶显示部分142.7按键处理部分17第三章恒速风扇控制器的软件设计183.1软件总体设计183.2主程序183.3外部中断203.4定时器t1溢出中断213.5定时器t2溢出中断223.6 ATmega48与DG03532的驱动253.7调试与仿真28结束语32谢辞33参考文献34附录35第一章概述1.1小型单相异步电机1.1.1单相异步电机简介单相异步电动机(single-phase asynchronous motor)是靠220V单相交
9、流电源供电的一类电动机。其具有结构简单、价格低廉、坚固耐用、维护量少及可用于恶劣环境等优点并已得到了极其广泛的应用。它适用于只有单相电源(single-phase power)的小型工业设备和家用电器中1。单相异步电动机有单相电容运转式、单相电容起动式、单相双值电容起动式、单相罩极式等。也可以分为带离心起动开关的单相电动机和不带离心开关的单相电动机。单相异步电动机大都为1.5kw以下的小功率电动机或者微特电动机,功率虽然小,但在市场上的占有量却很大,因此研究与发展其调速方式具有现实意义。1.1.2单相异步电机的常用调速方法单相异步电动机常用的调速方法有调压调速、变极调速和变频调速3种方式。所谓
10、调压调速是指改变供电电压时,电磁转矩特性曲线和机械特性曲线交点也随之改变,故能用改变电压实现调速。对于调压调速来说,单相异步电动机通常拖动的是通风性负载,如风扇等。负载转矩不是恒定常数,而是随转速增加而增加的,表示为Mna(a1)。目前多采用双向晶闸管对电压作相位控制来实现调压调速。对于变极调速来说,可利用改变极对数p来改变转速n的。显然,该方法虽然简易,但不能实现无级调速。对于变频调速来说,可将单相电容运转式电动机绕组接入单相电源输入/单相输出变频器。若用一般的三相变频器对单相异步电动机调速,可将绕组接于变频器的输出端(U、V、W)的任意两端进行控制。该方法解决了高频对电容的危害以及影响副绕
11、组的移相角度等问题,此方法虽调速成本虽低,但范围较小,低速转矩较差。也可以应用变频调速器将单相电动机改为双相电动机来实现变极调速。但由于解决变频器给调速带来的难题,采用了多个功率元件,成本较高2。对于小功率系统来说,变频调速成本比较高,变极调速只能调定几个固定的速度,而调压调速不仅成本比较低,还可以实现速度连续可调,所以本设计中选择采用调压调速,并通过采用双向可控硅对电压做相位控制以实现对单相异步电机的调速。1.2 AVR单片机介绍AVR单片机是Atmel公司1997年推出的RISC单片机。RISC(精简指令系统计算机)是相对于CISC(复杂指令系统计算机)而言的。RISC并非只是简单地去减少
12、指令,而是通过使计算机的结构更加简单合理而提高运算速度的。RISC优先选取使用频率最高的简单指令,避免复杂指令:并固定指令宽度,减少指令格式和寻址方式的种类,从而缩短指令周期,提高运行速度。由于AVR采用了RESC的这种结构,使AVR系列单片机都具备了1MIPS/MHz(百万条指令每秒/兆赫兹)的高速处理能力。AVR单片机吸收了DSP双总线的特点,采用Harvard总线结构,因此单片机的程序存储器和数据存储器是分离的,并且可对具有相同地址的程序存储器和数据存储器进行独立的寻址。在AVR单片机中,CPU执行当前指令时取出将要执行的下一条指令放入寄存器中,从而可以避免传统MCS51系列单片机中多指
13、令周期的出现。传统的MCS51系列单片机所有的数据处理都是基于一个累加器的,因此累加器与程序存储器、数据存储器之间的数据转换就成了单片机的瓶颈;在AVR单片机中,寄存器由32个通用工作寄存器组成,并且任何一个寄存器都可以充当累加器,从而有效地避免了累加器的瓶颈效应,提高了系统的性能。AVR单片机具有良好的集成性能。AVR系列的单片机都具备在线编程接口,其中的Mega系列还具备JTAG仿真和下载功能;都含有片内看门狗电路、片内程序Flash、同步串行接口SPI;多数AVR单片机还内嵌了AD转换器、EEPROM、摸拟比较器、PWM定时计数器等多种功能;AVR单片机的I/O接口具有很强的驱动能力,灌
14、电流可直接驱动继电器、LED等器件,从而省去驱动电路,节约系统成本。AVR单片机采用低功率、非挥发的CMOS工艺制造,除具有低功耗、高密度的特点外,还支持低电压的联机Flash,EEPROM写入功能。AVR单片机还支持Basic、C等高级语言编程。采用高级语言对单片机系统进行开发是单片机应用的发展趋势。对单片机用高级语言编程可很容易地实现系统移植,并加快软件的开发过程。AVR单片机系列齐全,可适用于各种不同场合的要求。AVR单片机共分为三个系列:低档:ATtiny;中档:AT90;高档:ATmega。1.3 ATmega48单片机1.3.1 ATmega48单片机的简介ATmega48是基于A
15、VR增强型RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega48的数据吞吐率高达1MIPS/MHz,从而可以缓解系统在功耗和处理速度之间的矛盾3。AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算术逻辑单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。ATmega48有如下特点:4K字节的系统内可编程Flash(具有在编程过程中还可以读的能力,即RWW),256字节EEPROM,512字节SRAM,23个通用
16、I/O口线,32个通用工作寄存器,三个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,面向字节的两线串行接口,一个SPI串行端口,一个6路10位ADC(TQFP与MLF封装的器件具有8路10位ADC),具有片内振荡器的可编程看门狗定时器,以及五种可以通过软件选择的省电模式。空闲模式时CPU停止工作,而SRAM、T/C、USART、两线串行接口、SPI端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作,寄存器的内容则一直保持;省电模式时异步定时器继续运行,以允许用户维持时间基准,器件的其他部分则处于睡眠状态;ADC噪
17、声抑制模式时CPU和所有的I/O模块停止运行,而异步定时器和ADC 继续工作,以减少ADC转换时的开关噪声;Standby模式时振荡器工作而其他部分睡眠,使得器件只消耗极少的电流,同时具有快速启动能力4。ATmega48是以Atmel的高密度非易失性内存技术生产的。片内ISPFlash可以通过SPI接口、通用编程器,或引导程序进行多次编程。引导程序可以使用任意接口将应用程序下载到应用Flash存储区。在更新应用Flash存储区时引导程序区的代码继续运行,从而实现了FLASH的RWW操作。通过将8位RISC CPU与系统内可编程的Flash集成在一个芯片内,ATmega48为许多嵌入式控制应用提
18、供了灵活而低成本的方案。ATmega48AVR有整套的开发工具,包括C编译器,宏汇编,程序调试器/仿真器和评估板。1.3.2 ATmega48单片机的引脚介绍ATmega48单片机的TQFP封装引脚如图1-1所示。图1-1ATmega48单片机TQFP封装的引脚图ATmega48单片机的引脚介绍:VCC:数字电路的电源。GND:地。端口B(PB7PB0)XTAL1/XTAL2/TOSC1/TOSC2:端口B为8位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系
19、统时钟还未起振,端口B保持为高阻态。通过对系统时钟选择位的设定,PB6可作为反向振荡放大器与内部时钟操作电路的输入。通过对系统时钟选择位的设定,PB7可作为反向振荡放大器的输出。系统使用内部RC振荡器时,通过设置ASSR寄存器的AS2位,可以将PB7、PB6作为异步定时器/计数器2的输入口TOSC2、TOSC1使用。端口B也可以用做其他不同的特殊功能,见表1-1。表1-1端口B的第二功能端口引脚第二功能PB7XTAL2(芯片时钟振荡器引脚2)TOSC2(定时器振荡器引脚2)PCINT7(引脚电平变化中断7)PB6XTAL1(芯片时钟振荡器引脚1或外部时钟输入)TOSC1(定时电平器振荡器引脚1
20、)PCINT6(引脚变化中断6)PB5SCK(SPI总线主时钟输入)PCINT5(引脚变化中断5)PB4MISO(SPI总线主机输入/从机输出)PCINT4(引脚电平变化中断4)PB3MOSI(SPI总线主输/从输入)OC2A(定时器/计数器2输出比较匹配A输出)PCINT3(引脚电平变化中断3)PB2(SPI总线主从选择)OC1B(定时器/计数器1输出比较匹配B输出)PCINT2(引脚电平变化中断2)PB1OC1A(定时器/计数器1输出比较匹配A输出)PCINT1(引脚电平变化中断1)PB0ICP1(定时器/计数器1输入捕捉输入)CLKO(系统时钟分频输出)PCINT0(引脚电平变化中断0)
21、端口C(PC5PC0):端口C为7位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口C保持为高阻态。PC6/:RSTDISBL位被编程时,可将PC6作为一个I/O口使用。因此,PC6引脚与端口C其他引脚的电特性是有区别的。RSTDISBL位未编程时,PC6将作为复位输入引脚Reset。此时,即使系统时钟没有运行,该引脚上出现的持续时间超过最小脉冲宽度的低电平将产生复位信号。持续时间不到最小脉冲宽度的低电平不会产生复位信号。端口C也可以用做其
22、他不同的特殊功能,见表1-2。表1-2端口C的第二功能端口引脚第二功能PC6(复位引脚)PCINT14(引脚电平变化中断14)PC5ADC5(ADC输入通道5)SCL(两线串行总线接口时钟线)PCINT13(引脚电平变化中断13)PC4ADC4(ADC输入通道4)SDA(两线串行总线接口数据输入/输出线)PCINT12(引脚电平变化中断12)PC3ADC3(ADC输入通道3)PCINT11(引脚电平变化中断11)PC2ADC2(ADC输入通道2)PCINT10(引脚电平变化中断10)PC1ADC1(ADC输入通道1)PCINT9(引脚电平变化中断9)PC0ADC0(ADC输入通道0)PCINT
23、8(引脚电平变化中断8)端口D(PD7PD0):端口D为8位双向I/O口,并具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D呈现为三态。端口D也可以用做其他不同的特殊功能,见表1-3。表1-3端口D的第二功能端口引脚第二功能PD7AIN1(模拟比较器负输入)PCINT23(引脚电平变化中断23)PD6AIN0(模拟比较器负输入)OC0A(定时器/计数器0输出比较匹配A输出)PCINT22 (引脚电平变化中断22)PD5T1(定时器/计数器1外部计数器输入
24、)OC0B(定时器/计数器输出比较输出)PCINT21(引脚电平变化中断21)PD4XCK(USART外部时钟输入/输出)T0 (定时器/计数器0外部计数器输入)PCINT20(引脚电平变化中断20)PD3INT1(外部中断1输入)OC2B(定时器/计数器2输出比较匹配B输出 )PCINT19(引脚电平变化中断19)PD2INT0(外部中断0输入)PCINT18(引脚电平变化中断18)PD1TXD(USART输出引脚)PCINT17(引脚电平变化中断17)PD0RXD(USART输入引脚)PCINT16(引脚电平变化中断16)AVCC:AVCC为A/D转换器的电源。当引脚PC3PC4与PC7、
25、PC6用于ADC时,AVCC应通过一个低通滤波器与VCC连接。不使用ADC时该引脚应直接与VCC连接。PC6PC4的电源则是由VCC提供的。AREF:AREF为ADC的模拟基准输入引脚。ADC7、ADC6(TQFP与MLF封装):TQFP与MLF封装芯片的ADC7、ADC6引脚为两个10位A/D转换器的输入口,它们的电压由AVCC提供。同时嵌入式仪器仪表的开发和概念的探讨正如火如荼的进行,其功能的实现大多通过各种各样的单片机编程来实现而且AVR系列单片机目前在国内得到广泛的应用,相关资料丰富,功能成熟,可见选用ATmega48单片机为设计提供了良好的软件条件。1.4恒速风扇控制器的功能介绍基于
26、ATmega48单片机的恒速风扇控制器主要是针对小型单相异步电机的设计。具体的功能是通过用ATmega48单片机控制双向可控硅的导通角的大小来实现对电机的转速控制,同时要将给定转速显示在DG03532液晶显示器的液晶屏上。由于单片机的工作电源为直流5V,电机为交流220V,需要从交流220V中整流出直流5V电源;双向可控硅的导通角分别通过转速上升键、转速下降键来实现,而且能适应不同工频电压下的工作环境。1.5可行性分析一方面,通过前面对ATmega48单片机的介绍可知,其功能成熟,目前正在被广泛使用,而且学校能够为我们提供AVR单片机仿真器,可以对控制器的软件部分进行仿真,同时我们的指导教师常
27、年参与嵌入式仪器仪表的开发、研究及现场应用,在这方面有丰富的单片机开发经验和理论知识,使我们能够更好的掌握相关方面的知识。另一方面,ATmega48单片机的价格便宜,并且设计所需双向可控硅、电感、电容和电阻等元件都在一元钱以下,设计的成本很低,具有经济可行性。第二章恒速风扇控制器的硬件设计2.1硬件总体设计在恒速风扇控制器的硬件设计中,主要实现的功能是电路保护、提供单片机的工作电源、测速、转速控制、液晶显示和按键的处理等。其中主要的元件包括双向可控硅、DG03532液晶显示器、槽型光耦H42B6、安规电容、稳压管和ATmega48单片机等。在设计原理图时,根据主要元件的特性,选用合适的电容和电
28、阻将主要元件连接起来,在保护电路和元件不受损坏的前提下,使得原理图中各部分功能得以实现5。2.2电路保护部分在原理图中起电路保护作用的部分如图2-1所示。C1=C2=0.01f,C3=0.22f。图2-1电路保护部分电路工作时,P1和P2接220V交流电压。电容C1和C2串联再与安规电容C3并联,对电网起保护作用,防止后面的电路的电流过大对电网造成冲击。上面提到的安规电容是指用于这样的场合,即电容器失效后,不会导致电击,不危及人身安全。根据IEC 60384-14,安规电容器分为X电容及Y电容。X电容是跨接在火线和零线(L-N)之间的电容,一般选用金属薄膜电容;Y电容是分别跨接在火线和地、零线
29、和地之间(L-G,N-G)的电容,一般是成对出现。(L=Line,N=Neutral,G=Ground)X电容底下又分为X1,X2,X3。主要差别在于:1、X1耐高压大于2.5kV,小于等于4kV;2、X2耐高压小于等于2.5kV;3、X3耐高压小于等于1.2kV。Y电容底下又分为Y1,Y2,Y3,Y4。主要差别在于:1、Y1耐高压大于8kV;2、Y2耐高压大于5kV;3、Y3耐高压n/a;4、Y4耐高压大于2.5kV。基于漏电流的限制,Y电容值不能太大,一般X电容是F级,Y电容是nF级。X电容抑制差模干扰,Y电容抑制共模干扰。所以,本设计中选用的是X3电容,C3=0.22f。而且有了安规电容
30、的存在,对电路起到更好的保护作用。2.3单片机的电源部分在原理图中单片机的电源部分如图2-2所示。C4=1f,C5=47f,C6=0.1f。图2-2单片机的电源部分由于单片机的工作电源为直流5V,电机为交流220V,需要从交流220V中整流出直流5V电源;由于二极管D1单向导通作用,原理图中的整流部分相当于半波整流6。图2-2中ZW1为稳压管。稳压二极管也称齐纳二极管或反向击穿二极管,在电路中起稳定电压作用。稳压二极管在电路中常用“ZW”加数字表示。它是利用二极管被反向击穿后,在一定反向电流范围内反向电压不随反向电流变化这一特点进行稳压的。稳压二极管通常由硅半导体材料采用合金法或扩散法制成,是
31、一个特殊的面接触型的半导体硅二极管。它既具有普通二极管的单向导电特性,又可工作于反向击穿状态。其伏安特性曲线与普通二极管相似,但反向击穿曲线比较陡,如图2-3所示。稳压管在反向电压较低时,反向电流很小,稳压二极管截止;当反向电压增高到击穿电压时,反向电流突然猛增,稳压管从而反向击穿,稳压二极管进入击穿区,此后,电流虽然在很大范围内变化,稳压二极管两端的反向电压也能保持基本不变。利用这一特性,稳压管就在电路到起到稳压的作用了。但若反向电流增大到一定数值后,稳压二极管则会被彻底击穿而损坏。稳压管与其它普通二极管不同之处在于反向击穿是可逆的,当去掉反向电压稳压管又恢复正常,但如果反向电流超过允许范围
32、,二极管将会发热击穿,所以,与其配合的电阻往往起到限流的作用。图2-3稳压管伏安特性曲线从上面对稳压管的介绍可知,当把稳压管接入电路以后,若由于电源电压发生波动,或其它原因造成电路中各点电压变动时,负载两端的电压将基本保持不变,即保证整流输出的电压稳定在5V。同时电容C5的低频滤波作用和电容C6的高频滤波作用,再次确保整流输出的电压稳定在5V。电容C4在此处起到电容降压的作用,电容降压实际上是利用容抗限流,即利用电容在一定的交流信号频率下产生的容抗来限制最大工作电流。例如,在50Hz的工频条件下,一个1uF的电容所产生的容抗(1/2fC)约为3180欧姆。当220V的交流电压加在电容器的两端,
33、则流过电容的最大电流约为70mA,半波整流时则为35mA。而后面电路中所需电流之和小于35mA,所以此处电容值选为C4=1f。2.4测速部分在原理图中测速部分如图2-4所示。R5=330。图2-4测速部分图2-4中IC3为槽型光耦H42B6。H42B6是由原装进口高发射功率的砷化镓(砷铝镓)红外发射管和高灵敏度的光敏晶体管组成。它是利用被检测物对光束的遮挡,由同步选通电路,从而检测物体的有无。在恒速风扇控制器中主要是用来时刻检测单相异步电机的速度。内部电路示意图如图2-5所示。图2-5内部结构示意图H42B6具有以下特点:1、 易安装、高可靠性;2、 响应速度快,光缝0.8mm;3、 槽宽6m
34、m,脚距14.4mm;H42B6的极限参数和光电特性如表2-1和表2-2所示。表2-1H42B6的极限参数 (Ta=25)项目符号数值单位输入耗散功率P80mW反向电压VR5V正向电流IF50mA输出集电极功耗PC50mW集电极电流IC20mA集-射电压VCEO30V射-集电压VECO5V工作温度Topr-20+65储存温度Tstg-20+75焊接温度Tsol240表2-2H42B6的光电特性 (Ta=25)项目符号测试条件最小典型最大单位输入正向压降VFIF=10mA-1.31.6V反向电流IRVR=5V-10A波长PI=10mA-940-rm输出集电极暗电流ICEOE=0mW/cm2VCE
35、=20V-1A集电极光电流ILVCE=5VIF=10mA0.5-mA饱和压降VCE(sat)IF=10mA IC=mA-0.4V传输特性上升时间TrVCE=5V IC=2mARL=100-5-s下降时间Tf-5-s图2-6H42B6的正向电流与正向电压的曲线图H42B6的正向电流与正向电压的曲线图如图2-6所示。从上面对槽型光耦的介绍可知,输入端在IF=10mA的测试条件下,典型的正向压降VF=1.3V,最大的正向电压VF=1.6V(见表2-2)。R5处在正向输入端,当VF=1.3V时,R5=(5-1.3)/0.01=370;当VF=1.6V时,R5=(5-1.6)/0.01=340,R5在3
36、40和370之间,但考虑到实际电阻标称值的大小,这里选取R5=330。2.5转速控制部分在原理图中转速控制部分如图2-7所示。R6=250。图2-7转速控制部分图2-7中T3为双向可控硅。普通可控硅(VS)实质上属于直流控制器件。要控制交流负载,必须将两只可控硅反极性并联,让每只SCR控制一个半波,为此需两套独立的触发电路,使用不够方便。双向可控硅亦称为双向晶闸管,其英文名称是TRIAC即三端双向交流开关。双向可控硅是在普通可控硅(SCR)的基础上发展而成的,它不仅能代替两只反极性并联的可控硅,而且仅需一个触发电路,是目前比较理想的交流开关器件。双向可控硅可广泛用于工业、交通、家用电器等领域,
37、实现交流调压、电机调速、交流开关、路灯自动开启与关闭、温度控制、台灯调光、舞台调光等多种功能,它还被用于固态继电器(SSR)和固态接触器电路中。双向可控硅中型号为BTA16和BTA20是高性能玻璃钝化PNPN零件。这些零件适用于需要高冲击电流能力的一般应用上。例如,应用于相位控制和在电感或电阻负荷的静态开关7。尽管从形式上可将双向可控硅看成两只普通可控硅的组合,但实际上它是由7只晶体管和多只电阻构成的功率集成器件。小功率双向可控硅一般采用塑料封装,有的还带散热板。双向可控硅属于NPNPN五层器件,它是三端元件,其三端分别为T1(第二端子),T2(第一端子)和G(控制极)亦为一闸极控制开关,与S
38、CR最大的不同点在于TRIAC无论处于正向或反向电压时皆可导通,因此除控制极G以外的两个电极(T1、T2)统称为主端子外,不再划分成阳极或阴极。其符号和构造如图2-8所示。(a)符号 (b)构造图2-8TRIAC的符号和构造双向可控硅可用直流信号、交流相位信号及脉冲信号触发。由于双向可控硅是能双向导通的,它的正负半周均能触发,控制极电压VG极性与主端子间电压VT1T2四种组合分别如下:1. VT1T2为正,VG为正。2. VT1T2为正,VG为负。3. VT1T2为负,VG为正。4. VT1T2为负,VG为负。一般最好使用在对称情况下(1与4或2与3),以使正负半周能得到对称的结果。最方便的控
39、制方法则为1与4的控制状态,因为控制极信号与VT1T2同极性。在恒速风扇控制器的设计中,选用的就是型号为BTA16或BTA20的双向可控硅,通过ATmega48单片机控制它的导通角的大小实现对电机的转速控制。由于双向可控硅的控制级的导通电流为220mA,R6=5/0.02=250,R6=5/0. 2=2.5K,R6值在250和2.5K之间,最后选取R6=250。2.6液晶显示部分在原理图中液晶显示部分如图2-9所示。图2-9液晶显示部分图2-9中Y1是DG03532液晶显示器。液晶显示器大致可以分为两种:字段式和点阵式。前者所显示的图形是可以向厂家定制的,同样可以显示各种固定的图像,多用于图形
40、界面比较固定的场合。后者可以组成任意图形,显示功能强大,但是需要专门的驱动电路8。设计中所用的液晶显示器是DG03532字段式液晶显示器,它是一种TN型液晶显示器,显示界面和引脚排列见图2-10。图2-10DG03532液晶显示器界面当DG03532与ATmega48连接时,只需与ATmega48芯片上普通I/O口相连接。由第一章对ATmega48单片机的引脚介绍中得知,图2-9中ATmega48与DG03532所连接的引脚都符合要求。对于DG03532型号的液晶显示器来说,只有两个底电极COM1和COM2,只需要两个引脚实现高阻态并且电压能够稳定地处于2.5V,且不消耗电流,由于此处电压为5
41、V,只需要求电阻值相等,可选任何阻值,可保证电阻2.5V的稳定电压,所以选取R1=R2=R3=R4=200K。如图2-11所示。图2-111COM和2COM的连接2.7按键处理部分在原理图中按键处理部分如图2-12所示。图2-12按键处理部分按键只需与ATmega48芯片中带有上拉电阻的引脚相连接。从关于第一章对ATmega48单片机的引脚介绍中得知,引脚PD0、PD1和PD3均带有上拉电阻。第三章恒速风扇控制器的软件设计3.1软件总体设计在恒速风扇控制器的软件设计中,用AVR汇编语言进行编写程序。程序的功能是通过用ATmega48单片机的转速上升键和下降键控制双向可控硅的导通角的大小并且而且
42、能适应不同工频电压下的工作环境,同时,要将单相异步电机的给定转速显示在DG03532液晶显示器的液晶屏上。将编写好的程序在AVR Studio上进行反复的调试与仿真,使得所编写的程序正确和可靠。3.2主程序主程序主要的作用是单片机上电后,进行初始化堆栈、初始化引脚、初始化内存、初始化定时器和中断设置,并开中断,等待中断的到来去执行相应的子程序。主程序的流程图如图3-1所示。初始化引脚开总中断等待中断发生初始化堆栈上电初始化内存初始化定时器及中断设置图3-1主程序流程图具体程序如下:reset:nop ;初始化堆栈ldi r16,high(ramend)out sph,r16ldi r16,lo
43、w(ramend)out spl,r16nop;初始化引脚;配置引脚;PB口、PD口、PC口;PD0,PD1,PD2,PD3,PD4,PD5输入,PD6为输出ldi r16,(0ddd0)|(0ddd1)|(0ddd2)|(0ddd3)|(0ddd4)|(0ddd5)|(1ddd6)out ddrd,r16sbi pind,ctrl;测试,pd0 pd1为高sbi pind,keyupsbi pind,keydowncbi pind,keywrk;初始化内存ldi r16,0ldi r17,50ldi r29,high(sram_start)ldi r28,ow(sram_start)clea
44、r:st y+,r16 dec r17 brne clear;PB05为输出ldi r16,(1ddb0)|(1ddb1)|(1ddb2)|(1ddb3)|(1ddb4)|(1ddb5)out ddrb,r16;PC0为输出,PC1、2为输出,PC6暂为输入(RESET输入端)ldi r16,(1ddc0)|(1ddc1)|(1ddc2)|(0ddc6)out ddrc,r16 nop clr r16 sts u_k_r,r16 sts d_k_r,r16 out tcnt0,r16 sts TCNT1H,r16 sts TCNT1L,r16 ser r16 sts stop,r16;int0
45、配置为下降沿触发ldi r16,(1isc01)|(0isc00)sts eicra,r16;int0中断使能ldi r16;(1int0)out eimsk,r16;t2ldi r16,ht2tsts tcnt2,r16sts tccr2b,r16;开定时器t1和t2中断ldi r16,1toie1sts timsk1,r16ldi r16,1toie2sts timsk2,r16rcall inictrldi r16,zearosts degree,r16rcall getledrcall getangrcall getoutseiloop: nop nop nop nop nop nop
46、 nop rjmp loop.exit3.3外部中断外部中断通过引脚INT0与INT1或PCINT23PCINT0触发。也就是说外部中断可以是电平引发中断,也可以时下降沿引发中断。所谓电平中断,只要使能了中断,即使引脚INT0与INT1或PCINT23PCINT0配置为输出,只要电平发生了合适的变化,中断也会触发。这个特点可以用来产生软件中断。只要使能,PCINT23PCINT0引脚上的电平变化将触发外部中断PCI2,PCINT14PCINT8引脚上的电平变化将触发外部中断PCI1,PCINT7PCINT0将触发外部中断PCI0。PCMSK2、PCMSK1与PCMSK0寄存器则用来检测是哪个引
47、脚上的电平发生了变化。PCINT23PCINT0外部中断的检测是异步的。也就是说,和其他中断方式一样,这些中断也可以用来将器件从休眠模式唤醒。通过电平中断将MCU从掉电模式唤醒时,要保证低电平保持一定的时间以使MCU完成唤醒过程并触发中断。如果触发电平在启动时间结束前就消失,MC将被唤醒,但中断不会被触发。启动时间由熔丝位SUT与CKSEL决定。INT0与INT1中断可以由下降沿、上升沿,或者是低电平触发。具体由外部中断控制寄存器A-EICRA的设置来确定。当INT0或INT1中断使能且设定为电平触发时,只要引脚电平被拉低,中断就会产生。若要求INT0或INT1在信号下降沿或上升沿触发中断,则
48、I/O时钟必须工作。INT0与INT1的低电平中断检测是异步的。也就是说它可以用来将器件从休眠模式唤醒。在休眠过程(除了空闲模式中I/O时钟)是停止的。设计中选用的是外部中断0的下降沿中断。当处于上电工作状态时,外部中断0用作参数计算,主要用于计算电源电压的频率。当处于正常工作状态时,外部中断0用作同步信号,计算脉冲相隔的时间。外部中断0的程序流程图如图3-2所示。引脚电平产生下降沿,进入中断处理程序计算相关参数给t1付初值并启动返回前两次进入中断YN图3-2外部中断0的程序流程图3.4定时器t1溢出中断定时器t1溢出中断用作双向可控硅的移相触发脉冲,与触发脉冲程序一起完成对双向可控硅触发角的
49、控制,进而控制实现对单相异步电机的转速控制。定时器t1溢出中断控制双向可控硅的程序流程图如图3-3所示。t1溢出中断产生状态是0还是1?ctrl引脚置低电平脉冲宽度计数初值送t1寄存器ctrl引脚置高电平返回状态转为1状态转为0下次触发的计数初值送t1寄存器01图3-3定时器t1溢出中断控制双向可控硅的程序流程图3.5定时器t2溢出中断定时器t2溢出中断的作用是显示DG03532的驱动、对按键进行处理、检测单相异步电机的转速以及对转速进行调整等。定时器t2溢出中断的程序流程图如图3-4所示,按键处理及读键子程序流程图如图3-5所示,检测转速及调整转速子程序流程图如图3-6所示。进入t2中断处理
50、程序判断是否有按键?改变转速给定值显示给定转速中断返回与给定转速不同?t1计数并计算实际转速调整触发角YYNN图3-4定时器2溢出中断的程序流程图进入10ms定时中断处理程序有按键?状态加1状态为4?调用键处理程序状态清零返回NNYY图3-5按键处理及读键子程序流程图进入10ms定时中断计数脉冲已持续100ms计算出实际转速重新开始脉冲计数调整触发角返回5?YYNN图3-6检测转速及调整转速子程序流程图3.6 ATmega48与DG03532的驱动3.6.1 ATmega48单片机的I/O引脚特性ATmega48是ATMEL公司生产的一种高性能、低功耗的8位AVR微处理器,也是一种性价比很高的
51、单片机。我们这里需要注意的是它的I/O端口特性。当作为通用数字I/O使用时,AVR所有的I/O端口或者引脚都可以通过指令来改变引脚的状态。它的每个端口有3个寄存器,分别为数据寄存器PORTx、数据方向寄存器DDRx和端口输入引脚PINx。通过配置,可以使某个引脚处于高电平、低电平或者高阻态。3.6.2 DG03532的驱动方法液晶显示器有很多参数,但是与驱动方式有关的参数只有两个9:一个是“偏置”,指熄灭时的信号幅度与显示时的信号幅度之比;另一个是“占空比”,一般情况下,为了减少引脚数目,通常几个“段”的电极会连在一起由一个引脚引出,在一个显示周期内各段轮流显示,每个段的显示时间与显示周期之比
52、称为显示占空比。设计中所用DG03532液晶显示器其驱动方式为1/2D,1/2B,各个引脚对应的电极见表3-1。DG03532字段式液晶显示器的内部构造见图3-7。从图3-7中可以看出,面电极是成对相连的,而底电极则只引出两个引脚。因为这种型号的LCD是1/2D的液晶显示器,如果COM1引脚所加电平为0V,则面电极引脚所加信号为5V时,对应的段就显示;反之,COM1为5V,面电极信号为0V时,同样显示。只有在COM1为2.5V时,无论面电极加5V还是0V电平,对应的段都不显示。图3-7DG03532液晶显示器的内部构造表3-1DG03532液晶显示器各个引脚信息驱动程序主要包括底电极固定波形的
53、产生以及面电极的显示信号。按照以下驱动思路:底电极上的波形固定,用来在特定的时间上与其相对应的面电极能够显示或者禁止显示。对于DG03532来说,加在两个COM端的波形见图3-8。可见,如果有两个COM端的话,加在底电极上的波形就可以分为4个状态:S0,S1,S2和S3。如果有3个COM端的话,就可以有6个状态。如果想让对应的字段能够显示,就给相应引脚加上高电平或者低电平,否则给相应引脚上加上熄灭时的驱动信号幅值(这里为2.5V)即可。在底电极有效的时候,给对应的面电极加上与底电极相反的信号即可显示出字段来10。图3-8COM1和COM2引脚的波形3.6.3液晶显示程序跟大多数程序一样,我们这
54、里把显示的段码存放在一个表中,通过查表来得到需要送出的段码。数字09对应的段码为:;segdef 0 1 2 3 4 5 6 7 8 9 (按共阴方式定义);高位到低位:分别对应GFEDCBAsegd1:.db $00,$06,$5b,$4f,$66,$6d,$7d,$07,$7f,$6fsegd2:.db $3,$06,$5b,$4f,$66,$6d,$7d,$07,$7f,$6f其中,segd1部分对应高位(COM1)段码(为0时全灭),segd2部分对应低位(COM2)段码。面电极的信号(暂存在寄存器r16中,通过查表得到)可以由子程序outdis送出。具体如下:;这里我们假定PB,PC的其他引脚悬空,对显示无影响outdis:noppush r16lsl r16;将查表得到的值左移两位,使其与相应引
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文化娱乐行业安全管理工作总结
- 区块链行业助理工作描述
- 小学安全工作总结集锦六篇
- 美容美发店卫生要求
- 银行保险行业助理职责总结
- 车辆行业前台服务经验分享
- 教育科研话务员工作总结
- 2024年度单位个人现金借款合同争议解决条款3篇
- 果干课程设计
- 直流交换器课程设计
- 社会实践-形考任务三-国开(CQ)-参考资料
- 山东省烟台市2023-2024学年高二上学期期末考试数学试卷(含答案)
- MOOC 大学计算机-西安交通大学 中国大学慕课答案
- 内镜室院感知识培训
- 吃动平衡知识讲座
- 大屏实施方案
- 湖北省部分学校2023-2024学年高一上学期期末考试数学试题(解析版)
- 工程建设监理公司薪酬管理制度
- (完整word)工程造价咨询公司管理制度
- 2024年度医院影像科护理工作计划
- 肿瘤学肿瘤发生发展和治疗的研究
评论
0/150
提交评论