版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、定时器PWM输出实验1. 实验目的1) 熟悉Linux开发环境。2) 掌握S5PV210内部相关寄存器的操作方法,最终实现对外部设备的控制。3) 熟悉在Linux裸机环境下的C语言编程。4) 熟悉S5PV210的定时器编程。2 实验内容学习并编程实现ARM的定时器PWM输出。3 实验设备1) 硬件:S5PV210教学实验箱、PC机;2) 软件:PC机操作系统Windows 98(2000、XP) VMware workstation+Ubuntu12开发环境。4 基础知识S5PV210共有5个32bit的PWM定时器,其中定时器0、1、2、3有PWM功能,定时器4没有输出引脚。PWM定时器使用
2、PCLK_PSYS作为时钟源。时钟初始化相关寄存器定时器初始化相关定时器定时器PWM输出控制的相关内容:GPD0CON确定GPD0DAT引脚的功能,本实验用GPD00作为TOUT_0的输出。实验程序#define MP0_4CON(*(volatile unsigned long *)0xE0200340)#define MP0_4DAT(*(volatile unsigned long *)0xE0200344)#define GPD0CON (*(volatile unsigned long *)0xE02000A0)#define GPD0DAT (*(volatile unsigned
3、 long *)0xE02000A4)/ clock#define APLL_LOCK (*(volatile unsigned long *)0xE0100000)#define MPLL_LOCK (*(volatile unsigned long *)0xE0100008)#define APLL_CON0 (*(volatile unsigned long *)0xE0100100)#define APLL_CON1 (*(volatile unsigned long *)0xE0100104)#define MPLL_CON (*(volatile unsigned long *)0
4、xE0100108)#define CLK_SRC0 (*(volatile unsigned long *)0xE0100200)#define CLK_SRC1 (*(volatile unsigned long *)0xE0100204)#define CLK_SRC2 (*(volatile unsigned long *)0xE0100208)#define CLK_SRC3 (*(volatile unsigned long *)0xE010020c)#define CLK_SRC4 (*(volatile unsigned long *)0xE0100210)#define CL
5、K_SRC5 (*(volatile unsigned long *)0xE0100214)#define CLK_SRC6 (*(volatile unsigned long *)0xE0100218)#define CLK_SRC_MASK0 (*(volatile unsigned long *)0xE0100280)#define CLK_SRC_MASK1 (*(volatile unsigned long *)0xE0100284)#define CLK_DIV0 (*(volatile unsigned long *)0xE0100300)#define CLK_DIV1 (*(
6、volatile unsigned long *)0xE0100304)#define CLK_DIV2 (*(volatile unsigned long *)0xE0100308)#define CLK_DIV3 (*(volatile unsigned long *)0xE010030c)#define CLK_DIV4 (*(volatile unsigned long *)0xE0100310)#define CLK_DIV5 (*(volatile unsigned long *)0xE0100314)#define CLK_DIV6 (*(volatile unsigned lo
7、ng *)0xE0100318)#define CLK_DIV7 (*(volatile unsigned long *)0xE010031c)#define CLK_DIV0_MASK 0x7fffffff#define APLL_MDIV 0x7d#define APLL_PDIV 0x3#define APLL_SDIV 0x1#define MPLL_MDIV0x29b#define MPLL_PDIV0xc#define MPLL_SDIV0x1#define set_pll(mdiv, pdiv, sdiv) (131 | mdiv16 | pdiv8 | sdiv)#define
8、 APLL_VAL set_pll(APLL_MDIV,APLL_PDIV,APLL_SDIV)#define MPLL_VALset_pll(MPLL_MDIV,MPLL_PDIV,MPLL_SDIV)/ PWM CLOCK#defineTCFG0 ( *(volatile unsigned long *)0xE2500000)#defineTCFG1 ( *(volatile unsigned long *)0xE2500004)#defineTCON ( *(volatile unsigned long *)0xE2500008)#defineTCNTB0 ( *(volatile un
9、signed long *)0xE250000C)#defineTCMPB0 ( *(volatile unsigned long *)0xE2500010)#defineTCNTO0 ( *(volatile unsigned long *)0xE2500014)#defineTCNTB1 ( *(volatile unsigned long *)0xE2500018)#defineTCMPB1 ( *(volatile unsigned long *)0xE250001C)#defineTCNTO1 ( *(volatile unsigned long *)0xE2500020)#defi
10、neTCNTB2 ( *(volatile unsigned long *)0xE2500024)#defineTCMPB2 ( *(volatile unsigned long *)0xE2500028)#defineTCNTO2 ( *(volatile unsigned long *)0xE250002C)#defineTCNTB3 ( *(volatile unsigned long *)0xE2500030)#defineTCMPB3 ( *(volatile unsigned long *)0xE2500034)#defineTCNTO3 ( *(volatile unsigned
11、 long *)0xE2500038)#defineTCNTB4 ( *(volatile unsigned long *)0xE250003C)#defineTCNTO4 ( *(volatile unsigned long *)0xE2500040)#defineTINT_CSTAT ( *(volatile unsigned long *)0xE2500044)void init_clock(void) CLK_SRC0 = 0x0;/ close PLL APLL_LOCK= 0x0000FFFF; MPLL_LOCK = 0x0000FFFF; / set PLL APLL_CON0
12、 =APLL_VAL;/FOUT= MDIV * FIN / (PDIV*2(SDIV-1) = 1000 MHz MPLL_CON = MPLL_VAL;/ FOUT = MDIV*FIN/(PDIV*2SDIV)=667 MHz CLK_SRC0= 0x10001111;/ FOUT = MDIV*FIN/(PDIV*2SDIV)=667 MHzvoid init_timer(unsigned long tcntb,unsigned long tcmpb)TCON = 0;TCFG0= (TCFG0 & 0xff00ff)|0x41;/设置预分频系数65TCFG1 =(TCFG1 & (0
13、xf0)|0x04;/ 16分频 输入时钟= PCLK /(prescaler+ 1) /divider =62500hzTCNTB0 = tcntb;TCMPB0 = tcmpb;TCON |= 11;/ 更新TCNTB0 TCMPB0 TCON &= (11);/ 清手动更新位TCON |= (10)|(1 0;count-) for(i=0;i loop; i+) j+; void main(void) GPD0CON = (GPD0CON & (0xF 0)|0x2;/ 控制GPD00作为TOUT_0的输出 MP0_4CON= (MP0_4CON & 0xFFFF0000) | 0x11110000; MP0_4DAT|= 0xF0; init_clock();/初始化时钟 init_timer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑施工现场高处坠落应急预案
- 建筑工程质量通病防治专项方案
- 2026年铜陵市铜官区公务用车平台公开招聘劳务派遣制工作人员3名参考题库(达标题)附答案详解
- 换填地基处理工程施工方法
- 环境管理体系废水废气管理程序
- 互联网公司代码审查方案
- 钢结构防火涂料施工方案
- 防水材料选型方案
- 淀粉糖食品深加工项目环境影响报告
- 地下室顶板种植土防水施工方案
- 2026年新社区工作者考试题及完整附答案
- 2026年全国执业兽医资格证考试题库带答案详解(完整版)
- 2026年学法减分题库和答案
- 2026年部编版新教材语文六年级上册全册教案设计(含教学计划)
- 中国国家话剧院招聘事业单位考试真题
- 《海参中海参多糖的测定 高效液相色谱法》国家标准编制说明
- 译林版英语七年级上册语法知识总结
- 2024年兴业银行招聘笔试参考题库含答案解析
- 慈星全电脑横编织机操作手册
- 员工综合素质能力考核评分表
- ISO-37301-2021-合规管理体系要求及使用指南(中文版)
评论
0/150
提交评论