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

wordpress 导航站主题平台投放广告怎么收费

wordpress 导航站主题,平台投放广告怎么收费,如何从零开始学做电商?,肇庆微网站一、前提分析 举例:一首歌所包含的音阶有高有低,而按照某种编曲的顺序排列也就对应了不同的频率(五线谱:1234567 对应的音阶各不相同)所以频率可以理解为它的源头。频率的来源又可由PWM来控制故而一首歌所包含的频率序…

一、前提分析

        举例:一首歌所包含的音阶有高有低,而按照某种编曲的顺序排列也就对应了不同的频率(五线谱:1234567 对应的音阶各不相同)所以频率可以理解为它的源头。频率的来源又可由PWM来控制故而一首歌所包含的频率序列很长,若每次都交给cpu来做不能做到节省资源,故引出如下技术方案。

二、 DMA和PWM之间如何相关联

        控制PWM输出一般采用TIM的OC(定时器的输出比较),初始化完成后一般通过改变TIMx->CCRx寄存器的值来改变占空比,而DMA搬运方向中有存储器到外设这种,因此外设的地址可设为TIMx->CCRx的地址,存储器的地址根据 一、前提分析 中的思想初始化一个含有频率序列的数组,存储器的基地址即为此数组。

U32 SRC_Buffer [256];
//这个频率序列的初始化就需要根据相应场景来进行,这里重在编程思想的记录
void DMA_Configuration( void )
{DMA_InitTypeDef DMA_InitStructure;RCC_AHBPeriphClockCmd( RCC_AHBPeriph_DMA1, ENABLE );  // dma1时钟使能DMA_DeInit( DMA1_Channel5 );   // DMA复位DMA_StructInit( &DMA_InitStructure );   // DMA缺省的参数DMA_InitStructure.DMA_PeripheralBaseAddr = (uint32_t) &TIM1->CCR3; //TIM1的通道3DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t) SRC_Buffer;  //内存地址DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralDST; //dma传输方向,单向DMA_InitStructure.DMA_BufferSize = sizeof( SRC_Buffer )/4; //此处根据实际情况调整DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable; //设置DMA的外设递增模式,一个外设DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;  //设置DMA的内存递增模式,DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; //外设数据字长DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;   //内存数据字长//循环模式开启,Buffer写满后,自动回到初始地址开始传输DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;  //设置DMA的传输模式DMA_InitStructure.DMA_Priority = DMA_Priority_High; //设置DMA的优先级别DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;  //设置DMA的2个memory中的变量互相访问DMA_Init( DMA1_Channel5, &DMA_InitStructure );DMA_ClearFlag( DMA1_IT_TC5 );DMA_ITConfig( DMA1_Channel5, DMA_IT_TC, ENABLE );DMA_Cmd( DMA1_Channel5, ENABLE );
}

 三、如何控制每次DMA传输之间的间隔以拟合音轨或正弦波

这里可以将DMA与定时器绑定从而控制PWM流,触发条件为定时器计数溢出,由于定时器计数溢出事件与DMA功能绑定,故间隔取决于定时器的频率和预装载值。

void Tim1_Configuration( void )
{INT16U TIM_Prescaler, TIM_Period;INT32U utemp;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_OCInitTypeDef TIM_OCInitStructure;RCC_APB2PeriphClockCmd( RCC_APB2Periph_TIM1, ENABLE );TIM_DeInit( TIM1 );TIM_Prescaler = xxx;//不同芯片及不同场景此处取值不同,故此处由测试得出TIM_Period = xxx;               // 不同芯片及不同场景此处取值不同,故此处由测试得出TIM_TimeBaseStructure.TIM_Period = TIM_Period - 1;TIM_TimeBaseStructure.TIM_Prescaler = TIM_Prescaler - 1;TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;               TIM_TimeBaseInit( TIM1, &TIM_TimeBaseStructure );TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; // 使能输出比较状态TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Disable; // 失能输出比较N状态TIM_OCInitStructure.TIM_Pulse = 72;TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_Low;          TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Reset;TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;TIM_OC3Init( TIM1, &TIM_OCInitStructure );TIM_OC3PreloadConfig( TIM1, TIM_OCPreload_Enable );   // 使能TIMx在CCR3上的预装载寄存器TIM_DMACmd( TIM1, TIM_DMA_Update, ENABLE );        //这里是最重要的一步TIM_Cmd( TIM1, ENABLE );      // 定时器开始运行// 这条语句必须要有!!!TIM_CtrlPWMOutputs( TIM1, ENABLE ); 
}

 最后说明,上述代码中虽开启了很多中断,但实际未参与功能的实现,留作预留接口便于更深层次的逻辑扩展。

http://www.yayakq.cn/news/602554/

相关文章:

  • 石家庄企业网站制作哪家好怎么做电影网站页面的
  • 深圳做网站设计公司织梦禁止网站右击
  • 网站建好了 怎么建后台建设一个网站要多少费用吗
  • 甘肃网站建设哪家便宜网站开发技术考题
  • 绍兴兴住房和城乡建设局网站建设网站公司不给源代码
  • 网站 制作登录如何免费网络营销推广
  • 长沙网上购物超市网站建设优化的作用
  • 捷信做单网站wordpress全文搜索
  • 网站建设与维护期末考试题如何做网站教学
  • 网站下载软件怎么安装重庆技术网站建设
  • 外贸多语言网站免费源码wordpress系统的特点
  • 做亚马逊有哪些网站可以清货网站评论管理怎么做
  • 亳州网站建设手机百度推广怎么打广告
  • 宿迁网站建设哪家专业网课平台
  • 广州设计网站建设浙江移动网站建设制作
  • 建设网站企业邮箱网站建设服务关于门户网站建设经费的报告
  • 网站条形码如何做广东企业网站建设
  • 汇鑫网站建设方便众搜科技做百度网站
  • 怎样修改公司网站内容响应式网站模板html5
  • 视频类网站开发经验湖州网站seo
  • 做胃镜多少钱天津津门网站I楚雄 网站建设
  • 新乡+网站建设网站一年得多少钱
  • 网站设计就业岗位分析南昌地宝网
  • 如何免费建网站网页设计与网站建设过程
  • 阆中市网站建设服务学生制作个人网站
  • 河源盛世网站建设深圳沙井做网站
  • 使用网站效果图wordpress表格折叠插件
  • 手机网站适配加查网站建设
  • 网站后台数据库丢失网站建设如何切图
  • 视频教程保定seo公司