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

学校网站建设软件推荐电子商务网站建设过程范文

学校网站建设软件推荐,电子商务网站建设过程范文,一站式服务广告语,网站升级及政务新媒体建设方案通过DMA方式输出PWM模拟LED数据信号 优点:不消耗CPU资源 缺点:占用内存较大 STM32CUBEMX配置 定时器配置 定时器通道:TIM3 CH2 分频:0 重装值:79,芯片主频64Mhz,因此PWM输出频率&#xff1a…

通过DMA方式输出PWM模拟LED数据信号

优点:不消耗CPU资源
缺点:占用内存较大

STM32CUBEMX配置

定时器配置

定时器通道:TIM3 CH2
分频:0
重装值:79,芯片主频64Mhz,因此PWM输出频率:64Mhz/79 ≈ 800Khz,满足芯片要求。
auto-reload preload 要关闭
output compare preload 要打开
在这里插入图片描述

DMA配置

外设一定要选择TIM3_UP,不要选TIM_CHx
方向是内存到外设,和ADC是反的
模式选择Circular,也可以选择Normal,每次要写的时候才发送,这里为了方便选Circular。
重要:数据宽度,外设选择half word,内存选择byte,可以省空间
在这里插入图片描述

添加初始化代码

void Activate_TIM3_DMA(void)
{/* Set DMA transfer addresses of source and destination */LL_DMA_ConfigAddresses(DMA1,LL_DMA_CHANNEL_1,			//DMA通道,需与cubeMX设置的一致(uint32_t)&LED_LEVEL_buff,  //DMA要传输的数组(uint32_t)&TIM3->CCR2,		//DMA传输的寄存器地址,TIM3_CH2LL_DMA_DIRECTION_MEMORY_TO_PERIPH);		//传输方向/* Set DMA transfer size */LL_DMA_SetDataLength(DMA1,LL_DMA_CHANNEL_1,384);	//DMA传输长度,根据灯的数量定,384=16*24/* 开启定时器和DMA */LL_DMA_EnableChannel(DMA1,LL_DMA_CHANNEL_1);LL_TIM_CC_EnableChannel(TIM3, LL_TIM_CHANNEL_CH2);LL_TIM_EnableAllOutputs(TIM3);LL_TIM_EnableCounter(TIM3);LL_TIM_EnableDMAReq_UPDATE(TIM3);
}

添加LED电平代码

#define TL    20 		//写0电平占空比= 20/(79+1) 79为定时器重装值
#define TH    55 		//写1电平时间/*LED数据传输电平数组*/ /*多余的4个数组是RESET信号,需大于80us*/
vu8 LED_LEVEL_buff[16][24] = {
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led0*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led1*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led2*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led3*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led4*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led5*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led6*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led7*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led8*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led9*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led10*/
TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,   TL, TL, TL, TL, TL, TL, TL, TL,/*led11*/
0};

这里一共12个灯,每个灯需24bit,定义16组数据是因为WS2812发送完所有数据后需要80us的低电平信号,剩下4组数据为80us的低电平信号。
已知每个信号宽度为1.25us,算下来为800Khz,这个非常重要,因此TIM重装值必须为79。
计算0码的长度,也就是占空比,占空比= 20/(79+1),时间大概为0.31us,满足需求
计算1码的长度,也就是占空比,占空比= 55/(79+1),时间大概为0.86us,满足需求
在这里插入图片描述
在这里插入图片描述
当要更改灯光颜色的时候,修改LED_LEVEL_buff就行了,效率很高,缺点是需要占用较大的内存空间,由于CPU主频很低,重装值不会超过79,因此数组用8位就够了,32位纯属浪费空间,所以DMA内存长度一定要和数组匹配,否则会出现波形混乱。

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

相关文章:

  • 免费的海报设计网站多用户智能网站建设源码
  • c语言软件开和网站开发区别六安做网站公司
  • 什么物流公司网站建设网站名称是什么
  • 网站开发软件搭配湖州童装网站
  • 网站没备案怎么做广告联盟菜鸟教程网站是怎么做的
  • WordPress完美建站专业的移动客户端网站建设
  • dede 网站源码江西赣州市
  • 成都网站建设qghl与狗狗做网站
  • 怎么利用wordpress做网站网站系统开发方式
  • 徐州网站建设 网站推广网页设计与网站开发pdf
  • 成都网站建设上云目前h5页面的制作工具有哪些
  • 前端网站论文wordpress禁止转载插件
  • 宜昌建设网站wordpress更改主题
  • 成都航空公司官方网站主要的网站开发技术路线
  • 做网站的市场风险分析及对策天猫网上购物商城
  • 广西网站设计运营公司仿win8网站模板
  • 无锡市建设银行总行网站php 网站开发平台
  • 公司建网站的详细步骤wordpress 注册页
  • 做网站各个流程网站建设一般都需要什么资质
  • 做网站被网监叫去很多次学动漫设计需要什么条件
  • 常州制作网站价格建网站都要什么费用
  • 无极app下载最新版seo网络推广是什么意思
  • 武功做网站海口网站建设方案优化
  • 昆明seo优化无锡网站优化公司
  • 网站做一个多少钱临沂做网站的在哪里
  • 国外网站做调查软件商城app下载
  • 网站开发常用问题阿里云免费网站备案
  • 怎样建设微网站做个网站上百度怎么做
  • 江门住房和城乡建设部网站建设工程司法解释
  • 建设厅网站174号文网站建设宣传