日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] STM32F103有雙DAC通道,利用DMA實(shí)現(xiàn)2個波形輸出#include "stm32f10x.h" //DAC1,2初始化 void dac_init(void) { RCC->APB2ENR |= RCC_APB2ENR_IOPAEN; //開啟端口A時鐘 RCC->APB1ENR |= RCC_APB1ENR

STM32F103有雙DAC通道,利用DMA實(shí)現(xiàn)2個波形輸出


#include "stm32f10x.h"

//DAC1,2初始化

void dac_init(void)

{

RCC->APB2ENR |= RCC_APB2ENR_IOPAEN; //開啟端口A時鐘

RCC->APB1ENR |= RCC_APB1ENR_DACEN; //開啟DAC時鐘

GPIOA->CRL &= 0xff00ffff; //PA4,PA5模擬輸入

DAC->CR = DAC_CR_TEN1 | DAC_CR_TEN2; //開啟觸發(fā)使能才能設(shè)置觸發(fā)模式

//開啟DAC,關(guān)閉輸出緩存,TIM6 TRGO觸發(fā),DMA使能

DAC->CR |= DAC_CR_EN1 | DAC_CR_BOFF1 | DAC_CR_DMAEN1 |

DAC_CR_EN2 | DAC_CR_BOFF2 | DAC_CR_DMAEN2;

//必須關(guān)閉緩沖才能輸出低于0.5V電壓

}

//DMA2初始化

void dma2_init(unsigned int cpar, unsigned int cmar, unsigned int cndtr)

{

RCC->AHBENR |= RCC_AHBENR_DMA2EN; //開啟DMA2時鐘

DMA2_Channel3->CPAR = cpar; //外設(shè)地址

DMA2_Channel3->CMAR = cmar; //存儲器地址

DMA2_Channel3->CNDTR = cndtr; //傳輸數(shù)據(jù)量

//通道開啟,從存儲器讀,循環(huán),外設(shè)不自增,存儲器自增

//外設(shè)32位數(shù)據(jù),存儲器32位數(shù)據(jù),優(yōu)先級最高,非存儲器到存儲器

DMA2_Channel3->CCR = DMA_CCR3_EN | DMA_CCR3_DIR | DMA_CCR3_CIRC |

DMA_CCR3_MINC | DMA_CCR3_PSIZE_1 | DMA_CCR3_MSIZE_1 |

DMA_CCR3_PL_0 | DMA_CCR3_PL_1;

}

//TIM6初始化

void tim6_init(unsigned short arr, unsigned short psc)

{

RCC->APB1ENR |= RCC_APB1ENR_TIM6EN; //開啟TIM6時鐘

TIM6->PSC = psc; //預(yù)分頻器

TIM6->ARR = arr; //自動重裝載

TIM6->CR2 &= 0xff8f;

TIM6->CR2 |= TIM_CR2_MMS_1; //更新事件用作TRGO

TIM6->CR1 &= 0xff70;

TIM6->CR1 |= TIM_CR1_CEN | TIM_CR1_ARPE; //使能計數(shù)器,非單脈沖模式,自動重裝載

}


初始化RCC時鐘為72MHz,正弦波1000點(diǎn),2個波形,一個反相,一個幅度改變


for(i = 0; i < 1000; i++)

{

sw[i] = 4095 - sine_wave[i];

sw[i] <<= 16;

sw[i] += sine_wave[i] / 3;

}

dma2_init((unsigned int)&DAC->DHR12RD, (unsigned int)sw, 1000);

dac_init();

tim6_init(7200, 0);


ARR為7199,PSC為0,72M/7199/1000=10Hz波形頻率,修改預(yù)分頻和重裝載數(shù)值可以改變波形頻率


計算公式:f=fosc/n/(arr+1)/(psc+1)


f-波形頻率


n-波形點(diǎn)數(shù)


arr-定時器計數(shù),不能為0


psc-時鐘分頻系數(shù)


fosc-系統(tǒng)時鐘,一般PLL后為72MHz


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在電子技術(shù)領(lǐng)域,RC 橋式振蕩電路作為一種常用的正弦波振蕩電路,被廣泛應(yīng)用于信號發(fā)生器、音頻設(shè)備等眾多電子設(shè)備中。其輸出穩(wěn)定的正弦波信號,對設(shè)備的正常運(yùn)行起著關(guān)鍵作用。然而,實(shí)際應(yīng)用中,RC 橋式振蕩電路的穩(wěn)幅效果常常受...

關(guān)鍵字: RC 橋式 振蕩電路 正弦波

Spwm的產(chǎn)生可以分為軟件方法和硬件方法,硬件方法通過硬件產(chǎn)生一路三角波一路正弦波,經(jīng)過一個比較器比較正弦波幅值與三角波幅值的關(guān)系即可得到spwm波。

關(guān)鍵字: 步進(jìn)電機(jī) 正弦波

函數(shù)發(fā)生器是一種多波形的信號源。它可以產(chǎn)生正弦波、方波、三角波、鋸齒波,甚至任意波形

關(guān)鍵字: 正弦波 方波

方波-正弦波轉(zhuǎn)換電路是將方波轉(zhuǎn)換為正弦波的重要模擬電路。它在電子的許多不同領(lǐng)域具有廣泛的應(yīng)用,例如數(shù)學(xué)運(yùn)算,聲學(xué),音頻應(yīng)用,逆變器,電源,函數(shù)發(fā)生器等。

關(guān)鍵字: 方波 正弦波 轉(zhuǎn)換器 模擬電路

PWM控制的基本原理可以概括為:通過對逆變電路開關(guān)器件的通斷進(jìn)行控制,使輸出端得到一系列幅值相等的脈沖,用這些脈沖來代替所需要的波形(如正弦波)。

關(guān)鍵字: PWM控制 脈沖 正弦波

目前從低頻到幾百 Mhz 的正弦波、三角波產(chǎn)生,絕大多數(shù)都使用了 DDS 芯片。

關(guān)鍵字: 正弦波 三角波產(chǎn)生 DDS 芯片

振蕩器通常由放大電路、選頻電路和正反饋電路組成,它們相互協(xié)作以產(chǎn)生重復(fù)的電子信號,這些信號通常是正弦波或方波。

關(guān)鍵字: 正弦波 方波 電子信號

晶振(XO)輸出波形(Output Type)是與封裝尺寸一樣重要的一個技術(shù)指標(biāo),這些輸出波形可簡單歸為兩種:正弦波、方波。

關(guān)鍵字: 正弦波 方波 晶振

使用5V低功耗運(yùn)算放大器不會產(chǎn)生失真為–100dBc的正弦波。盡管如此,采用 LTC6258 的帶通濾波器可與一個易于使用的低功率振蕩器結(jié)合使用,以低成本、低電壓和極低耗散產(chǎn)生正弦波。

關(guān)鍵字: 低功耗 運(yùn)算放大器 正弦波

調(diào)制在生物化學(xué)與分子生物學(xué)中有以下幾個意義:(1)細(xì)胞分化和功能狀態(tài)的可逆改變。(2)生物活性物質(zhì)對細(xì)胞的調(diào)節(jié)作用。(3)細(xì)胞(主要是免疫活性細(xì)胞)受生物活性物質(zhì)(如細(xì)胞因子)作用而發(fā)生的功能性變化。(4)特異基因的轉(zhuǎn)錄...

關(guān)鍵字: 調(diào)制 脈沖調(diào)制 正弦波
關(guān)閉