欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    STC15W4K32S4-PWM应用报告.doc

    • 资源ID:809542       资源大小:875.50KB        全文页数:15页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    STC15W4K32S4-PWM应用报告.doc

    STC15W4K32S4 系列新增系列新增 6 通道增强型带死区控制高精通道增强型带死区控制高精度度 PWM 波形发生器应用波形发生器应用STC15W4K32S4 系列的单片机集成了一组(各自独立 6 路)增强型的 PWM 波形发生器。PWM波形发生器内部有一个 15 位的 PWM 计数器供 6 路 PWM 使用,用户可以设置每路 PWM 的初始电平。另外,PWM 波形发生器为每路 PWM 又设计了两个用于控制波形翻转的计数器 T1/T2,可以非常灵活的每路 PWM 的高低电平宽度,从而达到对 PWM 的占空比以及 PWM 的输出延迟进行控制的目的。由于 6 路 PWM 是各自独立的,且每路 PWM 的初始状态可以进行设定,所以用户可以将其中的任意两路配合起来使用,即可实现互补对称输出以及死区控制等特殊应用。增强型的 PWM 波形发生器还设计了对外部异常事件(包括外部端口 P2.4 的电平异常、比较器比较结果异常)进行监控的功能,可用于紧急关闭 PWM 输出。PWM 波形发生器还可在 15 位的PWM 计数器归零时出发外部事件(ADC 转换)。STC15W4K32S4 系列增强型 PWM 输出端口定义如下:PWM2:P3.7, PWM3:P2.1, PWM4:P2.2, PWM5:P2.3, PWM6:P1.6, PWM7:P1.7 每路 PWM 的输出端口都可使用特殊功能寄存器位 CnPINSEL 分别独立的切换到第二组PWM2_2:P2.7, PWM3_2:P4.5, PWM4_2:P4.4, PWM5_2:P4.2, PWM6_2:P0.7, PWM7_2:P0.6所有与所有与 PWMPWM 相关的端口,在上电后均为高阻输入态,必须在程序中将这些口设置为双向口或强相关的端口,在上电后均为高阻输入态,必须在程序中将这些口设置为双向口或强推挽模式才可正常输出波形推挽模式才可正常输出波形端口模式设置相关特殊功能寄存器位地址及符号位地址及符号 符号符号描述描述地址地址 B7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0初始值初始值P1M1P1 模式配置 191H0000,0000P1M0P1 模式配置 092H0000,0000P0M1P0 模式配置 193H0000,0000P0M0P0 模式配置 094H0000,0000P2M1P2 模式配置 195H0000,0000P2M0P2 模式配置 096H0000,0000P3M1P3 模式配置 1B1H0000,0000P3M0P3 模式配置 0B2H0000,0000P4M1P4 模式配置 1B3H0000,0000P4M0P4 模式配置 0B4H0000,0000端口模式设置PxM1PxM0模式00准双向口01强推挽输出10高阻输入11开漏输出若需要正常使用与 PWM 相关的端口,则需要将相应的端口设置为准双向口或强推挽输出口例如将端口均设置为准双向口的汇编代码如下:MOV P0M0,#00HMOV P0M1,#00HMOV P1M0,#00HMOV P1M1,#00HMOV P2M0,#00HMOV P2M1,#00HMOV P3M0,#00HMOV P3M1,#00HMOV P4M0,#00HMOV P4M1,#00H增强型 PWM 波形发生器相关的特殊功能寄存器位地址及符号位地址及符号 符号符号描述描述地址地址 B7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0初始值初始值P_SW2端口配置寄存器BAHEAXSFR000-S4_SS3_SS2_S0000,0000PWMCFGPWM 配置F1H-CBTADCC7INIC6INIC5INIC4INIC3INIC2INI0000,0000PWMCRPWM 控制F5HENPWMECBIENC7OENC6OENC5OENC4OENC3OENC2O0000,0000PWMIFPWM 中断标志F6H-CBIFC7IFC6IFC5IFC4IFC3IFC2IFx000,0000PWMFDCRPWM 外部异常控制F7H-ENFDFLTFLIOEFDIFDCMPFDIOFDIFxx00,0000PWMCHPWM 计数器高位FFF0H-PWMCH14:8x000,0000PWMCLPWM 计数器低位FFF1HPWMCL7:00000,0000PWMCKSPWM 时钟选择FFF2H-SELT2PS3:0xxx0,0000PWM2T1HPWM2T1 计数高位FF00H-PWM2T1H14:8x000,0000PWM2T1LPWM2T1 计数低位FF01HPWM2T1L7:00000,0000PWM2T2HPWM2T2 计数高位FF02H-PWM2T2H14:8x000,0000PWM2T2LPWM2T2 计数低位FF03HPWM2T2L7:00000,0000PWM2CRPWM2 控制FF04H-PWM2_PSEPWM2IEC2T2SIEC2T1SIxxxx,0000PWM3T1HPWM3T1 计数高位FF10H-PWM3T1H14:8x000,0000PWM3T1LPWM3T1 计数低位FF11HPWM3T1L7:00000,0000PWM3T2HPWM3T2 计数高位FF12H-PWM3T2H14:8x000,0000PWM3T2LPWM3T2 计数低位FF13HPWM3T2L7:00000,0000PWM3CRPWM3 控制FF14H-PWM3_PSEPWM3IEC3T2SIEC3T1SIxxxx,0000PWM4T1HPWM4T1 计数高位FF20H-PWM4T1H14:8x000,0000PWM4T1LPWM4T1 计数低位FF21HPWM4T1L7:00000,0000PWM4T2HPWM4T2 计数高位FF22H-PWM4T2H14:8x000,0000PWM4T2LPWM4T2 计数低位FF23HPWM4T2L7:00000,0000PWM4CRPWM4 控制FF24H-PWM4_PSEPWM4IEC4T2SIEC4T1SIxxxx,0000PWM5T1HPWM5T1 计数高位FF30H-PWM5T1H14:8x000,0000PWM5T1LPWM5T1 计数低位FF31HPWM5T1L7:00000,0000PWM5T2HPWM5T2 计数高位FF32H-PWM5T2H14:8x000,0000PWM5T2LPWM5T2 计数低位FF33HPWM5T2L7:00000,0000PWM5CRPWM5 控制FF34H-PWM5_PSEPWM5IEC5T2SIEC5T1SIxxxx,0000PWM6T1HPWM6T1 计数高位FF40H-PWM6T1H14:8x000,0000PWM6T1LPWM6T1 计数低位FF41HPWM6T1L7:00000,0000PWM6T2HPWM6T2 计数高位FF42H-PWM6T2H14:8x000,0000PWM6T2LPWM6T2 计数低位FF43HPWM6T2L7:00000,0000PWM6CRPWM6 控制FF44H-PWM6_PSEPWM6IEC6T2SIEC6T1SIxxxx,0000PWM7T1HPWM7T1 计数高位FF50H-PWM7T1H14:8x000,0000PWM7T1LPWM7T1 计数低位FF51HPWM7T1L7:00000,0000PWM7T2HPWM7T2 计数高位FF52H-PWM7T2H14:8x000,0000PWM7T2LPWM7T2 计数低位FF53HPWM7T2L7:00000,0000PWM7CRPWM7 控制FF54H-PWM7_PSEPWM7IEC7T2SIEC7T1SIxxxx,0000端口配置寄存器端口配置寄存器 P_SW2 地址:BAH初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0EAXSFR000-S4_SS3_SS2_SEAXSFREAXSFR:扩展 SFR 访问控制使能0:MOVX A,DPTR/MOVX DPTR,A 指令的操作对象为扩展 RAM(XRAM)1:MOVX A,DPTR/MOVX DPTR,A 指令的操作对象为扩展 SFR(XSFR)注意:若要访问 PWM 在扩展 RAM 区的特殊功能寄存器,必须先将 EAXSFR 位置为 1BIT6,BIT5,BIT4 为内部测试使用,用户必须填 0PWM 配置寄存器配置寄存器 PWMCFG 地址:F1H初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-CBTADCC7INIC6INIC5INIC4INIC3INIC2INICBTADCCBTADC:PWM 计数器归零时(CBIF=1 时)触发 ADC 转换0:PWM 计数器归零时不触发 ADC 转换1:PWM 计数器归零时自动触发 ADC 转换。(注:前提条件是 PWM 和 ADC 必须被使能,即ENPWM=1,且 ADCON=1)CnINICnINI:设置 PWM 输出端口的初始电平0:PWM 输出端口的初始电平为低电平1:PWM 输出端口的初始电平为高电平PWM 控制寄存器控制寄存器 PWMCR 地址:F5H初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0ENPWMECBIENC7OENC6OENC5OENC4OENC3OENC2OENPWMENPWM:使能增强型 PWM 波形发生器0:关闭 PWM 波形发生器1:使能 PWM 波形发生器,PWM 计数器开始计数ECBIECBI:PWM 计数器归零中断使能位0:关闭 PWM 计数器归零中断(CBIF 依然会被硬件置位)1:使能 PWM 计数器归零中断ENCnOENCnO:PWM 输出使能位0:相应 PWM 通道的端口为 GPIO1:相应 PWM 通道的端口为 PWM 输出口,受 PWM 波形发生器控制PWM 中断标志寄存器中断标志寄存器 PWMIF 地址:F6H初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-CBIFC7IFC6IFC5IFC4IFC3IFC2IFCBIFCBIF:PWM 计数器归零中断标志位当 PWM 计数器归零时,硬件自动将此位置 1。当 ECBI=1 时,程序会跳转到相应中断入口执行中断服务程序。需要软件清零。CnIFCnIF:第 n 通道的 PWM 中断标志位可设置在翻转点 1 和翻转点 2 触发 CnIF(详见ECnT1SI 和 ECnT2SI)。当 PWM 发生翻转时,硬件自动将此位置 1。当 EPWMnI=1 时,程序会跳转到相应中断入口执行中断服务程序。需要软件清零。PWM 外部异常控制寄存器外部异常控制寄存器 PWMFDCR 地址:F7H初始值:xx00,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-ENFDFLTFLIOEFDIFDCMPFDIOFDIFENFDENFD:PWM 外部异常检测功能控制位0:关闭 PWM 的外部异常检测功能1:使能 PWM 的外部异常检测功能FLTFLIOFLTFLIO:发生 PWM 外部异常时对 PWM 输出口控制位0:发生 WM 外部异常时,PWM 的输出口不作任何改变1:发生 WM 外部异常时,PWM 的输出口立即被设置为高阻输入模式。(注:只有 ENCnO=1 所对应的端口才会被强制悬空)EFDIEFDI:PWM 异常检测中断使能位0:关闭 PWM 异常检测中断(FDIF 依然会被硬件置位)1:使能 PWM 异常检测中断FDCMPFDCMP:设定 PWM 异常检测源为比较器的输出0:比较器与 PWM 无关1:当比较器的输出由低变高时,触发 PWM 异常FDIOFDIO:设定 PWM 异常检测源为端口 P2.4 的状态0:P2.4 的状态与 PWM 无关1:当 P2.4 的电平由低变高时,触发 PWM 异常FDIFFDIF:PWM 异常检测中断标志位当发生 PWM 异常(比较器的输出由低变高或者 P2.4 的电平由低变高)时,硬件自动将此位置1。当 EFDI=1 时,程序会跳转到相应中断入口执行中断服务程序。需要软件清零。PWM 计数器的高字节计数器的高字节 PWMCH(高(高 7 位)位) 地址:FFF0H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWMCH14:8PWM 计数器的低字节计数器的低字节 PWMCL(低(低 8 位)位) 地址:FFF1H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWMCL7:0PWM 计数器位一个 15 位的寄存器,可设定 132767 之间的任意值作为 PWM 的周期。PWM 波形发生器内部的计数器从 0 开始计数,每个 PWM 时钟周期递增 1,当内部计数器的计数值达到PWMCH,PWMCL所设定的 PWM 周期时,PWM 波形发生器内部的计数器将会从 0 重新开始开始计数,硬件会自动将 PWM 归零中断中断标志位 CBIF 置 1,若 ECBI=1,程序将跳转到相应中断入口执行中断服务程序。PWM 时钟选择寄存器时钟选择寄存器 PWMCKS 地址:FFF2H(XSFR)初始值:xxx0,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-SELT2PS3:0SELT2SELT2:PWM 时钟源选择0:PWM 时钟源为系统时钟经分频器分频之后的时钟1:PWM 时钟源为定时器 2 的溢出脉冲PS3:0PS3:0:系统时钟预分频参数。当 SELT2=0 时,PWM 时钟为系统时钟/( PS3:0+1)PWM2 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM2T1H 地址:FF00H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM2T1H14:8 PWM2 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM2T1L 地址:FF01H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM2T1L7:0 PWM2 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM2T2H 地址:FF02H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM2T2H14:8 PWM2 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM2T2L 地址:FF03H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM2T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM2 的控制寄存器的控制寄存器 PWM2CR 地址:FF04H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM2_PSEPWM2IEC2T2SIEC2T1SIPWM2_PSPWM2_PS:PWM2 输出管脚选择位0:PWM2 的输出管脚为 PWM2:P3.71:PWM2 的输出管脚为 PWM2_2:P2.7EPWM2IEPWM2I:PWM2 中断使能控制位0:关闭 PWM2 中断1:使能 PWM2 中断,当 C2IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC2T2SIEC2T2SI:PWM2 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C2IF 置 1,此时若 EPWM2I=1,则程序将跳转到相应中断入口执行中断服务程序。EC2T1SIEC2T1SI:PWM2 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C2IF 置 1,此时若 EPWM2I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM3 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM3T1H 地址:FF10H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM3T1H14:8 PWM3 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM3T1L 地址:FF11H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM3T1L7:0 PWM3 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM3T2H 地址:FF12H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM3T2H14:8 PWM3 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM3T2L 地址:FF13H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM3T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM3 的控制寄存器的控制寄存器 PWM3CR 地址:FF14H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM3_PSEPWM3IEC3T2SIEC3T1SIPWM3_PSPWM3_PS:PWM3 输出管脚选择位0:PWM3 的输出管脚为 PWM3:P2.11:PWM3 的输出管脚为 PWM3_2:P4.5EPWM3IEPWM3I:PWM3 中断使能控制位0:关闭 PWM3 中断1:使能 PWM3 中断,当 C3IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC3T2SIEC3T2SI:PWM3 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C3IF 置 1,此时若 EPWM3I=1,则程序将跳转到相应中断入口执行中断服务程序。EC3T1SIEC3T1SI:PWM3 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C3IF 置 1,此时若 EPWM3I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM4 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM4T1H 地址:FF20H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM4T1H14:8 PWM4 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM4T1L 地址:FF21H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM4T1L7:0 PWM4 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM4T2H 地址:FF22H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM4T2H14:8 PWM4 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM4T2L 地址:FF23H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM4T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM4 的控制寄存器的控制寄存器 PWM4CR 地址:FF24H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM4_PSEPWM4IEC4T2SIEC4T1SIPWM4_PSPWM4_PS:PWM4 输出管脚选择位0:PWM4 的输出管脚为 PWM4:P2.21:PWM4 的输出管脚为 PWM4_2:P4.4EPWM4IEPWM4I:PWM4 中断使能控制位0:关闭 PWM4 中断1:使能 PWM4 中断,当 C4IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC4T2SIEC4T2SI:PWM4 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C4IF 置 1,此时若 EPWM4I=1,则程序将跳转到相应中断入口执行中断服务程序。EC4T1SIEC4T1SI:PWM4 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C4IF 置 1,此时若 EPWM4I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM5 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM5T1H 地址:FF30H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM5T1H14:8 PWM5 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM5T1L 地址:FF31H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM5T1L7:0 PWM5 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM5T2H 地址:FF32H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM5T2H14:8 PWM5 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM5T2L 地址:FF33H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM5T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM5 的控制寄存器的控制寄存器 PWM5CR 地址:FF34H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM5_PSEPWM5IEC5T2SIEC5T1SIPWM5_PSPWM5_PS:PWM5 输出管脚选择位0:PWM5 的输出管脚为 PWM5:P2.31:PWM5 的输出管脚为 PWM5_2:P4.2EPWM5IEPWM5I:PWM5 中断使能控制位0:关闭 PWM5 中断1:使能 PWM5 中断,当 C5IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC5T2SIEC5T2SI:PWM5 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C5IF 置 1,此时若 EPWM5I=1,则程序将跳转到相应中断入口执行中断服务程序。EC5T1SIEC5T1SI:PWM5 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C5IF 置 1,此时若 EPWM5I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM6 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM6T1H 地址:FF40H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM6T1H14:8 PWM6 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM6T1L 地址:FF41H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM6T1L7:0 PWM6 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM6T2H 地址:FF42H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM6T2H14:8 PWM6 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM6T2L 地址:FF43H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM6T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM6 的控制寄存器的控制寄存器 PWM6CR 地址:FF44H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM6_PSEPWM6IEC6T2SIEC6T1SIPWM6_PSPWM6_PS:PWM6 输出管脚选择位0:PWM6 的输出管脚为 PWM6:P1.61:PWM6 的输出管脚为 PWM6_2:P0.7EPWM6IEPWM6I:PWM6 中断使能控制位0:关闭 PWM6 中断1:使能 PWM6 中断,当 C6IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC6T2SIEC6T2SI:PWM6 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C6IF 置 1,此时若 EPWM6I=1,则程序将跳转到相应中断入口执行中断服务程序。EC6T1SIEC6T1SI:PWM6 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C6IF 置 1,此时若 EPWM6I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM7 的第一次翻转计数器的高字节的第一次翻转计数器的高字节 PWM7T1H 地址:FF50H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM7T1H14:8 PWM7 的第一次翻转计数器的低字节的第一次翻转计数器的低字节 PWM7T1L 地址:FF51H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM7T1L7:0 PWM7 的第二次翻转计时器的高字节的第二次翻转计时器的高字节 PWM7T2H 地址:FF52H(XSFR)初始值:x000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM7T2H14:8 PWM7 的第二次翻转计时器的低字节的第二次翻转计时器的低字节 PWM7T2L 地址:FF53H(XSFR)初始值:0000,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0PWM7T2L7:0PWM 波形发生器设计了两个用于控制 PWM 波形翻转的 15 位计数器,可设定 132767 之间的任意值。PWM 波形发生器内部的计数器的计数值与 T1/T2 所设定的值相匹配时,PWM 的输出波形将发生翻转。PWM7 的控制寄存器的控制寄存器 PWM7CR 地址:FF54H(XSFR)初始值:xxxx,0000BB7B7B6B6B5B5B4B4B3B3B2B2B1B1B0B0-PWM7_PSEPWM7IEC7T2SIEC7T1SIPWM7_PSPWM7_PS:PWM7 输出管脚选择位0:PWM7 的输出管脚为 PWM7:P1.71:PWM7 的输出管脚为 PWM7_2:P0.6EPWM7IEPWM7I:PWM7 中断使能控制位0:关闭 PWM7 中断1:使能 PWM7 中断,当 C7IF 被硬件置 1 时,程序将跳转到相应中断入口执行中断服务程序。EC7T2SIEC7T2SI:PWM7 的 T2 匹配发生波形翻转时的中断控制位0:关闭 T2 翻转时中断1:使能 T2 翻转时中断,当 PWM 波形发生器内部计数值与 T2 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C7IF 置 1,此时若 EPWM7I=1,则程序将跳转到相应中断入口执行中断服务程序。EC7T1SIEC7T1SI:PWM7 的 T1 匹配发生波形翻转时的中断控制位0:关闭 T1 翻转时中断1:使能 T1 翻转时中断,当 PWM 波形发生器内部计数值与 T1 计数器所设定的值相匹配时,PWM的波形发生翻转,同时硬件将 C7IF 置 1,此时若 EPWM7I=1,则程序将跳转到相应中断入口执行中断服务程序。PWM 波形发生器中断控制波形发生器中断控制 PWM 波形发生器中断相关的寄存器IP2中断优先级控制B5H-PX4PPWMFDPPWMPSPIPS2xxx0,0000PWMCRPWM 控制F5HENPWMECBIENC7OENC6OENC5OENC4OENC3OENC2O0000,0000PWMIFPWM 中断标志F6H-CBIFC7IFC6IFC5IFC4IFC3IFC2IFx000,0000PWMFDCRPWM 外部异常控制F7H-ENFDFLTFLIOEFDIFDCMPFDIOFDIFxx00,0000PWM2CRPWM2 控制FF04H-PWM2_PSEPWM2IEC2T2SIEC2T1SIxxxx,0000PWM3CRPWM3 控制FF14H-PWM3_PSEPWM3IEC3T2SIEC3T1SIxxxx,0000PWM4CRPWM4 控制FF24H-PWM4_PSEPWM4IEC4T2SIEC4T1SIxxxx,0000PWM5CRPWM5 控制FF34H-PWM5_PSEPWM5IEC5T2SIEC5T1SIxxxx,0000PWM6CRPWM6 控制FF44H-PWM6_PSEPWM6IEC6T2SIEC6T1SIxxxx,0000PWM7CRPWM7 控制FF54H-PWM7_PSEPWM7IEC7T2SIEC7T1SIxxxx,0000中断向量地址及中断控制中断名称入口地址优先级设置 中断请求位中断允许控制中断标志清除方式CBIFENPWM/ECBI/EA需软件清除C2IFENPWM/ EPWM2I/ EC2T2SI| EC2T1SI/EA需软件清除C3IFENPWM/ EPWM3I/ EC3T2SI| EC3T1SI/EA需软件清除C4IFENPWM/ EPWM4I/ EC4T2SI| EC4T1SI/EA需软件清除C5IFENPWM/ EPWM5I/ EC5T2SI| EC5T1SI/EA需软件清除C6IFENPWM/ EPWM6I/ EC6T2SI| EC6T1SI/EA需软件清除PWM 中断00B3H(22)PPWMC7IFENPWM/ EPWM7I/ EC7T2SI| EC7T1SI/EA需软件清除PWM 异常检测中断00BBH(23)PPWMFDFDIFENPWM/ENFD/EFDI/EA需软件清除在 Keil C 中声明中断函数void PWM_Routine(void) interrupt 22;void PWMFD_Routine(void) interrupt 23;PWM 波形发生器的结构框图PWMCH,PWMCL计数器匹配PWM 时钟R匹配匹配T1H,T1LT2H,T2L周期结束翻转翻转清零匹配匹配T1H,T1LT2H,T2L周期结束翻转翻转匹配匹配T1H,T1LT2H,T2L周期结束翻转翻转P PWWMM波波形形发发生生器器框框图图周期结束汇编示例代码汇编示例代码 1 假如要生成一个重复的 PWM 波形,波形如下:PWM 波形发生器的时钟频率为系统时钟/4,波形由通道 4 输出,周期为 20 个 PWM 时钟,占空比为 1/3,由 4 个 PWM 时钟的相位延迟(波形如下图所示)01 23 4 5 6 7 8 9 101619 01 23 4 5 6 7 8 9 101619 01 23 4 5 6 7 8 9 101619Initialized LOWPeriod=(16+1) Channel-4: toggle-point-1=3(0003H) toggle-point-2=16 (0010H)汇编代码可以如下设计:; +-+ ; | Global Configuration | ; +-+; Set EAXSFR to enable xSFR writing against XRAM writingmov A, P_SW2orl A, #10000000Bmov P_SW2, A; ; Set channel-4 output register start at LOWmov A, PWMCFGanl A, #11111011B ; channel-4 start at LOWmov PWMCFG, A; Set a clock of the waveform generator consists of 4 Foscmov DPTR, #PWMCKS ; FFF2Hmov A, #00000011Bmovx DPTR, A; Set period as 20; PWMCH,PWMCL <= 19mov DPTR, #PWMCH ; FFF

    注意事项

    本文(STC15W4K32S4-PWM应用报告.doc)为本站会员(一***)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开