STM32中如何使用PC14和PC15_第1頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、stm32中如何使用pc14和pc15在的數(shù)據(jù)手冊的管腳分配圖中可以看到:pc14與osc32_in公用一個引腳,pc15與osc32_out公用一個引腳,它們的用法辦法如下:當lse(低速外部時鐘信號)開啟時,這兩個公用管腳的功能是osc32_in和osc32_out。當lse(低速外部時鐘信號)關(guān)閉時這兩個公用管腳的功能是pc14和pc15。備用區(qū)域控制寄存器(rcc_bdcr)的lseon用于控制lse的開啟或關(guān)閉。關(guān)于這個寄存器的使用請參看stm3210x技術(shù)參考手冊。作為gpio輸出的配置過程:(1).使能gpioc時鐘rcc_apb2periphclockcmd(rcc_apb2p

2、eriph_gpioc, enable);(2).配置gpiocgpio_initstructure.gpio_pin = gpio_pin_14 | gpio_pin_15;gpio_initstructure.gpio_speed = gpio_speed_2mhz;gpio_initstructure.gpio_mode = gpio_mode_out_pp;gpio_init(gpioc, &gpio_initstructure);(3).然后寫高寫低gpio_writebit(gpioc, gpio_pin_14, bit_set);gpio_writebit(gpioc,

3、gpio_pin_15, bit_set);gpio_writebit(gpioc, gpio_pin_14, bit_reset);gpio_writebit(gpioc, gpio_pin_15, bit_reset);以上代碼跑在兩個板子上,一個是backup區(qū)域里的rcc_dbcr的lseon為0,即lse關(guān)閉,以上(3) 的操作從上看到了電平相應(yīng)變換;另外一個板子,backup區(qū)域里的rcc_dbcr的lseon為1,即lse打開,則以上(3)的操作從示波器上看到無效。作為gpio輸入的配置過程:只是把以上的(2)略微改一下,(3)就不用了gpio_initstructure.gpi

4、o_pin = gpio_pin_14 | gpio_pin_15;gpio_initstructure.gpio_mode = gpio_mode_in_floating;gpio_init(gpioc, &gpio_initstructure);外部銜接為:在pc14引腳焊了一個,電阻另一端通過跳線在上拉到3.3v和下拉到地的兩種狀況下,讀出gpioc_idr.14分離為"1"和"0"。作為外部中斷輸入的配置過程:1.時鐘使能/ + osc32_in/out -> pc14/15rcc_apb2periphclockcmd(rcc_ap

5、b2periph_gpioc |rcc_apb2periph_afio, enable);注重要使能afio的時鐘哦2.中斷配置/ + for exti on pc.14 at falling edge/* configure one bit for preemption priority */nvic_prioritygroupconfig(nvic_prioritygroup_1);nvic_initstructure.nvic_irqchannel = exti15_10_irqchannel;nvic_initstructure.nvic_irqchannelpreemptionpri

6、ority = 0;nvic_initstructure.nvic_irqchannelsubpriority = 0;nvic_initstructure.nvic_irqchannelcmd = enable;nvic_init(&nvic_initstructure);3. gpio配置同上4. exti配置/ + for pc14 exti falling edgegpio_extilineconfig(gpio_portsourcegpioc, gpio_pinsource14);exti_initstructure.exti_line = exti_line14;exti_

7、initstructure.exti_mode = exti_mode_interrupt;exti_initstructure.exti_trigger = exti_trigger_falling;exti_initstructure.exti_linecmd = enable;exti_init(&exti_initstructure);5. 中斷處理isrvoid exti15_10_irqhandler(void)if(exti_getitstatus(exti_line14) != reset)/* clear the exti line 9 pending bit */e

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論