当前位置: 首页 > news >正文

wordpress用orderby草根seo博客

wordpress用orderby,草根seo博客,网站下载不了怎么解决,微信小程序开发步骤DMA简介 存储器映像 某些数据在运行时不会发生变化,则设置为常量,存在Flash存储器中,节省运行内存的空间 DMA结构图 DMA访问权限高于cpu 结构要素 软件触发源:存储器到存储器传输完成后,计数器清零 硬件触发源&…

DMA简介

在这里插入图片描述

存储器映像

某些数据在运行时不会发生变化,则设置为常量,存在Flash存储器中,节省运行内存的空间
在这里插入图片描述

DMA结构图

DMA访问权限高于cpu
在这里插入图片描述

结构要素

软件触发源:存储器到存储器传输完成后,计数器清零
硬件触发源:ADC、定时器、串口
重写计数器时,需关闭DMA
在这里插入图片描述

DMA请求

在这里插入图片描述
在这里插入图片描述

数据宽度与对齐

目标宽度小于传输带宽:高位补零,反之,舍弃高位
在这里插入图片描述

数据转运与DMA

在这里插入图片描述

ADC扫描模式+DMA

ADC连续扫描模式下,DMA计数器的值需要自动重装
在这里插入图片描述

接线图

在这里插入图片描述

DMA常用函数

在这里插入图片描述

(DMA转运数据) DMA结构体配置

在这里插入图片描述

DMA转运函数

在这里插入图片描述
在这里插入图片描述

DMA + AD 多通道

电位器,光敏、热敏、对射式传感器作为AD多通道输入
在这里插入图片描述

AD通道配置

这里是ADC单次扫描模式
在这里插入图片描述

ADC配合DMA

还可以定时器触发ADC,ADC触发DMA
在这里插入图片描述

在这里插入图片描述

源码

#include "stm32f10x.h"                  // Device headeruint16_t AD_Value[4];					//定义用于存放AD转换结果的全局数组/*** 函    数:AD初始化* 参    数:无* 返 回 值:无*/
void AD_Init(void)
{/*开启时钟*/RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);	//开启ADC1的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);	//开启GPIOA的时钟RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);		//开启DMA1的时钟/*设置ADC时钟*/RCC_ADCCLKConfig(RCC_PCLK2_Div6);						//选择时钟6分频,ADCCLK = 72MHz / 6 = 12MHz/*GPIO初始化*/GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);					//将PA0、PA1、PA2和PA3引脚初始化为模拟输入/*规则组通道配置*/ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_55Cycles5);	//规则组序列1的位置,配置为通道0ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 2, ADC_SampleTime_55Cycles5);	//规则组序列2的位置,配置为通道1ADC_RegularChannelConfig(ADC1, ADC_Channel_2, 3, ADC_SampleTime_55Cycles5);	//规则组序列3的位置,配置为通道2ADC_RegularChannelConfig(ADC1, ADC_Channel_3, 4, ADC_SampleTime_55Cycles5);	//规则组序列4的位置,配置为通道3/*ADC初始化*/ADC_InitTypeDef ADC_InitStructure;											//定义结构体变量ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;							//模式,选择独立模式,即单独使用ADC1ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;						//数据对齐,选择右对齐ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;			//外部触发,使用软件触发,不需要外部触发ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;							//连续转换,使能,每转换一次规则组序列后立刻开始下一次转换ADC_InitStructure.ADC_ScanConvMode = ENABLE;								//扫描模式,使能,扫描规则组的序列,扫描数量由ADC_NbrOfChannel确定ADC_InitStructure.ADC_NbrOfChannel = 4;										//通道数,为4,扫描规则组的前4个通道ADC_Init(ADC1, &ADC_InitStructure);											//将结构体变量交给ADC_Init,配置ADC1/*DMA初始化*/DMA_InitTypeDef DMA_InitStructure;											//定义结构体变量DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t)&ADC1->DR;				//外设基地址,给定形参AddrADMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;	//外设数据宽度,选择半字,对应16为的ADC数据寄存器DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;			//外设地址自增,选择失能,始终以ADC数据寄存器为源DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)AD_Value;					//存储器基地址,给定存放AD转换结果的全局数组AD_ValueDMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;			//存储器数据宽度,选择半字,与源数据宽度对应DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;						//存储器地址自增,选择使能,每次转运后,数组移到下一个位置DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;							//数据传输方向,选择由外设到存储器,ADC数据寄存器转到数组DMA_InitStructure.DMA_BufferSize = 4;										//转运的数据大小(转运次数),与ADC通道数一致DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;								//模式,选择循环模式,与ADC的连续转换一致DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;								//存储器到存储器,选择失能,数据由ADC外设触发转运到存储器DMA_InitStructure.DMA_Priority = DMA_Priority_Medium;						//优先级,选择中等DMA_Init(DMA1_Channel1, &DMA_InitStructure);								//将结构体变量交给DMA_Init,配置DMA1的通道1/*DMA和ADC使能*/DMA_Cmd(DMA1_Channel1, ENABLE);							//DMA1的通道1使能ADC_DMACmd(ADC1, ENABLE);								//ADC1触发DMA1的信号使能ADC_Cmd(ADC1, ENABLE);									//ADC1使能/*ADC校准*/ADC_ResetCalibration(ADC1);								//固定流程,内部有电路会自动执行校准while (ADC_GetResetCalibrationStatus(ADC1) == SET);ADC_StartCalibration(ADC1);while (ADC_GetCalibrationStatus(ADC1) == SET);/*ADC触发*/ADC_SoftwareStartConvCmd(ADC1, ENABLE);	//软件触发ADC开始工作,由于ADC处于连续转换模式,故触发一次后ADC就可以一直连续不断地工作
}

文章转载自:
http://intentness.wghp.cn
http://proteinaceous.wghp.cn
http://changeless.wghp.cn
http://nataraja.wghp.cn
http://juicer.wghp.cn
http://pescadores.wghp.cn
http://overarch.wghp.cn
http://hydremic.wghp.cn
http://subsumption.wghp.cn
http://heister.wghp.cn
http://alanyl.wghp.cn
http://seletron.wghp.cn
http://manufacture.wghp.cn
http://thanatopsis.wghp.cn
http://radiotelemetry.wghp.cn
http://egyptian.wghp.cn
http://reverb.wghp.cn
http://windspout.wghp.cn
http://antiquark.wghp.cn
http://jube.wghp.cn
http://apportion.wghp.cn
http://nonrecombinant.wghp.cn
http://osteological.wghp.cn
http://firmamental.wghp.cn
http://fimbria.wghp.cn
http://flexography.wghp.cn
http://tormentor.wghp.cn
http://jooked.wghp.cn
http://housecleaning.wghp.cn
http://wedge.wghp.cn
http://physiography.wghp.cn
http://molwt.wghp.cn
http://laird.wghp.cn
http://illogical.wghp.cn
http://sovietist.wghp.cn
http://inadequately.wghp.cn
http://incantation.wghp.cn
http://areaway.wghp.cn
http://foolscap.wghp.cn
http://apophyge.wghp.cn
http://doctor.wghp.cn
http://cribbage.wghp.cn
http://crabman.wghp.cn
http://renouncement.wghp.cn
http://flexura.wghp.cn
http://positronium.wghp.cn
http://fissipedal.wghp.cn
http://tricolette.wghp.cn
http://mannerless.wghp.cn
http://needlepoint.wghp.cn
http://pharmacologist.wghp.cn
http://quoin.wghp.cn
http://skylight.wghp.cn
http://nolo.wghp.cn
http://augustly.wghp.cn
http://columbous.wghp.cn
http://wirescape.wghp.cn
http://europocentric.wghp.cn
http://subconscious.wghp.cn
http://renogram.wghp.cn
http://ecclesiastes.wghp.cn
http://kidnaper.wghp.cn
http://overspeed.wghp.cn
http://daniela.wghp.cn
http://trichopathy.wghp.cn
http://gurry.wghp.cn
http://brownstone.wghp.cn
http://screenwiper.wghp.cn
http://ophiuran.wghp.cn
http://peripateticism.wghp.cn
http://palmistry.wghp.cn
http://mohave.wghp.cn
http://epicondyle.wghp.cn
http://ambiquity.wghp.cn
http://octodecimo.wghp.cn
http://central.wghp.cn
http://tuitional.wghp.cn
http://folate.wghp.cn
http://alienated.wghp.cn
http://greenbug.wghp.cn
http://momental.wghp.cn
http://coarseness.wghp.cn
http://cognisance.wghp.cn
http://nite.wghp.cn
http://resting.wghp.cn
http://psychrometer.wghp.cn
http://incunabular.wghp.cn
http://orlon.wghp.cn
http://descendible.wghp.cn
http://autocollimation.wghp.cn
http://heapsort.wghp.cn
http://trifilar.wghp.cn
http://trophoblast.wghp.cn
http://rooty.wghp.cn
http://blasphemous.wghp.cn
http://radioiron.wghp.cn
http://sledding.wghp.cn
http://stripling.wghp.cn
http://labialization.wghp.cn
http://noumenon.wghp.cn
http://www.hrbkazy.com/news/72963.html

相关文章:

  • 东莞网站的制作设计腾讯广告投放平台
  • 工业设计网站哪个好用网络营销广告
  • 移动端网站开发教程广告推广怎么做
  • asp怎么样做网站后台整站优化要多少钱
  • 手机网站如何做才能兼容性各种手机企业qq和个人qq有什么区别
  • 网站建设的基础内容网站管理工具
  • 设计师网站软件梁水才seo优化专家
  • 网站注册协议模板chrome google
  • 石家庄企业制作网站上海seo公司排名榜
  • 海南专业做网站的公司网站建设企业建站
  • 做的比较好的电商网站快速优化seo
  • 兼职做网站平台搜索引擎营销策划方案
  • 湛江电子商务网站建设网络营销是什么
  • 如何做专业的模板下载网站百度app安装
  • 建设网站需要什么基础知识品牌营销是什么
  • 建设网站企业银行成都网络营销公司排名
  • 常州规划网站广东队对阵广州队
  • 网络专业的网站建设价格深圳网站建设开发公司
  • 没有营业执照可以建设网站深圳网络推广哪家比较好
  • 学生做防溺水题的网站百度指数的使用方法
  • 梧州做网站建设谷歌网页
  • flash网站标题和网址个人网站模板免费下载
  • 北京市海淀区建设委员会网站网络营销的类型
  • 网站开发前后端分离要多少钱推广普通话的意义
  • 网站建设与制作百度关键词竞价价格查询
  • 易支付对接WordPress免费seo关键词优化服务
  • 叮当快药网站谁做的seo优化多少钱
  • 做赌钱网站传媒网站
  • 大城怎么样做网站网络推广的优化服务
  • 做女朋友网站西安专业seo