版主你好!!在此論壇中有一章節在討論PWM的概念,剛好符合我們一些裝飾上需求,但是我現在打算外接其它的LED燈,所以想要請問一下:1.我可以設定不同的接腳作為PWM來控制其它的LED嗎?
2.我有查詢過一些8051的單晶片概念,我可以套用想同的想法嗎?如:我的LED燈泡是吃12V的電,所以我將板子設定為低電位(也就是0)時後亮、高電位(也就是1)時後暗所以四顆LED要交錯閃爍就把他設定為10、5、10、5(16進制)這樣閃爍嗎?或是有其它的設定方式?
3.目前我想要設定4種LED燈閃爍的模式,在PWM的設定上我該怎樣寫呢?是否可請版主提供我一個概念讓我進行修改呢??
在此先感謝版主的協助。--
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
如要取消訂閱此群組,請寄電子郵件至
msp430launchpad...@googlegroups.com
如需更多選項,請造訪此群
組:http://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW 。
2.我有查詢過一些8051的單晶片概念,我可以套用想同的想法嗎?如:我的LED燈泡是吃12V的電,所以我將板子設定為低電位(也就是0)時後亮、高電位(也就是1)時後暗所以四顆LED要交錯閃爍就把他設定為10、5、10、5(16進制)這樣閃爍嗎?或是有其它的設定方式?Launchpad的I/O點只有3.3V,如果你的應用是驅動12V LED燈泡,應該要加relay繼電器電路,單純Launchpad IO無法直接對接,電壓電流都太小,我相信如果你使用8051也是不能這樣做。
畢竟我們希望可以比較亮的LED燈!!
先感謝版主協助回答!
--
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
如要取消訂閱此群組,請寄電子郵件至
2012/8/9 幽藍心域 <line...@gmail.com>版主你好!!在此論壇中有一章節在討論PWM的概念,剛好符合我們一些裝飾上需求,但是我現在打算外接其它的LED燈,所以想要請問一下:1.我可以設定不同的接腳作為PWM來控制其它的LED嗎?當然OK。 以<<類比輸出 + 使LED明暗變化>>範例中原始程式碼, LED PWM, Breathing LED effect with the LaunchPad_msp430g2553要改用其他腳位只須改變定義的BIT6 為P1.6 去改成你想要的腳位。
在此先感謝版主的協助。
--
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
如要取消訂閱此群組,請寄電子郵件至
板主於 2012年8月9日星期四UTC+8下午4時38分53秒寫道:
2012/8/9 幽藍心域 <line...@gmail.com>版主你好!!在此論壇中有一章節在討論PWM的概念,剛好符合我們一些裝飾上需求,但是我現在打算外接其它的LED燈,所以想要請問一下:1.我可以設定不同的接腳作為PWM來控制其它的LED嗎?當然OK。 以<<類比輸出 + 使LED明暗變化>>範例中原始程式碼, LED PWM, Breathing LED effect with the LaunchPad_msp430g2553要改用其他腳位只須改變定義的BIT6 為P1.6 去改成你想要的腳位。在此項的設定上我發現一個問題,當我射成其它腳位的時候,輸出的電壓都是固定的,也就是無法創造出閃爍的情況。真的比較不熟悉腳位的設定和基本概念!!將請版主多協助一下,感謝!!
在此先感謝版主的協助。--如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要取消訂閱此群組,請寄電子郵件至
msp430launchpaddiy+unsub...@googlegroups.com
如需更多選項,請造訪此群
組:http://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW 。
--
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
如要取消訂閱此群組,請寄電子郵件至
��p!!�ڭ��s���ѧکҭק諸�{���X:�]�w:��אּP1.0�]�N�O����LED�G(�O���G)����O��{�{���t��(�b���LED��{���`)
�H�U�O�ڭק�᪺�{���X:
#include "msp430g2553.h"
int index = 0; // ��ƪ�PWM����Ť�]�G�ס^
// P1.6 = TA0.1 (�w�ɾ�A����X). SLAS694C p.41P1SEL |= BIT0;
// PWM �g�� = 125 KHz / 625 = 200 Hz(�i���ܰ{�{�t��)
TACCR0 = 1250;
// Source Timer A from SMCLK (TASSEL_2), up mode (MC_1).// Up mode counts up to TACCR0. SLAU144E p.12-20
//���w�ɾ�A SMCLK�]TASSEL_2�^�ҰʼҦ��]MC_1�^�C// Up�Ҧ��p��TACCR0�C SLAU144E P.12-20
TACTL = TASSEL_2 | MC_1;
// OUTMOD_7 = Reset/set output when the timer counts to TACCR1/TACCR0// CCIE = Interrupt when timer counts to TACCR1
//OUTMOD_7=�_��/�M��X�ɡA�w�ɾ��p�ƨ�TACCR1/TACCR0// CCIE��=���_�ɡA�w�ɾ��p�ƨ�TACCR1
TACCTL1 = OUTMOD_7 | CCIE;
// Initial CCR1 (= brightness)
//��lCCR1�]�G�ס^
TACCR1 = 0;
// LPM0 (shut down the CPU) with interrupts enabled
//LPM0�]�U����CPU�^�ҥΤ��_
__bis_SR_register(CPUOFF | GIE);
}
// This will be called when timer counts to TACCR1.
//�o�N�Q�٬���w�ɾ��ƥHTACCR1���C
#pragma vector=TIMER0_A1_VECTOR__interrupt void Timer_A(void){int new_ccr1 = 1;
// Clear interrupt flag
//�M�����_�лx
TACCTL1 &= ~CCIFG;
if (index < 500) {new_ccr1 = curve[index++ >> 1];} else if (index < 1000) {new_ccr1 = curve[(999 - index++) >> 1];} else {index = 0;}// Wait to set the new TACCR1 until TAR has gone past it, so that we// don't get interrupted again in this period.
//���ݡA���쪺TAR�w�g�L�h�F�]�m�s��TACCR1�A�ҥH�ڭ�//���Q���_�A���b�������C
while (TAR <= new_ccr1);TACCR1 = new_ccr1;
--
�z���즹�l��A�O�]���z�q�\�F Google ���W�ª��u[��USB���ʸ˸m] TI
MSP430 LaunchPad �ϥΪ̰Q�װϡv�s�աC
�p�n�b���s�ձi�K�d���A�бH�q�l�l��� msp430lau...@googlegroups.com
�p�n���q�\���s�աA�бH�q�l�l���
msp430launchpad...@googlegroups.com
�p�ݧ�h�ﶵ�A�гy�X���s
�աGhttp://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW �C
-- �ѻ��� ����s Docent Alan Yang �O�_���ߤѤ��DZШ|�] Taipei Astronomical Museum TEL:886-2-28314551ext 305 SKYPE:iamalanyang alan...@tam.gov.tw
嚙緲嚙緯
嚙誹在嚙踝蕭嚙�launchpad PWM 嚙踝蕭嚙褕哨蕭, 嚙稽嚙皚嚙踝蕭L嚙緻嚙諉堆蕭嚙瘩....
嚙踝蕭嚙瘩嚙箭DATA Sheet 嚙踝蕭嚙箠嚙賞有嚙諸蛛蕭 (嚙誹是嚙踝蕭 嚙篌嚙羯嚙踝蕭 ^_^ !)
SLAS694C p.33 p1.0 嚙踝蕭 Pin Functions 嚙�嚙踝蕭
P1.0 / TA0CLK /ACLK
嚙踝蕭嚙�P1.0 嚙褓可嚙瑾嚙踝蕭 TA0CLK(嚙踝蕭J?) , 嚙盤嚙糊嚙瞇 TA0.1 嚙踝蕭X嚙褕向嚙踝蕭 P1.0
嚙緘嚙稽嚙緩嚙緯嚙瞇 P1.0 嚙瑾嚙踝蕭 PWM 嚙踝蕭X, 嚙瞇嚙緻嚙踝蕭 digital I/O 嚙踝蕭嚙質式嚙踝蕭嚙踝蕭
嚙緻嚙諉作嚙糊嚙罵嚙諛瘀蕭嚙踝蕭 cpu 嚙踝蕭嚙線嚙瑾嚙褕塚蕭(?)
嚙誹伐蕭 energia (Arduino Like 嚙踝蕭 Lanuchpad 嚙罷嚙緻嚙踝蕭嚙踝蕭)嚙踝蕭嚙篇嚙瘤嚙瑾嚙踝蕭
green嚙瞎 red Led 嚙踝蕭嚙罵 嚙諸暗嚙踝蕭G嚙諸亮嚙踝蕭t嚙踝蕭 PWM 嚙踝蕭嚙踝蕭 example
嚙踝蕭O嚙踝蕭嚙瑾嚙諉地嚙踝蕭M arduino reference 嚙踝蕭嚙踝蕭嚙踝蕭P,
analogWrite () 嚙踝蕭嚙踝蕭X嚙踝蕭聾嚙瞎 reference 嚙踝蕭嚙諛歹蕭, 嚙諒恬蕭佴L嚙踝蕭count 嚙羯嚙瑾
嚙碼嚙諉我要嚙踝蕭嚙衝果
energia 嚙緹嚙踝蕭嚙緘嚙磊:
P1.0 嚙箠嚙踝蕭 digitalWrite()嚙踝蕭XPWM, 嚙踝蕭嚙踝蕭嚙窮nalogWrite()嚙踝蕭X
P1.6 嚙箠嚙踝蕭analogWrite()嚙踝蕭XPWM, 嚙稽嚙箠嚙踝蕭digitalWrite() 嚙踝蕭X
嚙踝蕭 2012/8/10 嚙磊嚙踝蕭 02:10, 嚙踝蕭嚙褐心堆蕭 嚙踝蕭嚙踝蕭:
嚙踝蕭p!!嚙誹哨蕭嚙編嚙踝蕭嚙諸我所修改的嚙緹嚙踝蕭嚙碼:嚙稽嚙緩:嚙踝蕭麍訐1.0嚙稽嚙瞇嚙瞌嚙踝蕭嚙踝蕭LED嚙瘦(嚙瞌嚙踝蕭嚙瘦)嚙踝蕭嚙踝蕭O嚙踝蕭{嚙緹嚙踝蕭嚙緣嚙踝蕭(嚙箭嚙踝蕭嚙盤ED嚙踝蕭{嚙踝蕭嚙窯)
嚙瘡嚙磊嚙瞌嚙誹修改蕭嶊綽蕭{嚙踝蕭嚙碼:
#include "msp430g2553.h"
int index = 0; // 嚙踝蕭う嚙瞑WM嚙踝蕭嚙踝蕭聾嚙稽嚙瘦嚙論)
// P1.6 = TA0.1 (嚙緩嚙褕橘蕭A嚙踝蕭嚙踝蕭X). SLAS694C p.41P1SEL |= BIT0;
// PWM 嚙篇嚙踝蕭 = 125 KHz / 625 = 200 Hz(嚙箠嚙踝蕭嚙豌閃嚙緹嚙緣嚙踝蕭)
TACCR0 = 1250;
// Source Timer A from SMCLK (TASSEL_2), up mode (MC_1).// Up mode counts up to TACCR0. SLAU144E p.12-20
//嚙踝蕭嚙緩嚙褕橘蕭A SMCLK嚙稽TASSEL_2嚙稷嚙課動模佗蕭嚙稽MC_1嚙稷嚙瘠// Up嚙課佗蕭嚙緘嚙踝蕭TACCR0嚙瘠 SLAU144E P.12-20
TACTL = TASSEL_2 | MC_1;
// OUTMOD_7 = Reset/set output when the timer counts to TACCR1/TACCR0// CCIE = Interrupt when timer counts to TACCR1
//OUTMOD_7=嚙稻嚙踝蕭/嚙瞎嚙踝蕭X嚙褕,嚙緩嚙褕橘蕭嚙緘嚙複剁蕭TACCR1/TACCR0// CCIE嚙踝蕭=嚙踝蕭嚙稻嚙褕,嚙緩嚙褕橘蕭嚙緘嚙複剁蕭TACCR1
TACCTL1 = OUTMOD_7 | CCIE;
// Initial CCR1 (= brightness)
//嚙踝蕭lCCR1嚙稽嚙瘦嚙論)
TACCR1 = 0;
// LPM0 (shut down the CPU) with interrupts enabled
//LPM0嚙稽嚙磊嚙踝蕭嚙踝蕭CPU嚙稷嚙課用歹蕭嚙稻
__bis_SR_register(CPUOFF | GIE);
}
// This will be called when timer counts to TACCR1.
//嚙緻嚙瞇嚙瞋嚙誶穿蕭嚙踝蕭w嚙褕橘蕭嚙複以TACCR1嚙踝蕭嚙瘠
#pragma vector=TIMER0_A1_VECTOR__interrupt void Timer_A(void){int new_ccr1 = 1;
// Clear interrupt flag
//嚙瞎嚙踝蕭嚙踝蕭嚙稻嚙請誌
TACCTL1 &= ~CCIFG;
if (index < 500) {new_ccr1 = curve[index++ >> 1];} else if (index < 1000) {new_ccr1 = curve[(999 - index++) >> 1];} else {index = 0;}// Wait to set the new TACCR1 until TAR has gone past it, so that we// don't get interrupted again in this period.
//嚙踝蕭嚙豎,嚙踝蕭嚙趣的TAR嚙緩嚙篇嚙盤嚙篁嚙瘤嚙稽嚙練嚙編嚙踝蕭TACCR1嚙璀嚙課以嚙誹哨蕭//嚙踝蕭嚙瞋嚙踝蕭嚙稻嚙璀嚙踝蕭嚙箭嚙踝蕭嚙踝蕭嚙踝蕭嚙瘠
while (TAR <= new_ccr1);TACCR1 = new_ccr1;
--
嚙緲嚙踝蕭嚙趣此嚙締嚙踝蕭A嚙瞌嚙稽嚙踝蕭嚙緲嚙緬嚙穀嚙瘤 Google 嚙踝蕭嚙磕嚙論壇迎蕭嚙線[嚙踝蕭USB嚙踝蕭嚙褊裝置] TI
MSP430 LaunchPad 嚙誕用者討嚙論區」嚙編嚙調。
嚙緘嚙緯嚙箭嚙踝蕭嚙編嚙調張嚙皺嚙範嚙踝蕭嚙璀嚙請寄嚙緬嚙締嚙締嚙踝蕭嚙�msp430lau...@googlegroups.com
嚙緘嚙緯嚙踝蕭嚙緬嚙穀嚙踝蕭嚙編嚙調,嚙請寄嚙緬嚙締嚙締嚙踝蕭嚙�br> msp430launchpaddiy+unsub...@googlegroups.com
嚙緘嚙豎改蕭h嚙踝項嚙璀嚙請造嚙碼嚙踝蕭嚙編
嚙調:http://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW 嚙瘠
-- 嚙諸鳴蕭嚙踝蕭 嚙踝蕭嚙踝蕭s Docent Alan Yang 嚙瞌嚙稻嚙踝蕭嚙賠天歹蕭嚙褒教育嚙稽 Taipei Astronomical Museum TEL:886-2-28314551ext 305 SKYPE:iamalanyang alan...@tam.gov.tw
--
您收到此郵件,是因為您訂閱了 Google 網上論壇的「[玩USB互動裝置] TI
MSP430 LaunchPad 使用者討論區」群組。
如要在此群組張貼留言,請寄電子郵件至 msp430lau...@googlegroups.com
如要取消訂閱此群組,請寄電子郵件至
msp430launchpad...@googlegroups.com
如需更多選項,請造訪此群
組:http://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW 。
-- 解說員 楊曄群 Docent Alan Yang 臺北市立天文科學教育館 Taipei Astronomical Museum TEL:886-2-28314551ext 305 SKYPE:iamalanyang alan...@tam.gov.tw
如需更多選項,請造訪此群
組:http://groups.google.com/group/msp430launchpaddiy?hl=zh-TW?hl=zh-TW 。