国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1570|回復: 0
打印 上一主題 下一主題

【教程11】瘋殼·ARM功能手機-定時器實驗教程

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2022-8-17 15:41:20 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
ARM功能手機
——瘋殼·開發板系列
定時器實驗教程   





    圖1


    8LED硬件電路

        板子中有一個可控LED,接在DA14580的P24引腳,LED串聯1K的限流電阻,如下圖所示:

   
    圖2

    第二節 Timer寄存器

    2.1 Timer介紹

    軟件定時器模塊包含兩個定時器模塊,它們可以通過軟件控制、編程并用于各種任務。
    2.1.1 Timer0

    定時器0有16位的通用定時器;可以產生兩路脈寬調制信號;可編程的輸出頻率;可編程的占空比;可編程的軟件中斷。
    2.1.2 Timer2

    定時器2有14位的通用定時器;可以產生3路脈寬調制信號;輸入時鐘頻率為16MHz;可編程的輸入頻率;占空比可調;用于白色LED的亮度控制。

    2.2 寄存器介紹
    2.2.1 定時器0控制寄存器

   
    圖3
    15:4位:保留不使用;
    3位:PWM模式選擇,’0’表示PWM信號為高時輸出’1’,’1’表示PWM信號為高時輸出快時鐘信號的二分頻,則輸出頻率范圍為1~8MHz;
    2位:定時器0的時鐘分頻,為’1’使用選擇的時鐘源頻率,為’0’使用選擇的時鐘源進行10分頻,注意這個值適用于計數寄存器;
    1位:時鐘源選擇,’1’使用快時鐘(16、8、4、2MHz),’0’使用慢時鐘(32KHz);
    0位:定時器0控制位,’0’表示定時器0關閉并處于復位狀態,’1’定時器0運行。

    2.2.2 定時器0計數控制寄存器

   
    圖4
    定時器0計數重新裝載值,如果讀取該寄存器則返回當前計數器的值。
    2.2.3 定時器0高電平重新裝載值

   
    圖5
    定時器0高電平重新裝載值,如果讀取該寄存器則返回定時器0的計數值。
    2.2.4 定時器0低電平重新裝載值

   
    圖6
    定時器0低電平重新裝載值,如果讀取該寄存器則返回定時器0的計數值。
    2.2.5 PWM2占空比

   
    圖7
    PWM2信號的占空比。
    2.2.6 PWM3占空比

   
    圖8
    PWM3信號的占空比。
    2.2.7 PWM4占空比

   
    圖9
    PWM4信號的占空比。
    2.2.8 PWM2,3,4的頻率

   
    圖10
    PWM2、3、4信號的頻率,三個信號頻率相同。

    2.2.9 PWM2,3,4控制寄存器

   
    圖11
    2位:硬件暫停使能,為’1’則硬件可以停止PWM2、3、4。
    1位:軟件暫停使能,為’1’則PWM2、3、4暫停。
    0位:PWM信號使能,為’1’則PWM2、3、4使能。

    2.3 寄存器配置講解
    #define CLK_PER_REG             (* ( volatile uint16*)0x50000004)
    #define TIMER0_CTRL_REG         (* ( volatile uint16*)0x50003400)
    #define TIMER0_ON_REG           (* ( volatile uint16*)0x50003402)
    #define TIMER0_RELOAD_M_REG     (* ( volatile uint16*)0x50003404)
    #define TIMER0_RELOAD_N_REG      (* ( volatile uint16*)0x50003406)
    #define PWM2_DUTY_CYCLE          (* ( volatile uint16*)0x50003408)
    #define PWM3_DUTY_CYCLE          (* ( volatile uint16*)0x5000340A)
    #define PWM4_DUTY_CYCLE          (* ( volatile uint16*)0x5000340C)
    #define TRIPLE_PWM_FREQUENCY     (* ( volatile uint16*)0x5000340E)
    #define TRIPLE_PWM_CTRL_REG       (* ( volatile uint16*)0x50003410)
    啟動Timer0模塊的時鐘:CLK_PER_REG |= 0x0008;
    定時器0初始化,選擇高頻時鐘,正常PWM模式,無分頻,則TIMER0_CTRL_REG = 0X0E;
    設置計數值為1000,高電平為500,低電平為200,則TIMER0_ON_REG=1000; TIMER0_RELOAD_M_REG=500; TIMER0_RELOAD_N_REG=200;
    開定時器中斷NVIC_SetPriority (SWTIM_IRQn, 254); NVIC_EnableIRQ(SWTIM_IRQn);
    啟動定時器TIMER0_CTRL_REG = (TIMER0_CTRL_REG|0x01);



    第三節 定時器實驗

    實驗需要使用的模塊有:手機開發板底板,Jlink調試工具,杜邦線、3.7V鋰電池或Mocro USB線。
    使用JLINK通過杜邦線連接手機藍牙位于手機主控底板,連接方式如下:
    (1)JLINK一端只需要使用杜邦線連接JLINK的SWC、SWD、GND三個引腳,如下圖所示:

   
    圖12
    (2)手機藍牙一端需要使用杜邦線連接上方右側的J3三個引腳,與JLINK的連接引腳一一對應,分別為SWC-->SWCLK、SWD-->SWDIO、GND-->GND,如下圖所示:

   
    圖13
    將JLINK插上電腦的USB接口,連接好之后給手機主控底板供電,詳細的介紹可以參考《如何上電》教程,路徑為:..\WT_Mobile\0.從這里開始\0.開機測試。
    打開定時器實驗的Keil工程timer0_general.uvproj,位于目錄:
    ..\WT_Mobile\1.初級教程\DA14580\3_初級_定時器\projects\target_apps\peripheral_examples\timer0\timer0_general\Keil_5。如下圖所示:

   
    圖14
    使用手環調試下載線連接好Jlink,編譯,點擊DEBUG,然后點擊全速運行,則可以看到藍色LED閃爍,如下圖所示:



   
    圖15



    文件下載請點擊: Timer教程.pdf (750.77 KB)


您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 97视频在线| 日本高清不卡码 | 国产原创麻豆精品视频 | 国产精品成人观看视频免费 | 午夜爱| 欧美成人性生活视频 | 一区二区三区欧美在线 | 亚色国产 | 国产成人久久精品二区三区牛 | 欧美在线高清视频播放免费 | 久久h| 成人网在线播放 | 国产精品自产拍在线观看2019 | 青青青手机在线视频 | 日韩性黄色一级 | 国产精品久久永久免费 | 欧美另类亚洲一区二区 | 久热这里只有精品99国产6 | 91麻豆国产 | 国产又黄又免费aaaa视频 | 香蕉国产精品 | 成人午夜动漫在线观看 | 国产三级观看久久 | 精品久久久久久中文字幕一区 | 黄片毛片在线观看 | 韩国二级毛片免费播放 | 亚洲欧美一区二区三区二厂 | 国产四虎精品8848hh | 瑜伽女人一级毛片 | 亚洲激情一区 | 东北话清晰刺激对白 | 青草视频在线观看完整版 | aaa毛片视频免费观看 | 日本特黄特色大片免费播放视频 | 国产小视频国产精品 | 欧美粗又大 | 国产激情影院 | 日韩视频在线观看免费 | 精品欧美小视频在线观看 | 五月婷婷在线观看视频 | 九九久久国产精品免费热6 九九久久国产精品 |