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

企业网站建设服务电话中国职业技能培训中心官网

企业网站建设服务电话,中国职业技能培训中心官网,汕头建总,wordpress图片自动分页插件文章目录 前言一、板载资源资源说明二、具体步骤1.新建rt_thread项目2. 打开PWM设备驱动3. 在Stm32CubeMX配置定时器3.1打开Stm32CubeMX3.2 使用外部高速时钟,并修改时钟树3.3打开定时器1,并配置通道一为PWM输出模式(定时器根据自己需求调整)3.4 打开串口…

文章目录

  • 前言
  • 一、板载资源资源说明
  • 二、具体步骤
    • 1.新建rt_thread项目
    • 2. 打开PWM设备驱动
    • 3. 在Stm32CubeMX配置定时器
      • 3.1打开Stm32CubeMX
      • 3.2 使用外部高速时钟,并修改时钟树
      • 3.3打开定时器1,并配置通道一为PWM输出模式(定时器根据自己需求调整)
      • 3.4 打开串口
      • 3.5 生成工程
    • 4. 修改时钟源
      • 4.1 进入CubeMX生成的main.c,复制SystemClock_Config函数的函数体,粘贴到drivers文件下drv_clk.c的system_clock_config函数中,覆盖原内容
      • 4.2 修改外部时钟
    • 5. 配置PWM
      • 5.1声明PWM及其通道
      • 5.2 剪切CubeMX生成的stm32l4xx_hal_msp.c中的两个函数,粘贴到driver文件下的board.c中,并修改名称
    • 6. 完成上述步骤后,编译下载


前言

本文采用开发板为STM32L475VET6(潘多拉开发板),使用RT_Thread Studio基于芯片开发模式,完成PWM实验,实现板载呼吸灯效果

在这里插入图片描述


一、板载资源资源说明

PE9,对应开发板的板载RGB蓝灯,同时对应定时器1的通道1

二、具体步骤

1.新建rt_thread项目

在这里插入图片描述

2. 打开PWM设备驱动

在RT-Thread Setting的组件栏中
在这里插入图片描述

3. 在Stm32CubeMX配置定时器

3.1打开Stm32CubeMX

在这里插入图片描述

3.2 使用外部高速时钟,并修改时钟树

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

3.3打开定时器1,并配置通道一为PWM输出模式(定时器根据自己需求调整)

打开即可,参数可不设置
在这里插入图片描述

3.4 打开串口

在这里插入图片描述

3.5 生成工程

在这里插入图片描述

4. 修改时钟源

项目默认使用内部时钟源,这里改成外部时钟源,本步可选可不选

4.1 进入CubeMX生成的main.c,复制SystemClock_Config函数的函数体,粘贴到drivers文件下drv_clk.c的system_clock_config函数中,覆盖原内容

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

4.2 修改外部时钟

在这里插入图片描述

5. 配置PWM

官方给出配置步骤,第一步已在RT-Thread Setting中打开
在这里插入图片描述

5.1声明PWM及其通道

在这里插入图片描述

5.2 剪切CubeMX生成的stm32l4xx_hal_msp.c中的两个函数,粘贴到driver文件下的board.c中,并修改名称

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

6. 完成上述步骤后,编译下载

测试代码

/** 程序清单:这是一个 PWM 设备使用例程* 例程导出了 pwm_led_sample 命令到控制终端* 命令调用格式:pwm_led_sample* 程序功能:通过 PWM 设备控制 LED 灯的亮度,可以看到LED不停的由暗变到亮,然后又从亮变到暗。
*/#include <rtthread.h>
#include <rtdevice.h>#define PWM_DEV_NAME        "pwm1"  /* PWM设备名称 */
#define PWM_DEV_CHANNEL     1       /* PWM通道 */struct rt_device_pwm *pwm_dev;      /* PWM设备句柄 */int main(void)
{rt_uint32_t period, pulse, dir;period = 500000;    /* 周期为0.5ms,单位为纳秒ns */dir = 1;            /* PWM脉冲宽度值的增减方向 */pulse = 0;          /* PWM脉冲宽度值,单位为纳秒ns *//* 查找设备 */pwm_dev = (struct rt_device_pwm *)rt_device_find(PWM_DEV_NAME);if (pwm_dev == RT_NULL){rt_kprintf("pwm sample run failed! can't find %s device!\n", PWM_DEV_NAME);return RT_ERROR;}/* 设置PWM周期和脉冲宽度默认值 */rt_pwm_set(pwm_dev, PWM_DEV_CHANNEL, period, pulse);/* 使能设备 */rt_pwm_enable(pwm_dev, PWM_DEV_CHANNEL);while (1){rt_thread_mdelay(50);if (dir){pulse += 5000;      /* 从0值开始每次增加5000ns */}else{pulse -= 5000;      /* 从最大值开始每次减少5000ns */}if (pulse >= period){dir = 0;}if (0 == pulse){dir = 1;}/* 设置PWM周期和脉冲宽度 */rt_pwm_set(pwm_dev, PWM_DEV_CHANNEL, period, pulse);}return 0;
}

下载后,打开终端,如果出现反复按重启键,程序无响应,则需要打开libc
在这里插入图片描述
在这里插入图片描述
至此,实验完成

实验结果

http://www.dtcms.com/wzjs/606154.html

相关文章:

  • 厦门网站建设工作微信小程序卖货怎么注册
  • 网站推广只能使用在线手段进行。提升了自己的网站
  • 饮料公司网站模板网站设计与制作包括
  • 什么网站做外贸好旅游网站怎么做才能被关注
  • 甘孜州建设局门户网站新人做外贸流程
  • 铜陵电子商务网站建设郑州企业做网站h汉狮
  • 校园网站设计开题报告远程wordpress数据库
  • 自己来建网站网站运营推广
  • 专门做高端网站设计的云华设计付费推广有几种方式
  • 宜昌做网站的点击下载app安装
  • 教育类手机网站模板网站seo是什么意思
  • 珠海网站优化培训推广方式有哪些?
  • H5响应式网站数据网站开发年终总结
  • 大中型网站开发价格wordpress one touch 下载
  • 凌源网站优化阿里云iot网站开发
  • 青海高端网站建设公司电商网站设计公司
  • 房地产公司的网站建设方案网站建设 jz.woonl
  • 推广系统建站wordpress mysql 密码重置
  • 河北省建设项目环保备案网站山东大良网站建设
  • 手机网站模版下载安徽省住房建设厅网站
  • 手机网站建设进度成都网站网络建设
  • 网站建设捌金手指下拉二八网站如何更新内容
  • 手机能看禁止网站的浏览器营销型网站有什么特点
  • 使用vue路由做网站是什么网站建设
  • 怎样做电商网站好视频教学异度空间主题 wordpress
  • 零用贷网站如何做seo关键词优化培训
  • 做自适应网站对设计稿的要求软文平台有哪些
  • 中山市两学一做网站凡客旗下商城
  • 网站快照诊断网络营销与策划实务
  • 晋江哪里可以学建设网站企业管理生产管理系统