嵌入式davinci电路元素基础和PWM模块
1,DAC_OUT和DAC_OUTB是AD9912输出的差分信号。
2,电容器储存电荷的能力,常用的单位是F、uF、nF、pFUF大了好还是UF小了好,要根据电路自身需要而设计,
要看电路滤波是在高频上,还是低频上。一般滤高频用小电容(0.1uF、甚至nF、pF级的)反之10uF、100uF
电容一端接地另一端接电路,一般起到滤波(通过交流,隔断直流)作用。
电阻与电容并联的作用,是希望直流信号或者低频信号通过较困难,而交流信号或者高频信号较容易的通过。
3,SOT23_3P: 这个PNP管就是防反接用的,这样接的好处是管压降低,大概0.2-0.3V。
NPN三极管:它最主要的功能是电流 放大和开关作用。可以把微弱的电信号变成一定强度的信号,
当然这种转换仍然遵循能量守恒,它只是把电源的能量转换成信号的能量。
4,R0402贴片电阻,是不用在电路板上打孔,而且更小,可以放更多的元件
,而且两面都可以放。而且电阻表面就是阻值标识,不用再换算。比较适合机器焊接。
5,VCC是电源电压,VDD是电路工作电压
6,BLM18PG221SN1 磁珠,抗干扰元件,滤除高频噪声效果显著。
7,AL+,AL- :一般含一对正负号的,表示该信号为差分对。差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,
两根线都传输信号,这两个信号的振幅相等,相位相反。在这两根线上的传输的信号就是差分信号。信号接收端比较这两个电压的差值来判断发送端发送的是逻辑0还是逻辑1。
8,DI/DO:数字量输入/输出 AI/AO:模拟量输入/输出
9,SOD123(稳压二极管):提供一个比较稳定的基准电压。要求不是太高的时候也用来提供电路的使用电压。
特殊情况下,也可以着为一个额定的降压器使用。不过,不能超过稳压二极管的耗散功率。
10,CVBS: 是AV接口的视频信号(单根黄色线),特指能兼容黑白电视的彩色电视信号。
11,PWM:脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制。这种方式能使电源的输出电压在工作
条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。
可以通过调整PWM的周期、PWM的占空比而达到控制充电电流的目的。 控制方式就是对逆变电路开关器件的通断进行控制,使
输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,
使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,即可改变逆变电路输出电压的大小,也可改变输出频率。
a,设置提供调制方波的片上定时器/计数器的周期 b 在PWM控制寄存器中设置接通时间 c,设置PWM输出的方向,这个输出是一个通用I/O管脚
d,启动定时器 e,使能PWM控制器
12:一般的PWM模块控制流程为(笔者使用过TI的2000系列,AVR的Mega系列,TI的LM系列):
a,使能相关的模块(PWM模块以及对应管脚的GPIO模块)。b,配置PWM模块的功能,具体有:(设置PWM定时器周期,该参数决定PWM波形的频率。
设置PWM定时器比较值,该参数决定PWM波形的占空比。设置死区(deadband),为避免桥臂的直通需要设置死区,一般较高档的单片机都有该功能。
设置故障处理情况,一般为故障是封锁输出,防止过流损坏功率管,故障一般有比较器或ADC或GPIO检测。设定同步功能,该功能在多桥臂,即多PWM模块协调工作时尤为重要。
设置相应的中断,编写ISR,一般用于电压电流采样,计算下一个周期的占空比,更改占空比,这部分也会有PI控制的功能。使能PWM波形发生。)
改变输入PWM的占空比与频率控制开关管的开关状态来改变输出电压,单片机的PWM模块就是产生方波的,一般式通过设置其相关定时器来实现产生不同频率,不同占空比的方波信号;
采用调整脉冲占空比达到调整电压、电流、功率的方法。使用某些元件可达到升降压,方便使用直流,也可通过PWM获得正弦的交流电。
PWM调光分为正调光和负调光,正调光就是当占空比为100%最高,负调光就是0%最亮。
以正调光为例当PWM为高电平时,发光;低电平是,不发光。由于频率比较快,所以我们感觉不到间接性的发光不发光。
若pwm输出电平信号不符合要求你可以用三极管或光藕作为接口,去驱动固态继电器。
13设置PWM高低电平:
可以设置 两路 PWM输出, PWM 输出功能 可以 设置成 始终 低电平 或 高电平 ( 0% 或者 100% )
可以设置 占空比 从 1 ~ 255 个等级 ( 即 0.39% 一个等级 从 0% ~ 100% )
也就是可以设置PWM口刚开始输出时是高低平还是低电平,我需要用STC12C5A60S单片机的两路PWM波产生两路这样的波形!信号要一反一正。
这种信号 用个定时器就可以产生,不同定时时间 产生不同频率,两个 IO 口反相输出就是。
1,PWM外围寄存器:
00h, PID pwm外围识别寄存器
04h, PCR, pwm控制寄存器
08h, CFG , 配置寄存器
0Ch, START, pwm开始寄存器
10h RPT 重复计数寄存器
14h PER 周期寄存器
18h PH1D 第一相位持续 寄存器
2,支持的方面
32bit 周期计数
32bit 首相位 持续寄存器
8bit 重复计数对每次操作,一次操作将产生N+1周期波形
配置成一次或连续的操作模式
缓冲区周期或者首相位持续寄存器
被ISIF VSYNC视频输出一次操作触发,允许任何pwm
实例被做ISIF定时器。允许设备模块支持被ISIF提供的功能(储存和快门信号)
一次操作产生N+周期波形
配置PWM输出引脚不活动状态
终端和EDMA同步事件
3,PWM电平/定时
选择PWM0/1/2/3 输出
4,内存地址
PWM0 0X01C22000(start) 0X01C23FF(end) size
PWM1 0X01C22400 0X01C227FF
PWM2 0X01C22800 0X01C22BFF
PWM3 0X01C22C00 0X01C22FFF
5,时钟控制
pwm外围被PLL辅助时钟驱动,辅助时钟的频率
和PLL控制器的参考输入时钟相等,PWM的定时器数量
也是参照这个时钟。
6,信号描述
每一个pwm外围实例有一个单独的输出信号pwm n,输出信号是基于pwm的状态如下
inactive状态:
当pwm为会话状态,输出引脚被驱动到它的非活动水平。
这个逻辑状态由配置配置寄存器的INACTOUT位
First-phase(首相位)活动状态:
在一个active的pwm周期,输出信号 取决于
cfg寄存器中的P1OUT位,第一相位的持续是由PH1D寄存器控制的
整个周期的持续duration是由per寄存器控制
Second-phase(次相位)活动状态:
在首相位周期完成后,输出信号被第一首位保持的相反状态驱动
如果PH1D值为0,对于整个周期,第一个相位有0时间和被pwm驱动的第一相位输出值
7,函数功能操作
在一次发射模式,pwm生产一系列的周期,但不会连续的运行。一系列中的一定数量的周期
被控制被重复数包含在pwm重复计数寄存器RPT中。为了选择一次发射one shot模式,在cfg中配置mode位
在这两种模式中,周边的pwm的第一相的持续时间寄存器(PH1D)的和周期寄存器(PER)的指定,
分别为第一阶段的持续时间和波形的周期。
P1OUT位的PWM配置寄存器(CFG)和第二相输出或高或低的第一阶段的输出电平可配置自动的极性相反的第一阶段的水平。
处于非活动状态之前和之后的脉宽调制(PWM)操作也可以被配置为一个0或1在INACTOUT的位CFG。
one-shot模式
在one-shot模式运作,PWM产生一系列的priods,但不
包含在PWM重复计数寄存器(RPT)的重复计数控制运行continuously.The的系列中的周期数。
要选择一个拍摄模式,配置模式位PWM配置寄存器(CFG)。
对于one-shot模式,应先进行配置的PWM模式,周期和持续时间第一阶段,随着其他配置选项。
PWM使用最后一个参数编程设置,一旦它开始通过书面方式1 START开始寄存器(START)。
一旦启动,PWM判断/否定拉高输出的配置,驱动在第一阶段和第二阶段的相反的水平在第一阶段的输出电平。
当规定数量的RPT1的脉冲期间达到上限满,外设发送一个中断系统(如果中断被允许在CFG)。PWM然后变为无效,直到START位写1再次。
PWM是停止在one-shot模式操作,通过改变模式位0(禁用)。PWM被禁用时,输出立即驱动配置的无效状态。
继续操作模式
在继续操作模式,PWM产生重复的输出波形没有stopping.For连续模式操作,应先进行配置的PWM模式,
第一阶段持续时间,以及其他配置选项。PWM使用最后编程设置连续one-shot模式不同的是,一旦开始,
通过书面方式1中的START位PWM起始寄存器(START)。参数重复次数不影响连续操作。要选择连拍模式下,
配置MODE位PWM配置寄存器(CFG)小时。
一旦启动后,PWM断言配置的的输出作为,期间驱动到第一-相的输出电平的第一个的的第二个的
phase.Once一个期间之有效期届满的的的相位和的期间用相反电平,的今后一个时期starts.When一个
期间内启动时,请的PWM复制了期间,并的第一-相的持续时间寄存器成一组的内部的的影子registerand
维护的计数“THRE。定时中断允许CPU或EDMA编程今后一个时期的持续时间,而当前的周期运行。
PWM停止连续模式操作过程中禁用它,或者通过重新配置到one-shot模式,使用模式位。
每当PWM被禁用时,输出被立即驱动配置的无效状态。若要允许的PWM至停止优雅地从可连续运转,
后,一个中断,请配置的PWM到的PNE-shot模式操作。PWM然后RPT+1期间,自行停止者。请注意,
不像正常的one-shot模式操作,不需要一次写START位为one-shot模式开始运作。INT连续模式运行时,
最低为PWM周期8个周期
流程 PER -> PH1D -> RPT->CFG模式->CFG中断->PCR ->START
8,对于一次发射操作,pwm应该首先被配置成mode,周期,和首相位持续,和其他配置选项一起。
pwm用最后的程序参数设置 一旦 它被开始被 写1到START寄存器的START位
一旦开始,PWM检查输出被配置,驱动第一相位的输出,在首相位和第二相位期间的相反水平。当
约定数量的过期脉冲的RPT+1周期,外围发送一个中断到系统中,(中断在cfg中配置),pwm变为inactive
直到写1到START寄存器
pwm被停止在一次发射模式操作,改变mode位为0(disable),当pwm为disable,输出由配置inactive直接驱动
9,一次发射oneshot模式中的事件触发
在一次发射模式中,pwm感触到一个在一个事件触发输入信号的上升或者下降沿,
去开始操作,这个事件触发输入被在模块中的PWM时钟同步和被video处理子系统
的输出信号驱动,电源被提供去允许pwm被用作一个ccd定时器。
事件触发可以被检测在video处理子系统上升沿或者下降沿,
在事件触发使能作为配置处理的一部分,写入START寄存器开始感应循环
在pwm中和第一次事件后,pwm开始周期计数
10,循环模式
循环模式中,pwm产生重复输出波形连续不停止,
对于连续操作模式,pwm应该首先被配置模式,
周期,和首相位,以及其他选项,pwm用最后被程序化的一系列参数一旦写1到START寄存器中
的START位,不像oneshot,重复计数寄存器不影响
循环操作,配置cfg的mode bit选择循环模式
一旦开始,pwm检测输出被配置,由第一相位的输出水水平,
驱动第一相位和相反水平的第二相位在第二相位期间,
一旦一个周期到时,下一个周期开始。当一个周期开始,
pwm拷贝周期和第一相位持续duration寄存存器
到一些列的外部隐蔽寄存器和主要的计数。一个中断也被产生在
寄存器被拷贝后,这个缓冲区主题和中断计数
允许cpu处理持续 对于下一周期 当当前周期在运行,
pem被停止在循环模式操作被disable 它 或者重新配置oneshot模式
任何时候pwm被disable禁止,输出被直接驱动由inactive状态,允许pwm去停止grace从循环操作中,
在一个中断中,配置pwm为oneshot模式。pwm 然后运算 RPT+1周期和停止本身。
当操作为循环模式,最小周期为8循环
嵌入式davinci电路元素基础和PWM模块的更多相关文章
- 《嵌入式系统原理与接口技术》——嵌入式系统接口应用基础
本文为我负责编写的电子工业出版社出版的<嵌入式系统原理与接口技术>一书第七章部分,这里整理的仍然是修改稿,供需要的同学参考,本书为普通高等教育"十二五"规划教材,电子信 ...
- 十八. Python基础(18)常用模块
十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...
- Python基础-包与模块
Python基础-包与模块 写在前面 如非特别说明,下文均基于Python3 摘要 为重用以及更好的维护代码,Python使用了模块与包:一个Python文件就是一个模块,包是组织模块的特殊目录(包含 ...
- [译]Vulkan教程(13)图形管道基础之Shader模块
[译]Vulkan教程(13)图形管道基础之Shader模块 Shader modules Unlike earlier APIs, shader code in Vulkan has to be s ...
- python基础-包和模块
Python基础-包与模块 写在前面 如非特别说明,下文均基于Python3 摘要 为重用以及更好的维护代码,Python使用了模块与包:一个Python文件就是一个模块,包是组织模块的特殊目录(包含 ...
- dsPIC33EP 高速PWM模块初始化设置及应用
//文件 p33pwm6.h #ifndef _P33PWM6_H_ #define _P33PWM6_H_ //#include "p33pwm6.h" #define FSYN ...
- python基础,函数,面向对象,模块练习
---恢复内容开始--- python基础,函数,面向对象,模块练习 1,简述python中基本数据类型中表示False的数据有哪些? # [] {} () None 0 2,位和字节的关系? # ...
- python基础31[常用模块介绍]
python基础31[常用模块介绍] python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提供的. 常用的li ...
- python基础知识9——模块2——常见内置模块
内置模块 内置模块是Python自带的功能,在使用内置模块相应的功能时,需要[先导入]再[使用] 1.sys 用于提供对Python解释器相关的操作: sys.argv 命令行参数List,第一个元素 ...
随机推荐
- [置顶] 学习鸟哥的Linux私房菜笔记(6)——过滤器、输入输出及管道
一.过滤器 Linux中的应用工具分为三种: 交互工具 过滤器 编辑器 能够接受数据,过滤再输出的工具,称之为过滤器 对过滤器和进程,存在着输入源与输出对象 二.输入.输出.重定向 输入:过滤器的数据 ...
- Android_CodeWiki_01
记录常用代码片,以备不时之需..wkakak,开始: 1. 精确获取屏幕尺寸(例如:3.5.4.0.5.0寸屏幕) public static double getScreenPhysica ...
- thinkphp批量删除的实现
今天自己在写后台的时候需要把以前上传的测试文章全部删除掉,但是利用 [操作]里面的一个个删除比较慢,因此想出一个批量删除的解决方案. 首先在前端页面里面建立一个表单,这个表单是把你选中的单选按钮提交到 ...
- Android01-概述
1.Android特点 开源和免费 强大的研发力量,完整的生态圈 互联网服务的支持 2.Android系统架构 应用层 应用框架层 系统运行库层 Linux内 ...
- aix6.1 openssh安装
环境: IBM AIX6.1 1.下载(可以直接从附件中下载): openssl IBM官方网站下载:https://www14.software.ibm.com/webapp/iwm/web/reg ...
- linux centos 配置 svn 服务器
首先介绍一下吧,Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中. ...
- #include <locale.h> #include <locale>
C C++ C 1 setlocale setlocale,本函数用来配置地域的信息,设置当前程序使用的本地化信息. #include <stdio.h> #include <std ...
- python 访问器@property的使用方法
@property 可以将python定义的函数"当做"属性访问,从而提供更加友好访问方式,但是有时候setter/getter也是需要的 假设定义了一个类Cls,该类必须继承自o ...
- react-native component function
examples: use:
- javascript高级知识点——继承
代码信息来自于http://ejohn.org/apps/learn/. 继承是如何工作的 function Person(){} function Ninja(){} Ninja.prototype ...