ARM功能手机
——疯壳·开发板系列
定时器实验教程
![1.png 1.png](https://static.assets-stash.eet-china.com/forum/202209/06/141346xb7bbzwzcirb25eq.png)
图1
8LED硬件电路
板子中有一个可控LED,接在DA14580的P24引脚,LED串联1K的限流电阻,如下图所示:
![2.png 2.png](https://static.assets-stash.eet-china.com/forum/202209/06/141400kp8u75op51588abi.png)
图2
第二节 Timer寄存器
2.1 Timer介绍
软件定时器模块包含两个定时器模块,它们可以通过软件控制、编程并用于各种任务。
2.1.1 Timer0
定时器0有16位的通用定时器;可以产生两路脉宽调制信号;可编程的输出频率;可编程的占空比;可编程的软件中断。
2.1.2 Timer2
定时器2有14位的通用定时器;可以产生3路脉宽调制信号;输入时钟频率为16MHz;可编程的输入频率;占空比可调;用于白色LED的亮度控制。
2.2 寄存器介绍
2.2.1 定时器0控制寄存器
![3.png 3.png](https://static.assets-stash.eet-china.com/forum/202209/06/141412ok4dz0ntjnttsdxz.png)
图3
15:4位:保留不使用;
3位:PWM模式选择,’0’表示PWM信号为高时输出’1’,’1’表示PWM信号为高时输出快时钟信号的二分频,则输出频率范围为1~8MHz;
2位:定时器0的时钟分频,为’1’使用选择的时钟源频率,为’0’使用选择的时钟源进行10分频,注意这个值适用于计数寄存器;
1位:时钟源选择,’1’使用快时钟(16、8、4、2MHz),’0’使用慢时钟(32KHz);
0位:定时器0控制位,’0’表示定时器0关闭并处于复位状态,’1’定时器0运行。
2.2.2 定时器0计数控制寄存器
![4.png 4.png](https://static.assets-stash.eet-china.com/forum/202209/06/141422fjjgl3g55oojj7dl.png)
图4
定时器0计数重新装载值,如果读取该寄存器则返回当前计数器的值。
2.2.3 定时器0高电平重新装载值
![5.png 5.png](https://static.assets-stash.eet-china.com/forum/202209/06/141431pg58kgwn8p15pepp.png)
图5
定时器0高电平重新装载值,如果读取该寄存器则返回定时器0的计数值。
2.2.4 定时器0低电平重新装载值
![6.png 6.png](https://static.assets-stash.eet-china.com/forum/202209/06/141439a02cfcr2bc2iz2i2.png)
图6
定时器0低电平重新装载值,如果读取该寄存器则返回定时器0的计数值。
2.2.5 PWM2占空比
![7.png 7.png](https://static.assets-stash.eet-china.com/forum/202209/06/141448c6ftim7f75afeeze.png)
图7
PWM2信号的占空比。
2.2.6 PWM3占空比
![8.png 8.png](https://static.assets-stash.eet-china.com/forum/202209/06/141456lbhaka9kc0ba835d.png)
图8
PWM3信号的占空比。
2.2.7 PWM4占空比
![9.png 9.png](https://static.assets-stash.eet-china.com/forum/202209/06/141508bcqzs6qigl0336p7.png)
图9
PWM4信号的占空比。
2.2.8 PWM2,3,4的频率
![10.png 10.png](https://static.assets-stash.eet-china.com/forum/202209/06/141518nx2o3uxdodado0ks.png)
图10
PWM2、3、4信号的频率,三个信号频率相同。
2.2.9 PWM2,3,4控制寄存器
![11.png 11.png](https://static.assets-stash.eet-china.com/forum/202209/06/141526rsmkls4shdsltomz.png)
图11
2位:硬件暂停使能,为’1’则硬件可以停止PWM2、3、4。
1位:软件暂停使能,为’1’则PWM2、3、4暂停。
0位:PWM信号使能,为’1’则PWM2、3、4使能。
2.3 寄存器配置讲解
#define CLK_PER_REG (* ( volatile uint16*)0x50000004)
#define TIMER0_CTRL_REG (* ( volatile uint16*)0x50003400)
#define TIMER0_ON_REG (* ( volatile uint16*)0x50003402)
#define TIMER0_RELOAD_M_REG (* ( volatile uint16*)0x50003404)
#define TIMER0_RELOAD_N_REG (* ( volatile uint16*)0x50003406)
#define PWM2_DUTY_CYCLE (* ( volatile uint16*)0x50003408)
#define PWM3_DUTY_CYCLE (* ( volatile uint16*)0x5000340A)
#define PWM4_DUTY_CYCLE (* ( volatile uint16*)0x5000340C)
#define TRIPLE_PWM_FREQUENCY (* ( volatile uint16*)0x5000340E)
#define TRIPLE_PWM_CTRL_REG (* ( volatile uint16*)0x50003410)
启动Timer0模块的时钟:CLK_PER_REG |= 0x0008;
定时器0初始化,选择高频时钟,正常PWM模式,无分频,则TIMER0_CTRL_REG = 0X0E;
设置计数值为1000,高电平为500,低电平为200,则TIMER0_ON_REG=1000; TIMER0_RELOAD_M_REG=500; TIMER0_RELOAD_N_REG=200;
开定时器中断NVIC_SetPriority (SWTIM_IRQn, 254); NVIC_EnableIRQ(SWTIM_IRQn);
启动定时器TIMER0_CTRL_REG = (TIMER0_CTRL_REG|0x01);
第三节 定时器实验
实验需要使用的模块有:手机开发板底板,Jlink调试工具,杜邦线、3.7V锂电池或Mocro USB线。
使用JLINK通过杜邦线连接手机蓝牙位于手机主控底板,连接方式如下:
(1)JLINK一端只需要使用杜邦线连接JLINK的SWC、SWD、GND三个引脚,如下图所示:
![12.png 12.png](https://static.assets-stash.eet-china.com/forum/202209/06/141537mbiyhiifbbb7yfs4.png)
图12
(2)手机蓝牙一端需要使用杜邦线连接上方右侧的J3三个引脚,与JLINK的连接引脚一一对应,分别为SWC-->SWCLK、SWD-->SWDIO、GND-->GND,如下图所示:
![13.png 13.png](https://static.assets-stash.eet-china.com/forum/202209/06/141546hq00jobcffk0kokq.png)
图13
将JLINK插上电脑的USB接口,连接好之后给手机主控底板供电,详细的介绍可以参考《如何上电》教程,路径为:..\WT_Mobile\0.从这里开始\0.开机测试。
打开定时器实验的Keil工程timer0_general.uvproj,位于目录:
..\WT_Mobile\1.初级教程\DA14580\3_初级_定时器\projects\target_apps\peripheral_examples\timer0\timer0_general\Keil_5。如下图所示:
![14.png 14.png](https://static.assets-stash.eet-china.com/forum/202209/06/141559pbcwfvlllyvborb0.png)
图14
使用手环调试下载线连接好Jlink,编译,点击DEBUG,然后点击全速运行,则可以看到蓝色LED闪烁,如下图所示:
![15.png 15.png](https://static.assets-stash.eet-china.com/forum/202209/06/141609yc6lgnuzgk9hulu2.png)
![15.1.png 15.1.png](https://static.assets-stash.eet-china.com/forum/202209/06/141616jnxlxxhahhlpkptc.png)
图15
文件下载请点击:
![](static/image/filetype/pdf.gif)
全部回复 0