91视频免费?看_蜜芽MY188精品TV在线观看_国产免费无遮挡在线观看视频_深夜国产_亚洲精品欧洲精品_欧美黑人粗暴多交

  • 回復(fù)
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

【show】12V5A輸出的三種拓?fù)?,反激,正激,推挽?/h1>

      本文延續(xù)了“【討論】各位高手大師進來看看,此貼必火!”這個帖子,在那個帖子中討論了方案,大家說出了自己對此設(shè)計的看法。首先,感謝chenyankun,老梁頭ta7698rj44444,wanghaiting,xd285070,yueyunno1zhenxiang,wangjiudan,

,singer2002各位大師的解答與建議。還有一位非常熱心的哥哥,那就是那個“坑蒙拐騙”我的單片機的“”新月GG“”。其次,大家在討論中,都提到了正激的效率會比反激的效率高,我也查了相關(guān)的資料,確實如此。但是由于在知道這個正激效率高的信息的時候,我已經(jīng)向電源CBD區(qū)020徐大哥買了一款芯片,ME8202,這款芯片有許多的好處,講究的辦事,不能出爾反爾,所以,我打算先用反激做做看。并不是否定大家意見的意思。老實說,這是我們大學(xué)本科組的一個電子設(shè)計大賽的電源題目,我正在做,由于時間比較長,有一個月的時間,很充分,所以又一次決定先用反激做一下看看,效率會有多少。之后該方案,做個正激,兩個比較著學(xué)習(xí)。第三,那就是為了我的《開關(guān)電源設(shè)計(第3版)》,干掉電源網(wǎng)80樓,感謝大家可以熱心回復(fù)此帖子。先謝謝大家!

 

電源設(shè)計題目如下:

DC-DC開關(guān)穩(wěn)壓電源

一、任務(wù)

設(shè)計并制作如圖1所示的開關(guān)穩(wěn)壓電源。

                                QQ圖片20140410204920

1電源框圖

二、要求

在電阻負(fù)載條件下,使電源滿足下述要求:

1.基本要求

(1) 輸出電壓VO12V;

(2) 額定輸出電流ION5A;

(3) VinDC41V變到DC57V時,電壓調(diào)整率SU2%IO=5A);

(4) IO從0變到5A時,負(fù)載調(diào)整率SI5%Vin=48V);

(5) 輸出噪聲紋波電壓峰-峰值VOPP1VVin=48V,VO=12V,IO=5A);

(6) DC-DC變換器效率70%Vin=48V,Vo=12V,IO=5A);

(7) 具有過流保護功能,動作電流IO(th)=6±0.2A;

2.發(fā)揮部分

(1) 進一步提高電壓調(diào)整率,使SU0.5%IO=5A)

(2) 進一步提高負(fù)載調(diào)整率,使SI1%Vin=48V)

(3) 進一步提高效率,使85%Vin=48V,UO=12V,IO=5A);

(4) 排除過流故障后,電源能自動恢復(fù)為正常狀態(tài);

(5) 具有輸出電壓、電流的測量和數(shù)字顯示功能。

(6) 其他。

 

全部回復(fù)(161)
正序查看
倒序查看
2014-04-16 18:56
原理圖已經(jīng)畫好如下。參數(shù)都已經(jīng)設(shè)計完,由于是比賽的題目,所以此次設(shè)計并沒有考慮成本和體積的要素,更加注重了效率,所以元器件選擇的時候都比較貴一些,但是,一分錢一分貨,確實有它的好處。同時還要感謝電源網(wǎng)這個平臺,我一直都沒注意到的一個頁面就是Elecshop.com。這里面的好多元器件的選型,元器件的價格以及主參數(shù)都已經(jīng)列出,可以買的不大頭,也可以比較選擇更加適合的元器件。TKS TO DIANYUANWANG.

0
回復(fù)
2014-04-16 18:57
@SKY丶輝煌
原理圖已經(jīng)畫好如下。參數(shù)都已經(jīng)設(shè)計完,由于是比賽的題目,所以此次設(shè)計并沒有考慮成本和體積的要素,更加注重了效率,所以元器件選擇的時候都比較貴一些,但是,一分錢一分貨,確實有它的好處。同時還要感謝電源網(wǎng)這個平臺,我一直都沒注意到的一個頁面就是Elecshop.com。這里面的好多元器件的選型,元器件的價格以及主參數(shù)都已經(jīng)列出,可以買的不大頭,也可以比較選擇更加適合的元器件。TKSTODIANYUANWANG.[圖片]

由于買的mosfet和diode沒有郵寄到,所以焊接過程要等兩天,這些參數(shù)大家可以幫忙參考一下,有什么不足之處,大家一起討論。謝謝大家

0
回復(fù)
2014-04-16 18:59
變壓器采用了PQ5050,這個變壓器個頭確實好大,買的時候18元一個。聽很多的前輩說,變壓器大點對效率提高有好處,所以此次特別選擇了大個的變壓器,來試試是不是真的。
0
回復(fù)
2014-04-16 19:10

 

PQ5050:原邊10匝4股0.67mm并饒

                副邊4匝20股0.67并饒

            原邊10匝4股0.67mm并饒

            輔助繞組5匝0.33mm

采用三明治繞法,有效降低漏感。

0
回復(fù)
老梁頭
LV.10
6
2014-04-16 19:28
@SKY丶輝煌
[圖片] PQ5050:原邊10匝4股0.67mm并饒                副邊4匝20股0.67并饒            原邊10匝4股0.67mm并饒            輔助繞組5匝0.33mm采用三明治繞法,有效降低漏感。
個人感覺最好用絲包線 絞合線來繞 避免趨膚效應(yīng)
0
回復(fù)
2014-04-16 20:08
@老梁頭
個人感覺最好用絲包線絞合線來繞避免趨膚效應(yīng)
絲包線?是漆包線么?
0
回復(fù)
蘭波
LV.8
8
2014-04-16 22:26
@SKY丶輝煌
[圖片] PQ5050:原邊10匝4股0.67mm并饒                副邊4匝20股0.67并饒            原邊10匝4股0.67mm并饒            輔助繞組5匝0.33mm采用三明治繞法,有效降低漏感。
期待你的大作,坐等圖文并茂的講解。
0
回復(fù)
2014-04-17 11:25
好棒~
0
回復(fù)
2014-04-17 13:42
@SKY丶輝煌
絲包線?是漆包線么?

就是多股線。

0
回復(fù)
SKY丶輝煌
LV.10
11
2014-04-17 17:31
@新月GG
就是多股線。
恩,多股并饒~
0
回復(fù)
btma
LV.8
12
2014-04-17 20:27
@SKY丶輝煌
[圖片] PQ5050:原邊10匝4股0.67mm并饒                副邊4匝20股0.67并饒            原邊10匝4股0.67mm并饒            輔助繞組5匝0.33mm采用三明治繞法,有效降低漏感。
PQ5050反激能上200多W了,用于60W太奢了吧?
0
回復(fù)
SKY丶輝煌
LV.10
13
2014-04-17 20:48
@btma
PQ5050反激能上200多W了,用于60W太奢了吧?

恩,是的。我想驗證一下是不是變壓器體積大點,會不會提升效率,由于不是產(chǎn)品,就做一套而已,所以并沒有考慮到體積和成本問題。謝謝你的指導(dǎo)

0
回復(fù)
2014-04-17 23:23
@SKY丶輝煌
恩,多股并饒~

不是多股并饒,是多股線。

0
回復(fù)
wangjiudan
LV.5
15
2014-04-18 01:30
等待學(xué)習(xí)
0
回復(fù)
2014-04-18 09:12
@SKY丶輝煌
恩,是的。我想驗證一下是不是變壓器體積大點,會不會提升效率,由于不是產(chǎn)品,就做一套而已,所以并沒有考慮到體積和成本問題。謝謝你的指導(dǎo)[圖片]
變壓器的個頭都比別人60W的電源大啦
0
回復(fù)
SKY丶輝煌
LV.10
17
2014-04-18 10:06
@qinzutaim
變壓器的個頭都比別人60W的電源大啦[圖片]
是啊,嘿嘿
0
回復(fù)
SKY丶輝煌
LV.10
18
2014-04-18 10:09
@qinzutaim
變壓器的個頭都比別人60W的電源大啦[圖片]
有沒有這個說法呢?變壓器個頭大,綜合損耗小?
0
回復(fù)
2014-04-18 10:12
@SKY丶輝煌
有沒有這個說法呢?變壓器個頭大,綜合損耗???
鐵損和銅損都會降低,這個好理解啊。。。。
0
回復(fù)
SKY丶輝煌
LV.10
20
2014-04-18 10:43
@qinzutaim
鐵損和銅損都會降低,這個好理解啊。。。。
哈哈,英雄所見略同,我的一個哥哥也是這么認(rèn)為
0
回復(fù)
SKY丶輝煌
LV.10
21
2014-04-18 11:04

干貨更新,由于在黑龍江,大部分電子元器件,比較優(yōu)質(zhì)的MOSFET,DIODE沒有賣的,所以只能在網(wǎng)上買了MOSFET和DIODE,由于順豐也不給力了,兩天還沒到(有可能是商家沒發(fā)貨),所以這兩天抽出空來解決一下單片機顯示問題,由于普通51單片機內(nèi)部沒有ADC功能,所以本次設(shè)計采用了STM8單片機,是STM32的前身,STM8內(nèi)部自帶ADC,不用外接ADC模塊,比如ADC0832.Stm8內(nèi)部有16個轉(zhuǎn)換通道,10位的采樣精度,所以基于此優(yōu)點,本次選擇此芯片。把進步向大家發(fā)出來:現(xiàn)在完成一路的采樣,電壓采樣:

0
回復(fù)
SKY丶輝煌
LV.10
22
2014-04-18 11:06
@SKY丶輝煌
干貨更新,由于在黑龍江,大部分電子元器件,比較優(yōu)質(zhì)的MOSFET,DIODE沒有賣的,所以只能在網(wǎng)上買了MOSFET和DIODE,由于順豐也不給力了,兩天還沒到(有可能是商家沒發(fā)貨),所以這兩天抽出空來解決一下單片機顯示問題,由于普通51單片機內(nèi)部沒有ADC功能,所以本次設(shè)計采用了STM8單片機,是STM32的前身,STM8內(nèi)部自帶ADC,不用外接ADC模塊,比如ADC0832.Stm8內(nèi)部有16個轉(zhuǎn)換通道,10位的采樣精度,所以基于此優(yōu)點,本次選擇此芯片。把進步向大家發(fā)出來:現(xiàn)在完成一路的采樣,電壓采樣:[圖片]

精度還可以,有1mV的誤差,可以允許的。

下面把程序發(fā)出來讓大家審核,有什么完善的地方我一定做到,希望大家給出寶貴意見。

 

/**
  ******************************************************************************
  * @file    Project/main.c 
  * @author  MCD Application Team
  * @version V2.0.0
  * @date    25-February-2011
  * @brief   Main program body
  ******************************************************************************
  * @attention
  *
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
  * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
  * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  *
  * 

© COPYRIGHT 2011 STMicroelectronics

****************************************************************************** */ /* Includes ------------------------------------------------------------------*/ #include "stm8s.h" /* Private defines -----------------------------------------------------------*/ unsigned char const shumaguan[] = {0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90}; //ADCValue數(shù)組存放A/D采樣值,voltageADC為數(shù)字濾波后的結(jié)果 unsigned int ADCValue[20] = {0},voltageADC = 0; //voltage為電壓計算結(jié)果,單位mV unsigned int voltage = 0; /* Private function prototypes -----------------------------------------------*/ void ADConvert(void); void DigitalFiltering(void); void Display(void); void Delay(unsigned int t); /* Private functions ---------------------------------------------------------*/ void main(void) { unsigned char i; //PG口數(shù)碼管段選,PE口數(shù)碼管位選 GPIO_Init(GPIOG,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST); GPIO_Init(GPIOE,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST); /*ADC2配置為: -連續(xù)轉(zhuǎn)換模式 -通道0(PB0) -fADC = fmaster/2 -觸發(fā)模式為定時器 -觸發(fā)關(guān) -數(shù)據(jù)右對齊 -選擇通道0上的施密特觸發(fā)器 -施密特觸發(fā)器關(guān)*/ ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS, ADC2_CHANNEL_0, ADC2_PRESSEL_FCPU_D2, ADC2_EXTTRIG_TIM, DISABLE, ADC2_ALIGN_RIGHT, ADC2_SCHMITTTRIG_CHANNEL0, DISABLE); /* Infinite loop */ while (1) { //連續(xù)轉(zhuǎn)換20次 ADConvert(); //數(shù)字濾波 DigitalFiltering(); i = 200; while(i --) Display(); } } void ADConvert(void) { unsigned char count = 0; //連續(xù)轉(zhuǎn)換 ADC2->CR1 |= 0x02; ADC2_StartConversion(); while(count < 20) { //等待轉(zhuǎn)換結(jié)束 while(ADC2_GetFlagStatus() == RESET); //清除轉(zhuǎn)換結(jié)束標(biāo)志位 ADC2_ClearFlag(); ADCValue[count] = ADC2_GetConversionValue(); count++; } //關(guān)閉連續(xù)轉(zhuǎn)換 ADC2->CR1 &= ~0X02; } void DigitalFiltering(void) { unsigned char i,j; unsigned int temp; //對數(shù)組排序 for(i = 20;i >= 1;i--) { for(j = 0;j<(i-1);j++) { if(ADCValue[j] > ADCValue[j+1]) { temp = ADCValue[j]; ADCValue[j] = ADCValue[j+1]; ADCValue[j+1] = temp; } } } //舍棄最大和最小的兩個數(shù),然后求平均值 voltageADC = 0; for(i = 2;i<=17;i++) voltageADC += ADCValue[i]; voltageADC /= 16; } void Display(void) { unsigned char displayArray[4],i; voltage = (unsigned int)((unsigned long)voltageADC * 3161UL / 1023UL); //拆分?jǐn)?shù)據(jù),使用數(shù)碼管顯示 displayArray[3] = voltage / 1000; displayArray[2] = (voltage % 1000) / 100; displayArray[1] = (voltage % 100) / 10; displayArray[0] = voltage % 10; //使用數(shù)碼管顯示電壓值,單位mV for(i = 0;i < 4;i++) { GPIOG->ODR = shumaguan[displayArray[i]]; GPIOE->ODR = ~(0X01 << i); Delay(100); GPIOE->ODR = 0XFF; } } void Delay(unsigned int t) { while(t--); } #ifdef USE_FULL_ASSERT /** * @brief Reports the name of the source file and the source line number * where the assert_param error has occurred. * @param file: pointer to the source file name * @param line: assert_param error line source number * @retval : None */ void assert_failed(u8* file, u32 line) { /* User can add his own implementation to report the file name and line number, ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ /* Infinite loop */ while (1) { } } #endif /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/

 

0
回復(fù)
zhenxiang
LV.10
23
2014-04-18 11:12
@SKY丶輝煌
是啊,嘿嘿
太浪費了。而且這個方案效率做不高。
0
回復(fù)
SKY丶輝煌
LV.10
24
2014-04-18 11:24
@zhenxiang
太浪費了。而且這個方案效率做不高。
恩,批評接受。做完這個方案在做正激試試
0
回復(fù)
yueyunno1
LV.9
25
2014-04-18 11:37
@SKY丶輝煌
精度還可以,有1mV的誤差,可以允許的。下面把程序發(fā)出來讓大家審核,有什么完善的地方我一定做到,希望大家給出寶貴意見。 /*********************************************************************************@fileProject/main.c*@authorMCDApplicationTeam*@versionV2.0.0*@date25-February-2011*@briefMainprogrambody*******************************************************************************@attention**THEPRESENTFIRMWAREWHICHISFORGUIDANCEONLYAIMSATPROVIDINGCUSTOMERS*WITHCODINGINFORMATIONREGARDINGTHEIRPRODUCTSINORDERFORTHEMTOSAVE*TIME.ASARESULT,STMICROELECTRONICSSHALLNOTBEHELDLIABLEFORANY*DIRECT,INDIRECTORCONSEQUENTIALDAMAGESWITHRESPECTTOANYCLAIMSARISING*FROMTHECONTENTOFSUCHFIRMWAREAND/ORTHEUSEMADEBYCUSTOMERSOFTHE*CODINGINFORMATIONCONTAINEDHEREININCONNECTIONWITHTHEIRPRODUCTS.**©COPYRIGHT2011STMicroelectronics*******************************************************************************//*Includes------------------------------------------------------------------*/#include"stm8s.h"/*Privatedefines-----------------------------------------------------------*/unsignedcharconstshumaguan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//ADCValue數(shù)組存放A/D采樣值,voltageADC為數(shù)字濾波后的結(jié)果unsignedintADCValue[20]={0},voltageADC=0;//voltage為電壓計算結(jié)果,單位mVunsignedintvoltage=0;/*Privatefunctionprototypes-----------------------------------------------*/voidADConvert(void);voidDigitalFiltering(void);voidDisplay(void);voidDelay(unsignedintt);/*Privatefunctions---------------------------------------------------------*/voidmain(void){unsignedchari;//PG口數(shù)碼管段選,PE口數(shù)碼管位選GPIO_Init(GPIOG,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST);GPIO_Init(GPIOE,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST);/*ADC2配置為:-連續(xù)轉(zhuǎn)換模式-通道0(PB0)-fADC=fmaster/2-觸發(fā)模式為定時器-觸發(fā)關(guān)-數(shù)據(jù)右對齊-選擇通道0上的施密特觸發(fā)器-施密特觸發(fā)器關(guān)*/ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS,ADC2_CHANNEL_0,ADC2_PRESSEL_FCPU_D2,ADC2_EXTTRIG_TIM,DISABLE,ADC2_ALIGN_RIGHT,ADC2_SCHMITTTRIG_CHANNEL0,DISABLE);/*Infiniteloop*/while(1){//連續(xù)轉(zhuǎn)換20次ADConvert();//數(shù)字濾波DigitalFiltering();i=200;while(i--)Display();}}voidADConvert(void){unsignedcharcount=0;//連續(xù)轉(zhuǎn)換ADC2->CR1|=0x02;ADC2_StartConversion();while(count<20){//等待轉(zhuǎn)換結(jié)束while(ADC2_GetFlagStatus()==RESET);//清除轉(zhuǎn)換結(jié)束標(biāo)志位ADC2_ClearFlag();ADCValue[count]=ADC2_GetConversionValue();count++;}//關(guān)閉連續(xù)轉(zhuǎn)換ADC2->CR1&=~0X02;}voidDigitalFiltering(void){unsignedchari,j;unsignedinttemp;//對數(shù)組排序for(i=20;i>=1;i--){for(j=0;jADCValue[j+1]){temp=ADCValue[j];ADCValue[j]=ADCValue[j+1];ADCValue[j+1]=temp;}}}//舍棄最大和最小的兩個數(shù),然后求平均值voltageADC=0;for(i=2;iODR=shumaguan[displayArray[i]];GPIOE->ODR=~(0X01ODR=0XFF;}}voidDelay(unsignedintt){while(t--);}#ifdefUSE_FULL_ASSERT/***@briefReportsthenameofthesourcefileandthesourcelinenumber*wheretheassert_paramerrorhasoccurred.*@paramfile:pointertothesourcefilename*@paramline:assert_paramerrorlinesourcenumber*@retval:None*/voidassert_failed(u8*file,u32line){/*Usercanaddhisownimplementationtoreportthefilenameandlinenumber,ex:printf("Wrongparametersvalue:file%sonline%d\r\n",file,line)*//*Infiniteloop*/while(1){}}#endif/*******************(C)COPYRIGHT2011STMicroelectronics*****ENDOFFILE****/ 
不錯  學(xué)習(xí)中!
0
回復(fù)
SKY丶輝煌
LV.10
26
2014-04-18 11:45
@yueyunno1
不錯 學(xué)習(xí)中!
嘿嘿,跟老師你學(xué)習(xí)~
0
回復(fù)
yueyunno1
LV.9
27
2014-04-18 17:13
@SKY丶輝煌
嘿嘿,跟老師你學(xué)習(xí)~
不錯希望樓主早點把細(xì)節(jié)更新出來我們都學(xué)學(xué)!
0
回復(fù)
yueyunno1
LV.9
28
2014-04-18 17:15
@SKY丶輝煌
干貨更新,由于在黑龍江,大部分電子元器件,比較優(yōu)質(zhì)的MOSFET,DIODE沒有賣的,所以只能在網(wǎng)上買了MOSFET和DIODE,由于順豐也不給力了,兩天還沒到(有可能是商家沒發(fā)貨),所以這兩天抽出空來解決一下單片機顯示問題,由于普通51單片機內(nèi)部沒有ADC功能,所以本次設(shè)計采用了STM8單片機,是STM32的前身,STM8內(nèi)部自帶ADC,不用外接ADC模塊,比如ADC0832.Stm8內(nèi)部有16個轉(zhuǎn)換通道,10位的采樣精度,所以基于此優(yōu)點,本次選擇此芯片。把進步向大家發(fā)出來:現(xiàn)在完成一路的采樣,電壓采樣:[圖片]
設(shè)備不錯嘛  用的都是福祿克萬用表
0
回復(fù)
SKY丶輝煌
LV.10
29
2014-04-18 17:58
@yueyunno1
不錯希望樓主早點把細(xì)節(jié)更新出來我們都學(xué)學(xué)!
大師你太低調(diào)了,嘿嘿
0
回復(fù)
SKY丶輝煌
LV.10
30
2014-04-18 17:58
@yueyunno1
設(shè)備不錯嘛 用的都是福祿克萬用表
讓你發(fā)現(xiàn)了
0
回復(fù)
SKY丶輝煌
LV.10
31
2014-04-19 19:59
@SKY丶輝煌
精度還可以,有1mV的誤差,可以允許的。下面把程序發(fā)出來讓大家審核,有什么完善的地方我一定做到,希望大家給出寶貴意見。 /*********************************************************************************@fileProject/main.c*@authorMCDApplicationTeam*@versionV2.0.0*@date25-February-2011*@briefMainprogrambody*******************************************************************************@attention**THEPRESENTFIRMWAREWHICHISFORGUIDANCEONLYAIMSATPROVIDINGCUSTOMERS*WITHCODINGINFORMATIONREGARDINGTHEIRPRODUCTSINORDERFORTHEMTOSAVE*TIME.ASARESULT,STMICROELECTRONICSSHALLNOTBEHELDLIABLEFORANY*DIRECT,INDIRECTORCONSEQUENTIALDAMAGESWITHRESPECTTOANYCLAIMSARISING*FROMTHECONTENTOFSUCHFIRMWAREAND/ORTHEUSEMADEBYCUSTOMERSOFTHE*CODINGINFORMATIONCONTAINEDHEREININCONNECTIONWITHTHEIRPRODUCTS.**©COPYRIGHT2011STMicroelectronics*******************************************************************************//*Includes------------------------------------------------------------------*/#include"stm8s.h"/*Privatedefines-----------------------------------------------------------*/unsignedcharconstshumaguan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//ADCValue數(shù)組存放A/D采樣值,voltageADC為數(shù)字濾波后的結(jié)果unsignedintADCValue[20]={0},voltageADC=0;//voltage為電壓計算結(jié)果,單位mVunsignedintvoltage=0;/*Privatefunctionprototypes-----------------------------------------------*/voidADConvert(void);voidDigitalFiltering(void);voidDisplay(void);voidDelay(unsignedintt);/*Privatefunctions---------------------------------------------------------*/voidmain(void){unsignedchari;//PG口數(shù)碼管段選,PE口數(shù)碼管位選GPIO_Init(GPIOG,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST);GPIO_Init(GPIOE,GPIO_PIN_ALL,GPIO_MODE_OUT_PP_HIGH_FAST);/*ADC2配置為:-連續(xù)轉(zhuǎn)換模式-通道0(PB0)-fADC=fmaster/2-觸發(fā)模式為定時器-觸發(fā)關(guān)-數(shù)據(jù)右對齊-選擇通道0上的施密特觸發(fā)器-施密特觸發(fā)器關(guān)*/ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS,ADC2_CHANNEL_0,ADC2_PRESSEL_FCPU_D2,ADC2_EXTTRIG_TIM,DISABLE,ADC2_ALIGN_RIGHT,ADC2_SCHMITTTRIG_CHANNEL0,DISABLE);/*Infiniteloop*/while(1){//連續(xù)轉(zhuǎn)換20次ADConvert();//數(shù)字濾波DigitalFiltering();i=200;while(i--)Display();}}voidADConvert(void){unsignedcharcount=0;//連續(xù)轉(zhuǎn)換ADC2->CR1|=0x02;ADC2_StartConversion();while(count<20){//等待轉(zhuǎn)換結(jié)束while(ADC2_GetFlagStatus()==RESET);//清除轉(zhuǎn)換結(jié)束標(biāo)志位ADC2_ClearFlag();ADCValue[count]=ADC2_GetConversionValue();count++;}//關(guān)閉連續(xù)轉(zhuǎn)換ADC2->CR1&=~0X02;}voidDigitalFiltering(void){unsignedchari,j;unsignedinttemp;//對數(shù)組排序for(i=20;i>=1;i--){for(j=0;jADCValue[j+1]){temp=ADCValue[j];ADCValue[j]=ADCValue[j+1];ADCValue[j+1]=temp;}}}//舍棄最大和最小的兩個數(shù),然后求平均值voltageADC=0;for(i=2;iODR=shumaguan[displayArray[i]];GPIOE->ODR=~(0X01ODR=0XFF;}}voidDelay(unsignedintt){while(t--);}#ifdefUSE_FULL_ASSERT/***@briefReportsthenameofthesourcefileandthesourcelinenumber*wheretheassert_paramerrorhasoccurred.*@paramfile:pointertothesourcefilename*@paramline:assert_paramerrorlinesourcenumber*@retval:None*/voidassert_failed(u8*file,u32line){/*Usercanaddhisownimplementationtoreportthefilenameandlinenumber,ex:printf("Wrongparametersvalue:file%sonline%d\r\n",file,line)*//*Infiniteloop*/while(1){}}#endif/*******************(C)COPYRIGHT2011STMicroelectronics*****ENDOFFILE****/ 
兩路AD采樣程序怎么寫?求幫助,求指點
0
回復(fù)
發(fā)
主站蜘蛛池模板: 江津市| 海盐县| 台南县| 新沂市| 天水市| 洛浦县| 南川市| 库车县| 莱芜市| 蒙山县| 义马市| 临澧县| 贺州市| 山阳县| 峨眉山市| 双牌县| 汝阳县| 平远县| 青海省| 嵊泗县| 伊川县| 卓尼县| 隆子县| 田阳县| 康定县| 松桃| 丹凤县| 临武县| 巨鹿县| 云阳县| 房产| 和顺县| 泗水县| 山东省| 自治县| 黎川县| 铜川市| 平阴县| 阿拉善盟| 分宜县| 绥滨县|