24stm32外設(shè)篇紅外線發(fā)射工作原理及程序設(shè)計_第1頁
24stm32外設(shè)篇紅外線發(fā)射工作原理及程序設(shè)計_第2頁
24stm32外設(shè)篇紅外線發(fā)射工作原理及程序設(shè)計_第3頁
24stm32外設(shè)篇紅外線發(fā)射工作原理及程序設(shè)計_第4頁
24stm32外設(shè)篇紅外線發(fā)射工作原理及程序設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

紅外編碼調(diào)制通常有通過脈沖寬度來實現(xiàn)信號調(diào)制的脈寬調(diào)制()率位38KHz。達(dá)到紅外編碼的頻率要求。4.24.1紅外線發(fā)送原理圖數(shù);USART串口通訊函數(shù);定時器函數(shù)。Misc.c//中斷控制字(優(yōu)先級設(shè)置)庫函數(shù)stm32f10x_exti.c//外部中斷庫處理函數(shù)stm32f10x_tim.c//定時器庫處理函數(shù)stm32f10x_usart.c//串口通訊函數(shù)#ifndef#ifndef_pbdata_H#define#include"misc.h"#include"stm32f10x_exti.h"#include"stm32f10x_tim.h"#include"sttdio.h"#include"hw_fs.h"externu8dt;//定義全局變量externu32hw_jsm;//定義全局變量externu8hw_jsbz;voidRCC_HSE_Configuration(void);voiddelay(u32nCount);voiddelay_us(u32nus);voiddelay_ms(u16ifndef、#endifpbdata.h現(xiàn)錯誤提示。如果不加這兩條語句,當(dāng)兩個文件同時調(diào)用pbdata文件時,#includeu8dt=0;u32flag=0;u8js_count=0;#includeu8dt=0;u32flag=0;u8js_count=0;{RCC_DeInit();/*將外設(shè)RCC寄存器重設(shè)為缺省值*/ if(RCC_WaitForHSEStartUp(SUCCESS/*HSE起振,—AHB——APB2——APB1HCLK /*使能PLL*/while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)RESET)/*RCC while(RCC_GetSYSCLKSource( /*0x08:PLL}}voiddelay(u32{for(;nCount!=0;nCount--} 稱:delay_us(u32 能:微秒延時函參數(shù):u32 明voiddelay_us(u32nus){u32SysTick->LOAD={temp=SysTick- SysTick->CTRL=0x00;SysTick->VAL=0X00;} 稱:delay_ms(u16 能:毫秒延時函參數(shù):u16 明voiddelay_ms(u16nms){u32SysTick->LOAD=9000*nms;{temp=SysTick- SysTick->CTRL=0x00;//關(guān)閉計數(shù)器SysTick->VAL=0X00;}我們強調(diào),每個工程都必須在開始時配置并啟動STM32系統(tǒng)時鐘,能{ { }//printf("字符串輸出在中斷處理stm32f10x_it.c1TIM21voidGPIO_ResetBits(GPIO_TypeDef*GPIOx,u16GPIOx:xA,B,C,DEGPIOGPIO_Pin_x(x0-15)的任意組合無無無無/*ClearstheGPIOAportpin10andpin15*/GPIO_ResetBits(GPIOA,GPIO_Pin_10|GPIO_Pin_15);GPIOWriteBit2voidGPIO_WriteBit(GPIO_TypeDef*GPIOx,u16GPIO_Pin,GPIOx:xA,B,C,DEGPIOGPIO_Pin_x(x0-15)的任意組合Bit_RESET:Bit_SET:設(shè)置數(shù)據(jù)端口位無無無無無/*SettheGPIOAportpin15*/GPIO_WriteBit(GPIOA,GPIO_Pin_15,Bit_SET);3u16GPIO_ReadInputData(GPIO_TypeDef*GPIOx:xA,B,C,DEGPIO無無無/*ReadtheGPIOCinputdataportandstoreitinReadValueu16ReadValue=#include"stm32f10x_it.h"#include"stm32f10x_it.h"#include"stm32f10x_rcc.h"#include"misc.h"#includevoid{}void{{ }void{if(js_count>0)js_count--if(flag==1)if(flag==1)1,{GPIO_Pin_12))));//向PD-12管腳每隔一定時間寫與上次取反的狀態(tài)值}{}}#ifndef_HW_FS_H#define_HW_FS_H#ifndef_HW_FS_H#define_HW_FS_Hvoidhw_fs(u32dt);#include#includevoid{TIM_TimeBaseInitTypeDef}voidhw_fs(u32{u8while(js_count);while(js_count);{js_count=42;//0.56mswhile(js_count); {js_count=43;//0.565ms}{js_count=128;//1.69ms}dt=dt<<1;}js_count=20;//0.263msjs_count=20;//0.263ms}#include#includevoidRCC_Configuration(void);voidGPIO_Configuration(void);voidNVIC_Configuration(void);intfputc(intch,FILE{returnch;}int{{//printf(" }}void{RCC_Configuration();u32RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);}void{ GPIO_InitTypeDef}void{ NVIC_InitTypeDefNVIC_InitStructure.NVIC_IRQChannel=NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=NVIC_InitStructure.NVIC_IRQChannelSubPriority=NVIC_InitStructure.NVIC_IRQChannelCmd=NVIC_InitStructure.NVIC_IRQChannel=NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=NVIC_InitStructure.NVIC_IRQChannelSubPriority=NVIC_InitStructure.NVIC_IRQChannelCmd=}voidvoid{ USART_InitTypeDefUSART_InitStructu

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論