ARM接口编程—PWM(exynos 4412平台)

news2024/11/23 4:13:44

PWM简介

PWM(Pulse Width Modulation)即脉冲宽度调制,通过对脉冲的宽度进行调制,来获得所需要波形

在这里插入图片描述

PWM参数

  • 周期

一次高低电平所占用的时间

  • 占空比

一个周期中高电平时间与整个周期的比例称为占空比

PWM工作原理

在这里插入图片描述

pwm原理图

由电路原理图可知道蜂鸣器接在GPD0_0引脚上

在这里插入图片描述

GPIO配置

配置GPD0_0引脚为PWM模式,即TOUT_0

在这里插入图片描述

PWM控制器

这个寄存器用于配置一级分频值

在这里插入图片描述
这个寄存器用于配置二级分频

在这里插入图片描述

pwm控制寄存器

用于控制PWM的开始/停止
在这里插入图片描述
代码实现:

#include "exynos_4412.h"

void Delay(unsigned int Time)
{
	while(Time --);
}

int main()
{
	/*1.将GPD0_0引脚设置成PWM0的输出引脚*/
	GPD0.CON = GPD0.CON & (~(0xF)) | (0x2);
	/*2.设置PWM0的一级分频	一级分频倍数设置为100倍*/
	PWM.TCFG0 = PWM.TCFG0 & (~(0xFF)) | 99;
	/*2.设置PWM0的二级分频	二级分频倍数设置为1倍  递减计数器递减频率 = PLCK / (99 + 1) / 1 = 1M*/
	PWM.TCFG1 = PWM.TCFG1 & (~(0xF));
	/*4.设置PWM0为自动重装载,使其能够产生连续的脉冲信号*/
	PWM.TCON = PWM.TCON | (1 << 3);
	/*5.设置PWM0的频率为500HZ*/
	PWM.TCNTB0 = 2000;
	/*6.设置PWM0的占空比为50%*/
	PWM.TCMPB0 = 1000;
	/*7.将TCNTB0中的值手动装载到递减计数器*/
	PWM.TCON = PWM.TCON | (1 << 1);
	/*8.关闭手动更新*/
	PWM.TCON = PWM.TCON & (~(1 << 1));
	/*9.使能PWM0,递减计数器开始递减*/
	PWM.TCON = PWM.TCON | 1;

	while(1)
	{
		PWM.TCON = PWM.TCON | 1;
		Delay(1000000);
		PWM.TCON = PWM.TCON & (~(1));
		Delay(1000000);		
	}
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1003789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在Windows系统上用Nginx搭建图片服务器

1、nginx.conf中的配置&#xff1a; server { listen 8088; #server_name localhost; server_name 127.0.0.1 ; #charset koi8-r; #charset utf-8,gbk; charset utf-8; location ~ .*.(gif|jpg|jpeg|png)$ { e…

恒运资本:减肥药概念涨疯了!特斯拉一夜暴涨5800亿市值,汽车股狂飙

今天早盘&#xff0c;A股微幅震荡&#xff0c;主要股指涨跌互现&#xff0c;两市成交呈萎缩趋势。 盘面上&#xff0c;减肥药、轿车、工业大麻、鸡肉等板块涨幅居前&#xff0c;光刻机、稳妥、互联网、知识产权等板块跌幅居前。北上资金净流出1.99亿元。 减肥药概念飙涨 续昨…

动态规划总结(持续更新中……)

注意&#xff1a;我这里定义的所有dp的索引相对于实际问题都是从1开始的&#xff0c;也就是空间长度会比实际大1&#xff0c;这样的好处是在部分题目场景下不需要条件判断也不会越界。 字符串/数组类 区间 1.最长回文子串 dp定义 dp[i][j]表示第i个字符到第j个字符组成的子…

一文了解VR全景,VR全景有哪些优势?

引言&#xff1a; VR全景技术近年来崭露头角&#xff0c;已经成为宣传领域的一大亮点。不仅在娱乐&#xff0c;旅游行业广泛应用&#xff0c;还在商业和教育等领域崭露头角。 一&#xff0e;什么是VR全景&#xff1f; VR全景&#xff0c;全名Virtual Reality Panorama&#x…

Python代码扫描:新一代 Python Linter工具Ruff -极力推荐-快的原因是Rust写的?

目录 RUFF概述 特点 安装和使用 应用场景 配置 编辑器集成 PyCharm(外部工具) Ruff的规则 Ruff速度快的几个原因 最后 注意&#xff1a;后续技术分享&#xff0c;第一时间更新&#xff0c;以及更多更及时的技术资讯和学习技术资料&#xff0c;将在公众号CTO Plus发布…

多线程和并发编程(2)—CAS和Atomic实现的非阻塞同步

在并发编程中实现原子操作可以使用锁&#xff0c;锁机制满足基本的需求是没有问题的了&#xff0c;但是有的时候我们的需求并非这么简单&#xff0c;我们需要更有效&#xff0c;更加灵活的机制&#xff0c;synchronized关键字是基于阻塞的锁机制&#xff0c;也就是说当一个线程…

零代码编程:用ChatGPT来批量删除特定文件

一个文件夹中有很多个文件重复了&#xff0c;重复的文件中都含有“&#xff08;1&#xff09;”这样的字符&#xff0c;需要把所有这些文件批量删除掉。 在ChatGPT中输入如下提示词&#xff1a; 你是一个Python编程专家&#xff0c;写一段代码完成批量删除文件的任务&#xff…

【java】【SSM框架系列】【四】SpringBoot

目录 一、SpringBoot简介 1.1 入门案例 1.1.1 案例 1.1.2 Spring程序与SpringBoot区别 1.1.3 SpringBoot项目快速启动 1.2 SpringBoot概述 二、基础配置 2.1 配置文件格式 2.1.1 配置文件格式&#xff08;3种&#xff09; 2.1.2 配置文件间的加载优先级&#xff08;了解…

电视机顶盒哪个牌子好?拆机达人盘点网络电视机顶盒排名

电视机顶盒哪个牌子好&#xff1f;在挑选电视机顶盒的时候&#xff0c;我们要注意的是盒子的芯片、内存以及系统和操作等等方面全都要衡量&#xff0c;根据我多年拆机经验来说&#xff0c;有些产品存在虚标配置、偷工减料等情况&#xff0c;在选购时不懂行可以参考以下网络电视…

【mysql】—— 函数的基本介绍

前言&#xff1a; MySQL是一种常用的关系型数据库管理系统&#xff0c;它提供了许多内置的函数来进行数据操作和处理。本期&#xff0c;我将给大家介绍的就是关于 “函数” 的相关知识&#xff01;&#xff01;&#xff01; 目录 &#xff08;一&#xff09;日期函数 &#…

调整Pycharm中代码的字体的大小

注意&#xff1a;是代码的字体大小&#xff0c;不是Pycharm标题栏、状态栏啥的字体的大小。 1、第一步 2、第二步&#xff0c;勾选“用ctrl滚轮”调整字体大小 3、在代码框中&#xff0c;ctrl鼠标滚轮就能调节代码字体大小了。

《程序员职场工具库》认识 OGSM 模型

最近简单学习了一下 OGSM 模型&#xff0c;把一些学习感想给大家分享一下。可能我们用不到这个模型&#xff0c;但是也算是一个小知识点&#xff0c;留个印象也不错。 OGSM 模型是企业战略管理的理论工具。它主要是以下 4 个部分&#xff1a; O&#xff08;Objective&#xf…

ChromeDriver最新版(116.x及最新)下载途径分享

首先查看version&#xff1a;在地址栏输入chrome://version/ 最新版 官方地址&#xff1a;https://googlechromelabs.github.io/chrome-for-testing/ 选择合适的下载即可 Old 官网&#xff1a;https://chromedriver.chromium.org/downloads 国内镜像 ps:国内镜像没有…

基于C#的图书管理系统数据库设计报告

第一章 问题描述 1.1 图书管理系统简介 本系统利用.NET处理数据库的功能&#xff0c;实现对图书馆信息的管理。主要功能为管理有关读者、出版社、书籍、借阅和管理者的信息等。 本系统的结构分为读者信息管理模块、出版社信息管理模块、书籍信息管理模块、借阅信息管理模块、…

腾讯云轻量应用服务器详细介绍_轻量值得买吗?

腾讯云轻量应用服务器开箱即用、运维简单的轻量级云服务器&#xff0c;CPU内存带宽配置高并且价格特别优惠&#xff0c;轻量2核2G3M带宽95元一年、2核2G4M优惠价112元一年&#xff0c;396元三年、2核4G5M带宽168元一年&#xff0c;628元3年、4核8G12M带宽446元一年&#xff0c;…

面经pc端项目

创建项目 安装脚手架-----创建项目------选择自定义 sass基础语法 https://www.sass.hk/ sass语法有两个:sass(旧) scss(新) 1.scss语法 和less语法类似,支持嵌套,支持变量… scss: $变量名 less: @变量名 $color:orange; .box{width: 400px;height: 400px;borde…

Linux 修改SSH的显示样式,修改终端shell显示的样式,美观更改

要修改SSH的显示样式&#xff0c;您可以使用自定义的PS1&#xff08;提示字符串1&#xff09;变量来更改命令行提示符的外观。在您的情况下&#xff0c;您想要的格式似乎包括日期和时间&#xff0c;以及当前目录。以下是一个示例PS1设置&#xff0c;可以实现您所描述的样式&…

LVS -DR

一、DR模式数据包流向分析 1.Client 客户端发送请求到 Director Server&#xff08;负载均衡器&#xff09;&#xff0c;请求的数据报文&#xff08;源IP是 CIP&#xff0c;目的IP 是VIP&#xff09;到达内核空间。 2.Director Server&#xff08;负载均衡器&#xff09;和 R…

【猿灰灰赠书活动 - 06期】- 【计算机考研书单——408专属】

&#x1f468;‍&#x1f4bb;本文专栏&#xff1a;赠书活动专栏&#xff08;为大家争取的福利&#xff0c;免费送书&#xff09; &#x1f468;‍&#x1f4bb;本文简述&#xff1a;博文为大家争取福利&#xff0c;与机械工业出版社合作进行送书活动 &#x1f468;‍&#x1f…

【软件测试】设计优秀的测试用例

前言 我从来没有好好的写过一个测试用例&#xff0c;之前做开发虽然写单元测试和流程测试&#xff0c;基本上都是基于自己的代码&#xff0c;而且单元测试和流程测试的框和规范已经非常完善&#xff0c;你只需要填空就行&#xff0c;后来转做自动化测试&#xff0c;但我的做事…