本篇的代码能在试用的端口输出PWM波(附上修改的基本方法)

先放代码:

PWM.cCreated on: 2021年9月12日
Author: feidao#include "MSP430F5529.h"
#include "PWM.h"
void PWM1(volatile int direction,volatile int speed)
{
P1DIR |=BIT4;  //TA0.3
P1SEL |=BIT4;
P1DIR |=BIT5;  //TA0.4
P1SEL |=BIT5;
TA0CCR0=650;//修改它跟频率有关
if(direction==1)
{TA0CCTL3=OUTMOD_7;TA0CCR3=speed*TA0CCR0/100;//修改它跟占空比有关TA0CTL =TASSEL_1+MC_1+TACLR;
}
if(direction==2)
{TA0CCTL4=OUTMOD_7;TA0CCR4=speed*TA0CCR0/100;TA0CTL =TASSEL_1+MC_1+TACLR;
}
}

这里可以看到有两个口可以输出PWM,分别是P1.4和P1.5
这里就涉及到端口的选择,为什么是他们两个,其他的端口可不可以呢?
上图:



这里用到的是TA这个时钟,所以在用户手册上可以看到TA的时钟一共有TA0、TA1和TA2(当然TB也可以,这里先讲TA)。所以在端口上有标注TA属性的端口都可以用来输出。
上图:

这里就可以看到P1.2、P1.3、P1.4、P1.5、P1.2、P2.0、P2.3、P2.4、P2.5都可以,那么接下来就是对应的代码修改。

P1DIR |=BIT4;   //TA0.3
P1SEL |=BIT4;
TA0CCR0=650;TA0CCTL3=OUTMOD_7;
TA0CCR3=speed*TA0CCR0/100;
TA0CTL =TASSEL_1+MC_1+TACLR;

这是P1.4端口的代码,那么我如果想改成P2.4呢
简单地说就是要吧原来的TA0.3,改成TA2.1;TA0的部分改成TA2

P2DIR |=BIT4;   //TA2.1
P2SEL |=BIT4;
TA2CCR0=650;TA2CCTL1=OUTMOD_7;
TA2CCR1=speed*TA2CCR0/100;
TA2CTL =TASSEL_1+MC_1+TACLR;

这样一来就改成了可以在P2.4口输出PWM波的代码了

MSP430F5529-PWM波在串口中的输出及调整相关推荐

  1. STM32单片机一个定时器输出不同频率PWM波

      在使用STM32单片机输出PWM波形的时候,通常可以直接使用定时器提供的PWM模式.可以通过自动重装载寄存器(TIMx_ARR)来设置定时器的输出频率,然后通过捕获/ 比较寄存器 1(TIMx_C ...

  2. STM32F103输出互补PWM波

    STM32F103单片机定时器自带互补PWM波形输出功能,利用定时器输出比较模式,不仅可以输出互补的 PWM波,还可以设置输出方波的起始相位和死区时间. 下面就总结一下如何实现PWM互补输出. voi ...

  3. STM8学习笔记---定时器输出7路PWM波

    STM8S003F3P6单片机共有三个定时器定时器1.定时器2.定时器4.其中定时器1为16位高级定时器,定时器2为16位通用定时器,定时器4为8位基本定时器.定时器1和定时器2可以输出PWM波.其中 ...

  4. STM32F103 PA8不能输出PWM波问题

    在调试STM32F103单片机输出PWM波时,单独测试PA8和PA11输出PWM波(也就是TIM1_CH1和TIM1_CH4),输出PWM波正常.然后用串口1输出数据时,发现一个问题,串口输出正常,但 ...

  5. 使用STM32测量脉宽可变的PWM波的脉冲宽度

    最近受疫情影响导致我莫得办法出去玩,打游戏一不小心又给打通关了就只能找点东西玩玩了,所以就有了下面这篇文章......搞这个东西的时候遇见一些好玩的问题,我写在第6部分,希望能帮到看到这篇小文章的同志 ...

  6. STM32F103单片机生成16路PWM波

    单片机输出pwm波在项目中是恨常用的一个功能,今天就总结一下用STM32F103C8T6单片机输出16路 pwm波. 使用keil5软件,用标准库函数来实现. 首先看定时器初始化 void TIM1_ ...

  7. STM32之PWM波

    说起PWM波,做过智能小车的人肯定都很清楚了,其实他就是一种脉宽调制.在智能小车上,我们一般用PWM波来控制小车的速度,通过控制方波中高低电平的比例,来达到控制小车转速的目的.而32的芯片他提供了专门 ...

  8. STM32f103C8定时器输出PWM波信号

    利用stm32高级定时器输出PWM,模拟呼吸灯的效果带刹车功能.由于没有示波器查看输出的pwm波形图,所以本次实验使用普通直流电机模拟的. 本文章为学习笔记,其中有些地方解释的不是那么的好,即本笔记可 ...

  9. STM32F7同一定时器多路输出PWM波通道之间相互影响问题

    --------------------------2020/8/12更新-------------------------------- 这次用Cube直接生成PWM控制代码,然后再RT-Threa ...

最新文章

  1. 公司A、公司B、公司C……
  2. ngnix之lnmp环境搭建及Dvbbs搭建
  3. mysql 白皮书_mysql企业版 《 MySQL企业版中文白皮书 》.cn.doc
  4. 鸿蒙系统董事长,鸿蒙2.0已开源 华为轮值董事长:今年至少3亿设备搭载鸿蒙系统...
  5. Codeforces Round #712 (Div. 2) E. Travelling Salesman Problem 思维转换
  6. uni-app文档需要注意细节点
  7. Fullpage参数说明
  8. 厉害了,这个省未来5年将投入63亿人民币扶持博士博士后!
  9. 的标题形状工具在哪里_自媒体如何搜集素材?标题、文章、图片素材收集3大途径!...
  10. linux网卡pci信息,在进行CGKlinux系统网络配置时,使用()命令可以查询出网卡的PCI编号与设备名的对应关系。...
  11. win10兼容android下载安装,Win10手机运行安卓App兼容工具下载!
  12. Flutter基础—定位对齐之对齐
  13. 问题:脚本之家的几个页面
  14. 工业互联网网络安全防护亟待提高
  15. 工程经济作业1答案_国开电大工程经济与管理阶段作业1答案
  16. 新手上路参考驾驶手册 36计教你安全上路(收集)
  17. 过年抢红包,还怕手速慢,我用Python自动抢红包!
  18. [BZOJ4379][POI2015]Modernizacja autostrady[树的直径+换根dp]
  19. 《别看了,你学不会的》——Redis原理与实战(一)
  20. 爬虫学习笔记(六)——Scrapy框架(一):安装、运行流程及简单使用

热门文章

  1. 掌握这六步,搭建完美的机器学习项目
  2. 关于谭浩强老先生的《C++程序设计教程》
  3. Java判断日期格式是否正确
  4. 最佳线程数和QPS以及RT
  5. 一个体育生的编程之路(一)
  6. Adobe Photoshop CS5 标准版新增功能
  7. 激发波长近红外二区发光量子点,近红外二区(NIR-II)发射波长(1000-1700 nm)
  8. 特斯拉充电电流设置多大_特斯拉充电要多久
  9. angr - re - ais3_crackme
  10. 用户注册后是如何进行激活的,为什么需要激活