4.1 PWM控制
AVR的T/C1除具有定时、计数、输入捕捉和输出比较功能外,还可构成两个脉冲宽模压电感器度调制PWM输出通道。由于经缓冲的PWM输出可驱动电机,且其转速正比于OCR1A或OCR1B寄存器的内容。因此,可以利用OCR1A输出PWM波,再将该信号与各路相输出信号相与后输出,从而实现控制各路相信号以及低速调速之目的。
4.2 高速单脉冲控制
采用高速单脉冲控制方式时,可使关断角保持不变,从而使开通角在较宽的范围内进行调节,最终实现高速高速。由于AVR系列单片机具有输入捕捉功能,因此可将PIA或PIB信号送给ICP脚,然后让ICP1寄存器首先捕捉脉冲上升沿发生的时间,接着再捕捉下一次上升沿发生的时间,然电感镇流器后用这段时间除以相间隔的角度15°就可得到标准单脉冲数。当然,由于中断处理需要一定的时间,所以要通过软件修正。这样就可以高精度控制高速运转时的开通角和关断角,从而实现高速单脉冲的软件控制。
5 软件示例
5.1 相输出子程序示例
;正转相输出
.def xiin=r16 ;相输入信号寄存器
;====================
xinoutz:in xiin,pind ;将相输入信号送给寄存器
andi xiin,$03 ;相与只剩下相信号
cpi xiin,$01 ;是否da输出
brbc 1,daout ;相等,da输出
cpi xiin,$03 ;是否ab输出
brbc 1,about ;相等,ab输出
cpi xiin,$02 ;是否bc输出
brbc 1,bcout ;相等,bc输出
cpi xiin,$00 ;是否cd输出
brbc 1,cdout ;相等,cd输出
;====================
;反转相输出
;====================
xinoutf:in xiin,pind ;将相输入信号送给寄存器
andi xiin,$00 ;相与只剩下相信号
cpi xiin,$01 ;是否da输出
brbc 1,daout ;相等,da输出功率电感
cpi xiin,$02 ;是否ab输出
brbc 1,about ;相等,ab输出
cpi xiin,$03 ;是否bc输出
brbc 1,bcout ;相等,bc输出
cpi xiin,$01 ;是否cd输出
brbc 1,cdout ;相等,cd输出
;====================
daout:sbic pinb,4 ;开通a相低电平有效
sbic pinb,7 ;开通d相?
sb功率电感器is pinb,5
sbis pinb,6
ret
about:sbic pinb,4 ;开通a相
sbic pinb,6 ;开通b相
sbis pinb,5
sbis pinb,7
ret
bcout:sbic pinb,5 ;开通c相
sbic pinb,6 ;开通b相?
sbis pinb,7
sbis pinb,4
ret
cdout:sbic pinb,5 ;开通c相
sb电感器厂家is pinb,7 ;开通d相?
sbis pinb,4
sbis pinb,6
ret
5.2 速度采集显示子程序示例
.include "m16def.inc"
.org $001c
rjmp adcint
.def channel=r29 ;模拟通道号
.def lresult=r2 ;转换低字节
.def hresult=r3 ;转换高字节
.def temp=r16
.equ sample=$0060 ;采样数据1缓冲区首地址
.equ SAMPLE2=$0063 ;采样数据2缓冲区首地址
.def round=r17 ;显示回合计数器
.def outer=r19 ;存放外环计数器
.def inner=r18 ;存放内环计数器
.equ slabel=$0400 ;字符码首地址
.def hxian=r2 ;存放预显示高字节
.def lxian=r1 ;存放预显示低字节
;采集显示速度占用系统资源r1r2s3r4r16,$60~$69
adcin:ldi channel,$04 ;从4通道开始
out admux,channel
ldi r16,$ee ;自由运行方式
out adcsr,r16 ;启动转换
clr xh ;建立sram指针
ldi x1,$60
inc channel ;通道号增1
out admux,channel ;选通道4
sbi adcsr,3 ;开启ad中断
ldi r28,$03 ;转换次数
adhere:rjmp adhere ;等待中断
adcint:in lresult,adcl ;读转换结果
in hresult,adch
st x+,lresult
dec r28
brne adnextc
rjmp adret
adnextc:ldi r28,$03 ;转换次数
inc channel ;通道号加1
out admux,channel ;选下一个通道
cpi x1,$70 ;转换的是通道7吗
brme adret ;否,返回
cbi ADCSR,7 ;是,停止转换
adret:reti
6 结束语
实际使用证明:Atmel公司出品的ATMEGA16系列单片机具有处理速度快,内部外设功能模块丰富等优点,是一种性价比较高的单片机,特别适用于电池供电、便携式以及电机驱动等系统。本文的开关磁阻电机充分利用了该单片机丰富的内部外设模块,因而简化了外围电路,大大提高了性价比。
开关电源:PC电源分析有人把CPU比作电脑的 心脏 ,实际上,如果我们真正形象地去比较,CPU对于电脑来说更像是大脑的作用,而真正为电脑提供动力的心脏应该是为电脑提供充足电力的电源。那么让我们来关注一下这个被我们忽视的角落
IR2101驱动MOSFET没有输出如图,在protues中仿真测试IR2101驱动MOSFET,从波形来看,IR2101有输出,但是为什么MOSFET没有打开呢?最后的部分使用1N4007对220V的交流电进行整流后接到N-MOSFET上,求赐教,不胜感激
关于升压电路大侠们,关于升压IC,突然有个想法:可不可以做到是输出电压高于输入电压的一个固定值呢?比如用34063,当VCC=5v,则Vout=5+10v(升高的假设的固定值);当VCC=15v,则Vout=15+10v(升高的假设