智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 15573|回复: 31
打印 上一主题 下一主题

MC9S12XS128 脉冲累加器和模数计数器的问题.求解

  [复制链接]

8

主题

306

帖子

0

精华

高级会员

Rank: 4

积分
806

优秀会员奖章

QQ
威望
565
贡献
191
兑换币
0
注册时间
2010-1-10
在线时间
25 小时
跳转到指定楼层
1#
发表于 2010-1-11 19:04:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
不知道有没有放对版块,错了提醒下.~
// PLL初始化子程序   BUS Clock=40M
void setbusclock(void)
{   
    CLKSEL=0X00;    //disengage PLL to system                  //这里是不是指使用外部晶振?32M的?还是...
    PLLCTL_PLLON=1;   //turn on PLL
    SYNR=4;         
    REFDV=1;          //pllclock=2*osc*(1+SYNR)/(1+REFDV)=80MHz;  //osc是多少?
    _asm(nop);          //BUS CLOCK=40M
    _asm(nop);
    while(!(CRGFLG_LOCK==1));   //when pll is steady ,then use it;
    CLKSEL_PLLSEL =1;          //engage PLL to system;
}
//PWM
void InitPWM(void)
{
    PWME=0x00;//PWM输出禁止
    PWMCTL=0xf0;//高八位置1,PWM通道级连,PWM1、PWM3、PWM5、PWM7为对应16bPWM输出
    PWMPOL=0xaa;//对应通道输出
    PWMCAE=0x00;//输出波形左对齐,即从周期原点开始计时
   
    PWMPRCLK=0x44;//预分频  CLOCKA=40MHZ/16=2.5MHZ,CLOCKB=40MHZ/16=2.5MHZ
   
    PWMSCLA=0x64;//CLOCKSA=CLOCKA/(2*100)=12.5kHZ
    PWMSCLB=0x64;//CLOCKSB=CLOCKB/(2*100)=12.5kHZ
    //0,1要求是100hz,则输出频率=时钟频率/(x+1)=100hz,得x=124,换成16进制0x7c
    PWMPER1=0x7c;
    //3,5要求是10khz,得x=249,即0xF9,7不做要求
    PWMPER3=0xF9;
    PWMPER5=0xF9;
    PWMCLK=0x82;//PWM1选择CLOCKSA,PWM5选择CLOCKA,PWM3选择CLOCKB,PWM7选择CLOCKSB        
    PWME=0x2a;//1,3,5输出使能
    PACTL=0x50;// 脉冲累加器使能,事件计数模式,上升沿计数,中断禁止      //此处,使能16位脉冲累加器,对PT7口计数.不知道该怎么写

//实时中断RTI
//------------------------------------------------------------
void InitRTI(void)
{
    RTICTL=0x6c;   //时间T=(1/40MHZ)*(12.5*2^15)=10.24ms,12.5取13,所以得T=10.64ms   //这里能否做到精确地10.24ms?
    CRGINT=0x80;    //开实时中断
}



//模数计数器
void SetMDC(void)
{
      //启用模数计数器,并实现自定义的时钟变量1s自增1.   这个也不怎么懂~~~~大虾们打救
}

这个是要求
1.将总线时钟(BUSCLOCK)设置为40M.
2.PWM输出使能。通道0,1级联,频率100hz;
通道2,3级联,频率10khz;
通道4,5级联,频率10khz;
3.使能16位脉冲累加器,对PT7口计数.
4.启用实时中断RTI,设置周期为10.24ms
5.启用模数计数器,并实现自定义的时钟变量1s自增1.


还剩几个实在是资料不足无法完成,而且还要忙着期末考,大家有空帮帮忙啊.最迟要在14号交的说,可惜15号才考完期末考

10

主题

85

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2350
威望
1149
贡献
681
兑换币
722
注册时间
2012-11-13
在线时间
260 小时
32#
发表于 2012-11-27 19:40:48 | 只看该作者
学习了,进步中..........
回复 支持 反对

使用道具 举报

12

主题

165

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2023
威望
1069
贡献
584
兑换币
525
注册时间
2012-9-1
在线时间
185 小时
31#
发表于 2012-11-3 10:50:39 | 只看该作者
初学者 路过
回复 支持 反对

使用道具 举报

7

主题

29

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1968
威望
995
贡献
561
兑换币
192
注册时间
2011-1-7
在线时间
206 小时
30#
发表于 2012-7-1 22:48:58 | 只看该作者
时代还怪 发表于 2010-4-6 21:33
回复 9# liujianqiang86

没有
回复 支持 反对

使用道具 举报

6

主题

58

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
470
威望
308
贡献
38
兑换币
2
注册时间
2010-8-12
在线时间
62 小时
29#
发表于 2011-1-7 11:34:45 | 只看该作者
学习!!!
回复 支持 反对

使用道具 举报

9

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
395
QQ
威望
310
贡献
55
兑换币
0
注册时间
2010-4-24
在线时间
15 小时
28#
发表于 2010-5-8 15:34:07 | 只看该作者
XS128 脉冲累加器溢出中断向量是多少啊? 不懂
回复 支持 反对

使用道具 举报

2

主题

18

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
288
QQ
威望
245
贡献
31
兑换币
0
注册时间
2010-5-3
在线时间
6 小时
27#
发表于 2010-5-5 19:54:21 | 只看该作者
回复 9# liujianqiang86


    没有
回复 支持 反对

使用道具 举报

15

主题

203

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4489

论坛元老奖章

QQ
威望
484
贡献
3979
兑换币
0
注册时间
2010-2-25
在线时间
13 小时
26#
发表于 2010-5-4 21:18:03 | 只看该作者
xs有mdc吗?!
回复 支持 反对

使用道具 举报

6

主题

193

帖子

0

精华

高级会员

Rank: 4

积分
681
威望
448
贡献
151
兑换币
0
注册时间
2010-1-10
在线时间
41 小时
25#
发表于 2010-5-4 20:17:57 | 只看该作者
飘过~~~
回复 支持 反对

使用道具 举报

0

主题

54

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
264
威望
225
贡献
27
兑换币
0
注册时间
2010-4-7
在线时间
6 小时
24#
发表于 2010-4-24 20:45:45 | 只看该作者
没看懂啊!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 19:15 , Processed in 0.325889 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表