亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

標(biāo)題: 馬上要嵌入式上機(jī)考試了,分享一些整理了模塊初始化函數(shù)使用說(shuō)明 [打印本頁(yè)]

作者: liuda    時(shí)間: 2015-1-23 17:39
標(biāo)題: 馬上要嵌入式上機(jī)考試了,分享一些整理了模塊初始化函數(shù)使用說(shuō)明
前言:采用模塊編程,每個(gè)模塊都有.H 和.c 文件。  所以編寫(xiě)前加入到自己的工程里面。
1.問(wèn)題:配置一個(gè)USART,往往涉及到引腳,DMA通道,中斷向量,接收發(fā)送的配置,RCC外設(shè)時(shí)鐘的配置?
為了方便配置,我將這些 配置整合到了這3個(gè)函數(shù)。
       配置usart1使用波特率57600 并且使用DMA,只要這三句
SZ_STM32_COMInit(0,57600);
    __SZ_STM32_USART_DMAInit(0);
        __SZ_STM32_USART_NVICInit(0);
如果要切換USART2 或usart3  只要將0改成1或2即可
   
發(fā)送利用DMA發(fā)送數(shù)據(jù)調(diào)用這樣的函數(shù)即可
       /**-------------------------------------------------------  *
@函數(shù)名 __SZ_STM32_USART_DMAsenddata()  *
@功能   面向用戶(hù)的STM32的USART的DMA初始化函數(shù)  *
@參數(shù)1  COM1  對(duì)應(yīng)STM32的USART1 對(duì)應(yīng)開(kāi)啟中斷  *      
              COM2  對(duì)應(yīng)STM32的USART2 對(duì)應(yīng)開(kāi)啟中斷  *      
               COM3  對(duì)應(yīng)STM32的USART3 對(duì)應(yīng)開(kāi)啟中斷  *
   @參數(shù)2  Data  發(fā)送的字符串?dāng)?shù)據(jù)  * @參數(shù)3  Size  發(fā)送的字符串大小  * @返回值 無(wú)***
------------------------------------------------------*/
void __SZ_STM32_USART_DMAsenddata(COM_TypeDef COM,unsigned char Data[],unsigned char Size);

接收利用USART1中斷接收數(shù)據(jù)
USART1_IRQHandler(void)  
{
  if(USART_GetITStatus(USART1, USART_IT_IDLE) != RESET)  //總線(xiàn)空閑中斷
{
                USART_ReceiveData(USART1);             //讀DR,只有讀過(guò)一次,才能真正清除標(biāo)志
                         USART_ClearFlag(USART1,USART_IT_IDLE); //讀SR其實(shí)就是清除標(biāo)志
                          //添加用戶(hù)的處理程序
}
            __SZ_STM32_USART_DMAsreceivedata(1);
}
   
2.問(wèn)題:ADC1單通道和多連續(xù)通道的DMA配置整合?
配置一個(gè)ADC,往往涉及到引腳,DMA通道,中斷向量,接收發(fā)送的配置,RCC外設(shè)時(shí)鐘的配置?
只要一個(gè)函數(shù)
void SZ_STM32_ADC_Configuration(unsigned int l_ucchannelxx, u8 ADC1_SampleTime)
2個(gè)參數(shù),一個(gè)通道,一個(gè)轉(zhuǎn)化速度,就能配置成功
例如:
SZ_STM32_ADC_Configuration( ADC1_CHANNEL_7 ,ADC_SampleTime_13Cycles5):
配置了開(kāi)啟通道七,ADC_SampleTime_13Cycles5
由于開(kāi)啟的是DMA的它采回來(lái)的值是自動(dòng)放在數(shù)組里面的;
ADCConvertedValue[17];  里面。  
如果是單通道則放在數(shù)組的第一個(gè)如果是多通道則按照通道的順序依次放在數(shù)組里面;

3.問(wèn)題:STM32  DA 的配置?
DA配置就2個(gè)通道,而且GPIO只要設(shè)置外設(shè)時(shí)鐘即可。
為了對(duì)付考試,所以調(diào)用
  DA_init();
就默認(rèn)都開(kāi)啟
DA_addr=(uint32_t)DAC_BASE+0x20;/
DA_addr1=(uint32_t)DAC_BASE+0x08;
DA_addr2=(uint32_t)DAC_BASE+0x14;
然后對(duì)這兩個(gè)寄存器寫(xiě)值就可以輸出DA了。


4.還有一些 LED 和按鍵的  參考神州三號(hào)的編程方式   用起來(lái)也比較方便

,需要的請(qǐng)自己下載。 0-stm32外設(shè)配置模塊函數(shù)積累by,jobszf.zip (40.26 KB, 下載次數(shù): 16)






歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1