《DSP原理及应用-外部设备.ppt》由会员分享,可在线阅读,更多相关《DSP原理及应用-外部设备.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、定时器定时器第八章第八章 片内外设片内外设11初步认识定时器初步认识定时器可采样时钟、定时控制或作计数器使用可采样时钟、定时控制或作计数器使用减减1计数器且是一个软件可编程定时器其定时计数器且是一个软件可编程定时器其定时 间隔与间隔与CPU的时钟有关。的时钟有关。VC5416有一个片上定时器,有一个片上定时器,C5402和和C5420 有有2个片上定时器。个片上定时器。22.定时器的组成框图定时器的组成框图PSC:预定标计数器预定标计数器 TDDR:预定标分频系数预定标分频系数TIM:定时器寄存器定时器寄存器 PRD:定时器周期寄存器定时器周期寄存器 33定时器相关寄存器(定时器相关寄存器(3
2、个)个)454定时器工作过程定时器工作过程TSS=0时,开启定时器,时,开启定时器,PSC在在CPU时钟(时钟(CLKOUT)作用下作减作用下作减1计数计数PSC减为减为0时,产生借位信号,使时,产生借位信号,使TIM减减1,同时,同时TDDR 的值装载到的值装载到PSC,开始下一次预计数;,开始下一次预计数;重复步骤重复步骤(2),反复驱动反复驱动TIM减减1计数,直到计数,直到TIM减为减为0时,时,TIM产生借位信号,此借位信号作产生借位信号,此借位信号作CPU的定时中断的定时中断TINT 和定时脉冲输出和定时脉冲输出TOUT,同时,同时PRD的值装载到的值装载到TIM开始开始 下一个定
3、时周期下一个定时周期;69 69 6PSCPSC3 03 0TDDRTDDR15 015 0PRDPRD15 015 0TIMTIM15 015 0TCRTCR9 69 6PSCPSC3 03 0TDDRTDDR定时器工作过程定时器工作过程的的示意图:示意图:TDDR和和PRD的范围:的范围:TDDR为为4bit:Max=16PRD为为16bit:Max=655367定时中断周期:定时中断周期:定时中断频率:定时中断频率:5定定中断中断周期和频率周期和频率8例例1:设:设CLKOUT的频率为的频率为8MHz,现要求,现要求A/D采样频率为采样频率为4kHz,用定时器中断产生定时信号,问如何设计
4、,用定时器中断产生定时信号,问如何设计PRD和和TDDR?说明:说明:TDDR的设置有多种,可以的设置有多种,可以PRD=1999=0 x7CF,TDDR=0 9例例2:设:设CLKOUT的频率为的频率为8MHz,现有一个发光管,要求每,现有一个发光管,要求每秒闪烁秒闪烁1次(即每秒亮一次,暗一次,频率为次(即每秒亮一次,暗一次,频率为2Hz),用),用定时器产生定时信号控制这个发光管,问如何设计定时器产生定时信号控制这个发光管,问如何设计PRD和和TDDR?106定时器的初始化定时器的初始化步骤:步骤:2 2)设置)设置PRDPRD1 1)对)对TCRTCR的的TSSTSS位置位置1 1,停
5、止定时器,停止定时器3 3)设置)设置TCRTCR,包括对,包括对TDDRTDDR的初始化、的初始化、TRBTRB位置位置1 1(使(使TIMTIM减到减到0 0后,重新加载定时器时间常数)、后,重新加载定时器时间常数)、TSSTSS位清位清0 0(启动定时器)(启动定时器)11main()port8000=0;/初始化ICETEK-CTRport8007=0;/关闭东西方向的交通灯port8007=0 x40;/关闭南北方向的交通灯nCount=0;nCountLed=0;asm(“ssbx INTM”);/关中断uWork=PMST;/设置PMST寄存器PMST=uWork&0 xff;/
6、中断向量表起始地址=80H7定时器中断举例定时器中断举例12IMR=0 x8;/使能TINTTCR=0 x041f;/预分频系数 /(TDDR+1)=0 xf+1=16TIM=0;/定时器计数器清0PRD=0 xf423;/周期寄存器 /(PRD+1)=0 xf423+1=62500TCR=0 x042f;/复位、启动IFR=0 x0;/清中断标志位asm(rsbx INTM);/开中断while(1);/等待状态 13void interrupt time(void)nCount+;if(nCount=4)nCount=0;port8007=uLednCountLed0;port8007=u
7、LednCountLed1;nCountLed+;nCountLed%=12;14 VECTORS.asm .RESET:BD _c_int00 STM#200,SP tint:B _time .ref _time NOP NOP15A/D和和D/A转换转换第八章第八章 片内外设片内外设16 ADS7864 是是一一个个高高速速,12位位精精度度,6 通通道道的的A/D 转转换换器器件件(双双AD 核核)。两两个个高高速速AD 转转换换模模块块(转转换换时时间间2s)分分别别有有A,B,C 三三个个复复用用选选择择,以以此实现此实现6 通道采样。通道采样。一、模数转换模块(一、模数转换模块(A
8、DS7864)171819引脚引脚名称名称描述描述引脚引脚名称名称描述描述1+VA模拟电源模拟电源 5V25HOLDC通道通道C0,C1设为保设为保持状态持状态2AGND模拟地模拟地26HOLDB通道通道B0,B1设为保设为保持状态持状态3DB15数据有效指示位数据有效指示位:“1”指有效数据指有效数据;“0”指无效数据指无效数据27HOLDA通道通道A0,A1设为保设为保持状态持状态4DB14通道地址指示位通道地址指示位(见表见表1)28BYTE2 x 8 位地址方式选位地址方式选择用择用5DB13通道地址指示位通道地址指示位(见表见表1)29A2A2 地址选择引脚地址选择引脚(见见表表2)
9、6DB12通道地址指示位通道地址指示位(见表见表1)30A1A1 地址选择引脚地址选择引脚(见见表表2)7DB11数据位数据位11,(最高位),(最高位)31A0A0 地址选择引脚地址选择引脚(见见表表2)20引脚引脚名称名称描述描述引脚引脚名称名称描述描述8DB10数据位数据位1032RESET复位引脚复位引脚9DB9数据位数据位933REFOUT参考输出参考输出10DB8数据位数据位834REFIN参考输入参考输入11DB7数据位数据位735AGND模拟地模拟地12DB6数据位数据位636+VA模拟电源模拟电源+5V13DB5数据位数据位537CHA1+通道通道 A1 运放输入运放输入14
10、DB4数据位数据位438CHA1-通道通道 A1 反相输入反相输入15DB3数据位数据位339CHB1+通道通道 B1 运放输入运放输入21引脚引脚名称名称描述描述引脚引脚名称名称描述描述16DB2数据位数据位240CHB1-通道通道 B1 反相输入反相输入17DB1数据位数据位141CHC1+通道通道 C1 运放输入运放输入18DB0数据位数据位0(最低位最低位)42CHC1-通道通道 C1 反相输入反相输入19低电平表示器件正低电平表示器件正在转换工作中在转换工作中43CHC0-通道通道 C0 反相输入反相输入20DGND数字地数字地44CHC0+通道通道 C0 运放输入运放输入21+VD
11、数字电源数字电源,+5VDC45CHB0-通道通道 B0 反相输入反相输入22CLOCK外部时钟输入端外部时钟输入端46CHB0+通道通道 B0 运放输入运放输入23RDRD输入输入,与与CS信信号共同作用使能号共同作用使能DB输出输出47CHA0-通道通道 A0 反相输入反相输入24片选信号片选信号48CHA0+通道通道 A0 运放输入运放输入221相关寄存器(相关寄存器(3个)个)分分类类名称名称地址(地址(I/O 空空间间)说说明明A/DPort20002hIOA/D 数据寄存器数据寄存器Port30003hIOA/D 通道通道选择选择寄存器寄存器Port40004hIOA/D 采集控制
12、寄存器采集控制寄存器port4=0port4=0,则发送,则发送,则发送,则发送ADAD转换命令信号转换命令信号转换命令信号转换命令信号2315 15 14 1214 12 11 0 11 0Port2Bit110:用来放转换数值(:用来放转换数值(有符号数有符号数)Bit1412:通道地址指示位:通道地址指示位Bit15:表示转换值是否有效(:表示转换值是否有效(为为1时有效时有效)24数据数据通道通道DB14DB13DB12A0000A1001B0010B1011C0100C1101ADS7864 ADS7864 ADS7864 ADS7864 通道号真值表通道号真值表通道号真值表通道号真
13、值表 例如:例如:例如:例如:port2=0 x9023port2=0 x9023,请问用到哪个通道?,请问用到哪个通道?,请问用到哪个通道?,请问用到哪个通道?25通道选择通道选择/模式模式A2A1A0A0000A1001B0010B1011C0100C1101Cycle Mode110FIFO Mode111 ADS7864 ADS7864 地址地址地址地址/模式模式模式模式 真真真真值值值值表表表表 例如:例如:例如:例如:port3=6port3=6,请问选用哪种模式?,请问选用哪种模式?,请问选用哪种模式?,请问选用哪种模式?262A/D转换工作过程转换工作过程 A/D转换模块接到启
14、动转换信号(即给一个或所有的转换模块接到启动转换信号(即给一个或所有的 HOLDX(X=A,B或或C)输入低电平,相应的输入数据通输入低电平,相应的输入数据通 道立即进入保持模式)后,按照设置进行相应通道的道立即进入保持模式)后,按照设置进行相应通道的 数据采样转换。数据采样转换。经过一个采样时间的延迟后,将采样结果放入相应通经过一个采样时间的延迟后,将采样结果放入相应通 道的道的FIFO寄存器中寄存器中保存。保存。转换结束,设置标志(转换结束,设置标志(变成高电平)。变成高电平)。等待下一个启动信号。等待下一个启动信号。273其他引脚说明其他引脚说明 RESET:该引脚输入低电平将复位该引脚
15、输入低电平将复位ADS7864。复位后,。复位后,所所有输出寄存器为空且当前正在进行地转换全部停止,有输出寄存器为空且当前正在进行地转换全部停止,并取消所有的采样保持。并取消所有的采样保持。BUSY:当器件启动一个转换时,该引脚输出低电平;当器件启动一个转换时,该引脚输出低电平;并在转换完成后输出高电平。当数据存入输出寄存器,并在转换完成后输出高电平。当数据存入输出寄存器,且且BUSY 引脚输出为高电平时;新数据可以被读取。引脚输出为高电平时;新数据可以被读取。CS 和和RD:两者同时为低才能使输出数据有效。两者同时为低才能使输出数据有效。28二、数模转换模块(二、数模转换模块(DAC7625
16、)2930313233第八章第八章 外部设备外部设备发光二极管阵列发光二极管阵列34一、发光二极管阵列介绍一、发光二极管阵列介绍1111111111111111特点:以列为单位特点:以列为单位特点:以列为单位特点:以列为单位 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 00 0值为亮值为亮值为亮值为亮35二、阵列的控制端口二、阵列的控制端口(1 1)I/OI/O端口端口端口端口80008000(port8000port8000)VC5416VC5416显示控制模块的全局控制寄存器显示控制模块的全局控制寄存器显示控制
17、模块的全局控制寄存器显示控制模块的全局控制寄存器其各位上的定义如下:其各位上的定义如下:其各位上的定义如下:其各位上的定义如下:如:要使能发光二极管阵列第如:要使能发光二极管阵列第如:要使能发光二极管阵列第如:要使能发光二极管阵列第3 3列,用列,用列,用列,用C C语言语句实现为语言语句实现为语言语句实现为语言语句实现为port8000port800034;34;(2 2)I/OI/O端口端口端口端口80058005(port8005port8005)VC5416VC5416的的的的I/OI/O扩展端口扩展端口扩展端口扩展端口80058005为阵列显示状态寄存器,为阵列显示状态寄存器,为阵列
18、显示状态寄存器,为阵列显示状态寄存器,低低低低8 8位有效。位有效。位有效。位有效。36(3 3)I/OI/O端口端口端口端口80078007(port8007port8007)VC5416VC5416的的的的I/OI/O扩展端口扩展端口扩展端口扩展端口80078007有多种用途,有多种用途,有多种用途,有多种用途,写入写入写入写入0 x0C10 x0C1(即(即(即(即1100 0001B1100 0001B)表示打开阵列显示)表示打开阵列显示)表示打开阵列显示)表示打开阵列显示写入写入写入写入0 x0C00 x0C0(即(即(即(即1100 0000B1100 0000B)表示关闭阵列显示
19、)表示关闭阵列显示)表示关闭阵列显示)表示关闭阵列显示思考:写入思考:写入思考:写入思考:写入0 x000 x00和和和和0 x400 x40分别有何意义?分别有何意义?分别有何意义?分别有何意义?37二、阵列的显示控制方法二、阵列的显示控制方法具体方法是:具体方法是:具体方法是:具体方法是:(1 1)打开阵列显示。在)打开阵列显示。在)打开阵列显示。在)打开阵列显示。在I/OI/O端口端口端口端口80078007写入控制字写入控制字写入控制字写入控制字0 x0C10 x0C1。若关闭则写入若关闭则写入若关闭则写入若关闭则写入0 x0C00 x0C0。(2 2)发送阵列列编号的控制字。列编号发送到全局控制)发送阵列列编号的控制字。列编号发送到全局控制)发送阵列列编号的控制字。列编号发送到全局控制)发送阵列列编号的控制字。列编号发送到全局控制寄存器寄存器寄存器寄存器port8000port8000的第的第的第的第6-46-4位(编号需左移位(编号需左移位(编号需左移位(编号需左移4 4位)。位)。位)。位)。(3 3)发送显示数据到端口)发送显示数据到端口)发送显示数据到端口)发送显示数据到端口0 x80050 x8005,注意:比特,注意:比特,注意:比特,注意:比特“0”0”表示表示表示表示发光,需将数据取反。发光,需将数据取反。发光,需将数据取反。发光,需将数据取反。38