历史上的今天
返回首页

历史上的今天

今天是:2025年04月18日(星期五)

正在发生

2018年04月18日 | MSP430学习笔记3-PWM的产生

2018-04-18 来源:eefocus

这个程序主要是利用定时器的比较输出功能来产生PWM波控制LED,定时器A的比较输出对应P2.3 P2.4,因此在程序的一开始需要设置比较匹配的工作模式,需要说明的是头文件中已经对各种模式给了详细的定义,不需要在去配置寄存器,程序较为简单,稍微扩展一下去控制舵机也很容易,大家自己分析。

  1. /******************************************************* 

  2. 程序功能:用从P2.3和P2.4输出的PWM波形驱动LED闪烁 

  3. ------------------------------------------------------- 

  4. 拨码开关设置:将LED位拨至ON,其余拨至OFF 

  5. 测试说明:观察LED的亮灭的时间长短 

  6. *******************************************************/  

  7. #include    

  8.   

  9. void main(void)  

  10. {  

  11.   /*下面六行程序关闭所有的IO口*/  

  12.     P1DIR = 0XFF;P1OUT = 0XFF;  

  13.     P2DIR = 0XFF;P2OUT = 0XFF;  

  14.     P3DIR = 0XFF;P3OUT = 0XFF;  

  15.     P4DIR = 0XFF;P4OUT = 0XFF;  

  16.     P5DIR = 0XFF;P5OUT = 0XFF;  

  17.     P6DIR = 0XFF;P6OUT = 0XFF;  

  18.     

  19.   WDTCTL = WDTPW + WDTHOLD;                 // 关狗  

  20.   P6DIR |= BIT2;P6OUT |= BIT2;              //关闭电平转换  

  21.   P2DIR = 0xff;                             // P2端口设置为输出  

  22.   P2OUT = 0xff;                             // 关闭其他LED  

  23.   P2SEL |= BIT3 + BIT4;                     // P2.3和P2.4连接内部模块,使用的是第二功能作为TimerA的比较输出。  

  24.   CCR0 = 4096-1;                            // PWM周期为1S  

  25.   CCTL1 = OUTMOD_7;                         // 捕捉比较寄存器的配置,工作在方式7,计数值等于比较值时输出置位  

  26.   CCR1 = 4000;                              // 输出1的比较值  

  27.   CCTL2 = OUTMOD_7;                         // CCR2 reset/set  

  28.   CCR2 = 500;                              // 输出2的比较值改变此值即可以改变输出的pwm波的占空比  

  29.   TACTL = TASSEL_1 + ID_3 + MC_1;           // ACLK/8, up mode  

  30.   

  31.   //_BIS_SR(LPM3_bits);                       // Enter LPM3  

  32.   LPM3;  

  33.       

  34. }  



推荐阅读

史海拾趣

Gore公司的发展小趣事
在需要精确控制电压和电流的工业控制系统中,三电平直流变换器能够提供稳定的电源输出。
Echelon公司的发展小趣事

在激烈的市场竞争中,Echelon始终保持对技术的热情和追求。公司不断投入研发资源,对LonWorks技术进行升级和优化,推出了一系列创新的产品和服务。这些新产品和服务不仅提升了Echelon的市场竞争力,还为客户带来了更加高效、便捷的能源管理体验。同时,Echelon还积极与其他科技公司合作,共同研发新技术、新产品,推动整个行业的发展。

Bomar公司的发展小趣事

近年来,随着物联网和人工智能技术的快速发展,智能化物流成为了电子行业的新趋势。Bomar公司敏锐地捕捉到了这一市场机遇,开始将业务范围拓展至智能化物流领域。通过与深兰科技等公司的合作,Bomar公司成功推出了智能化物流、仓储装备以及清洁机器人等产品,并成功销往欧洲市场。这些产品的推出不仅提升了Bomar公司的市场竞争力,也为公司的未来发展开辟了新的增长点。

Alutronic Kuhlkorper Gmbh & Co Kg公司的发展小趣事

近年来,随着物联网和人工智能技术的快速发展,智能化物流成为了电子行业的新趋势。Bomar公司敏锐地捕捉到了这一市场机遇,开始将业务范围拓展至智能化物流领域。通过与深兰科技等公司的合作,Bomar公司成功推出了智能化物流、仓储装备以及清洁机器人等产品,并成功销往欧洲市场。这些产品的推出不仅提升了Bomar公司的市场竞争力,也为公司的未来发展开辟了新的增长点。

虹冠电子(Champion)公司的发展小趣事

随着电竞产业的快速发展,虹冠电子敏锐地捕捉到了这一市场的巨大潜力。公司投入大量资源研发电竞电源供应器产品,凭借其卓越的性能和稳定性,迅速在电竞领域树立了良好的品牌形象。同时,虹冠电子还积极与电竞行业内的知名企业和赛事组织合作,共同推动电竞产业的繁荣发展。

HARTING公司的发展小趣事

虹冠电子自成立以来,一直将技术创新作为公司发展的核心动力。早期,虹冠电子就投入大量资源研发AC-DC模拟电源IC,成功推出了一系列高效能、低能耗的产品,迅速在市场上建立了良好的口碑。随着技术的不断迭代,虹冠电子在电源管理技术方面取得了显著优势,尤其在电竞电源供应器领域,凭借卓越的性能和稳定性,赢得了众多专业用户和消费者的认可。

问答坊 | AI 解惑

寻求小天线的区分范围

  各位高手,有谁能告诉我,具体的小天线是指哪些天线,它的范围包括哪些?谢谢大家的帮助!!…

查看全部问答>

雷诺数

测量管内流体流量时往往必须了解其流动状态、流速分布等。雷诺数就是表征流体流动特性的一个重要参数。 流体流动时的惯性力Fg和粘性力(内摩擦力)Fm之比称为雷诺数。用符号Re表示。Re是一个无因次量。 式中的动力粘度η用运动粘度υ来代替,因 ...…

查看全部问答>

哪位高人能帮我设计一个射基跟随器呀?

我需要一个放大电路,它的要求是把我现有的一个0.6V的开关,放大成3.0V的开关,最后是要控制发光二极管亮灭,可以提供12.0V电源,哪位高人可以帮忙设计或有成品电路可以用请提供一下信息啊?…

查看全部问答>

哪个帮我修改个小地方?我十分着急,,对高手2分钟

我现在键盘上面有个PRG按键..长按进入C参数  界面,,但是我觉得时间还不够长,,哪个帮我看下程序应该修改什么地方??把时间搞长点,,现在只要0.5秒就进入C的样子,,我想搞到2S,,不明白的尽管问…

查看全部问答>

关于bios的问题

我是技嘉的主板,我从网上下了bios最新的文件mb_bios_ga-945gcmx-s2_6.6_f6i.exe,我把他解压后得到了三个文件9GCMXS2.F6、autoexec.bat、FLASHSPI.EXE 请问这三个文件各是什么用的 ?怎么没有bin文件 还有我查的我系统bios版本号是GBT &nb ...…

查看全部问答>

关于linux设备驱动的书

我是一个嵌入式linux开发的新手,现在想自学驱动开发,但是我一直有个疑问,请您指教: 我到底先读《linux设备驱动程序(第三版)》和宋老师编著的《linux设备驱动开发详解》哪一本书?我很苦恼。。。…

查看全部问答>

WM手机如何与单片机加USB_HOST芯片通信

如题 只考虑手机端。 随便问问,没希望得到答案 呵呵…

查看全部问答>

我给大家特别推荐的一款产品,非常棒!!!

c8051f 单片机(c2 ,jtag)和at89s5x单片机(isp)二合一串口编程下载线,支持3伏(c8051f 单片机),5伏(at89s5x单片机)电源, 目前通过实际验证可编程下载的芯片:c8051f310、c8051f320、c8051f330D、c8051f340、c8051f350、c8051f360、c8051f4 ...…

查看全部问答>

EVC表盘类?

现在evc上作界面开发,用到模拟压力表盘显示压力值,表针可以实时转动,刻度可以自己设置,不知谁用过,能否帮帮忙?…

查看全部问答>