娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年02月09日(星期日)

正在發生

2020年02月09日 | MSP430學習筆記3----定時器學習

發布者:zcyzwj 來源: eefocus關鍵字:MSP430  學習筆記  定時器 手機看文章 掃描二維碼
隨時隨地手機看文章

先給出框圖

隨便從百度文庫上找了個定時器程序,分析下。


 1 #include

 2 void main (void)

 3 {

 4     WDTCTL = WDTPW + WDTHOLD;

 5 

 6 

 7     TA1CTL|=TASSEL_2+TACLR+MC_3+ID_3;//采取內部時鐘源1.04M,八分頻,增減計數模式

 8     TA1CCTL0=CCIE;//啟用定時器中斷

 9     TA1CCR0=65535;//計數1S

10     P1DIR|=BIT0;

11     _EINT();

12     //LPM4;

13     while(1);

14 }

15 #pragma vector=TIMER1_A0_VECTOR

16 __interrupt void ta10_isr(void)

17 {

18     P1OUT^=BIT0;

19 }

View Code

測試通過,這個程序可以是LED1按2秒的頻率閃爍(1秒亮,一秒暗)下面分析下:


第1句:WDTCTL = WDTPW + WDTHOLD;


這一句有點不太懂了,明明是定時器,怎么把看門狗定時器給停止了呢?


第2句:TA1CTL |= TASSEL_2+TACLR+MC_3+ID_3;


后面的解釋:采取內部時鐘源1.04M,八分頻,增減計數模式。


先分析程序句,去頭文件里找各自的定義:


1 SFR_16BIT(TA1CTL);                            /* Timer1_A3 Control */

 1 #define MC_0                   (0*0x10u)      /* Timer A mode control: 0 - Stop */

 2 #define MC_1                   (1*0x10u)      /* Timer A mode control: 1 - Up to CCR0 */

 3 #define MC_2                   (2*0x10u)      /* Timer A mode control: 2 - Continous up */

 4 #define MC_3                   (3*0x10u)      /* Timer A mode control: 3 - Up/Down */

 5 #define ID_0                   (0*0x40u)      /* Timer A input divider: 0 - /1 */

 6 #define ID_1                   (1*0x40u)      /* Timer A input divider: 1 - /2 */

 7 #define ID_2                   (2*0x40u)      /* Timer A input divider: 2 - /4 */

 8 #define ID_3                   (3*0x40u)      /* Timer A input divider: 3 - /8 */

 9 #define TASSEL_0               (0*0x100u)     /* Timer A clock source select: 0 - TACLK */

10 #define TASSEL_1               (1*0x100u)     /* Timer A clock source select: 1 - ACLK  */

11 #define TASSEL_2               (2*0x100u)     /* Timer A clock source select: 2 - SMCLK */

12 #define TASSEL_3               (3*0x100u)     /* Timer A clock source select: 3 - INCLK */

第1句話表示了在特殊功能寄存器里找16個位置給Timer1_A3 Control;后面12句話定義了各個宏,實際上就是用前面的標示符表示后面的數,沒別的意思。


從數據手冊上截取:

數據手冊對TACTL的結構有說明:

后面對各個有詳細的說明,這里只說明遇到的:


(1)TASSELx:   (Timer_A Source select,A計時器的激勵源選擇)


TASSEL_0:  00  代表著 TACLK,外部時鐘單元


TASSEL_1:  01  代表著 ACLK ,Auxiliary clock ,輔助時鐘單元,可做2、4或者8分頻。


TASSEL_2:  10  代表著 SMCLK,Sub-main clock,子時鐘單元,也可做2、4或者8分頻。


TASSEL_3:  11  代表著 INCLK ,外部時鐘單元


(2)IDx: 表示分頻的個數


ID_0 ID_1 ID_2 ID_3 

1分頻,也就是不分 2分頻 4分頻 8分頻

(3)MCx表示模式


百度文庫找個圖:

嘿嘿,這個圖就是整個的定時器結構圖和計數模式了,雖然有點復雜,但對于老爺們來說,這點事不算啥。


(4)TACLR:Timer A clear


第3句:TA1CCTL0=CCIE;


后面給出的解釋是:啟用定時器中斷。


從頭文件里獲取


SFR_16BIT(TA1CCTL0); 

#define CCIE                   (0x0010)       /* Capture/compare interrupt enable */

 

如果TA1CCTL0=CCIE,實際上在置CCIE位為1的同時,把其他位置0,


第4句:P1DIR|=BIT0;


BIT0在頭文件里這么定義的,并不是0的意思:


1 #define BIT0                   (0x0001)

2 #define BIT1                   (0x0002)

3 #define BIT2                   (0x0004)

4 #define BIT3                   (0x0008)

所以這句話的意思是把P1.0 的方向設為輸出。


第5句:_EINT();


enable interuption  打開全局中斷。


相反的,_DINT(); disable interruption關閉全局中斷。


第6句:#pragma vector=TIMER1_A0_VECTOR


__interrupt void ta10_isr(void)


用關鍵字來__interrupt來定義一個中斷函數。注意前面的下劃線是兩個,一個會出錯的。


用#pragma vector來提供中斷函數的入口地址。

關鍵字:MSP430  學習筆記  定時器 引用地址:MSP430學習筆記3----定時器學習

上一篇:msp430學習筆記之時鐘
下一篇:MSP430定時器介紹

推薦閱讀

日媒稱,正在推進經營重建的日本顯示器(JDI)的資本合作談判正在走向長期化。原定在3月底之前談判達成協議,不過最大股東產業革新機構和合作銀行等透露,預計將推遲至4月之后。談判走向長期化的原因是與中國企業等推進的出資談判陷入僵局。當前JDI的訂單預期也出現改善跡象,將一邊調整出資條件一邊繼續推進合作談判。據《日本經濟新聞》網站2月5日報道,...
我從來都不掩飾自己是豐田的粉絲,如果你要買車,我都會首先推薦廣汽豐田的車型,從雅力士、雷凌、凱美瑞轎車組合,到C-HR、漢蘭達SUV組合,最后純進口豪華車系的雷克薩斯。不僅僅是因為豐田車作為日系車的代表,造車品質好、油耗低、保養省事省心、保值率,更是因為在十余年工作期間幾乎每天出入廣汽豐田的制造車間,見證了一個個制造團隊對于品質的高要...
●小容量產品是指閃存存儲器容量在16K 至32K 字節之間的STM32F101xx、STM32F102xx和STM32F103xx微控制器。 對應后綴ld● 中容量產品是指閃存存儲器容量在64K 至128K字節之間的STM32F101xx、STM32F102xx和STM32F103xx微控制器。 對應后綴md● 大容量產品是指閃存存儲器容量在256K至512K字節之間的STM32F101xx和STM32F103xx微控制器。對應后綴hd閃存...
今天華為創始人、CEO任正非9日在接受媒體采訪時表示,我們可以轉讓5G技術,但絕不會出售終端手機業務。華為創始人、CEO任正非在山西太原出席了“智能礦山創新實驗室”揭牌儀式。他在接受記者采訪時表示,華為不會拓寬業務領域,主要是拓寬電子系統、軟件計算這些系統在不同行業的運用。華為能幫助煤炭行業實現“少人、無人、安全、高效”。任正非稱,2020...

史海拾趣

問答坊 | AI 解惑

NFC在近距無線技術中如何超過Bluetooth(英)

While Bluetooth is an excellent technology for short-range data communication, shortcomings in its transport layer protocol can make the initial set-up of links between devices cumbersome for the user. Simply associating a Bluetoo ...…

查看全部問答∨

[求助]用AVR Studio4怎么進行C語言的仿真

請問用AVR Studio4怎么進行C語言的仿真啊?我用Winavr寫好C語言程序編譯成功生成后綴為cof的文件,再用AVR Studio4打開后綴為cof的文件,進行調試時卻出現的是對匯編程序的調試,而我學習用的這本書上卻是對C語言程序進行調試,還可以用step into直接在W ...…

查看全部問答∨

國內汽車蓄電池行業機遇與挑戰并存

我國汽車產業高速發展,給蓄電池行業帶來空前的機遇,過去10年蓄電池總產量平均增幅高于德、美等發達國家。目前,我國蓄電池消費主要集中在汽車市場和摩托車市場,兩者占據大部分比重,消費份額為74%;電動自行車市場占8%;出口占7%,其他用量占11%。 ...…

查看全部問答∨

有關Verilog語言調用全加器做累加器的問題 急急急!

1 利用4位二進制加法器和4位寄存器,實現4位累加器的設計。要求設計的累加器有異步清零控制端和累加使能控制端(高電平累加允許 低電平輸出數據保持) 2 利用4位累加器和前面設計的計數器 實現兩個二位二進制數的乘法操作。初始時,累加寄存器清零 ...…

查看全部問答∨

文件讀寫問題

有兩個線程同時讀寫一個文件,因為線程切換是不確定的,所以會造成讀寫內容不正確問題,請教各位大俠該有什么好的方法。…

查看全部問答∨

單片機和上位機通訊(通過無線網卡)

單片機和上位機通訊。 通過gprs方式和上位機通訊的方式已經做出來了。 現在想實現通過無線網卡模塊,再通過無線路由器和上位機進行通信。 1.這種方式可行否? 2.單片機和無線網卡模塊的開發需要嵌入式操作系統不?這塊難度大部? …

查看全部問答∨

LM3s8962體驗之六……時鐘寄存器操作

時鐘設置 一、簡介     本程序實驗使用更改寄存器,設置系統時鐘變化。軟件延時因系統時鐘而改變。進一步促使蜂鳴時間間隔變化。 二、時鐘原理 1、時鐘源   1)、外部振蕩器、0—50MHZ   2)、主振蕩器、 ...…

查看全部問答∨

關于xilinx的DCM

ISE中有“Wait for DLL Lock”這個選項,目的是設置FPGA是否等待DCM的“lock”信號。 默認設置是nowait。 我現在想設置成為等待模式,但是里面的設置是0、1、2、3、4、5、6、這些數字代表的是什么設置啊?   還有,大家用DCM的時候,是 ...…

查看全部問答∨

ICC接口詢問

                                 手上有個Rlink,看了一下它的icc接口,發現不象mcu datasheet上介紹的icc那樣1、3、5接地,按照芯片手冊連 ...…

查看全部問答∨

【資料共享】TI MSP430 熱門資料匯總

MSP430 技術資料 -  MSP430常見問題(FAQ): http://www.deyisupport.com/question_answer/f/55/t/232.aspx - SimpliciTI API中文翻譯及英文原版: http://www.deyisupport.com/question_answer/f/55/t/1093.aspx - Eagle CAD的器件原理圖 ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 平陆县| 重庆市| 旬阳县| 竹溪县| 吉木萨尔县| 奉贤区| 九龙坡区| 赤壁市| 金川县| 静海县| 仁怀市| 自贡市| 乐山市| 九台市| 彰化市| 屯昌县| 孝义市| 大埔县| 涡阳县| 通渭县| 镇江市| 黎平县| 商洛市| 花莲市| 西乌珠穆沁旗| 博白县| 彰化县| 东丽区| 辽宁省| 定远县| 康马县| 玉山县| 翁源县| 宜州市| 曲松县| 子洲县| 广河县| 仁布县| 岑溪市| 台前县| 厦门市|