智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1515|回复: 5
打印 上一主题 下一主题

求助一个程序

[复制链接]

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
115
贡献
30
兑换币
0
注册时间
2012-5-10
在线时间
5 小时
毕业学校
河北工业大学
跳转到指定楼层
1#
发表于 2012-7-11 14:56:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用单片机其中4路产生pwm方波
要求:单片机超频80MHz,2路pwm50Hz,另外2路pwm1KHz--2kHz任意频率!
弄完后上实验室下载程序,自己用示波器观察波形。
进一步要求:要求4路连级。

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
115
贡献
30
兑换币
0
注册时间
2012-5-10
在线时间
5 小时
毕业学校
河北工业大学
2#
 楼主| 发表于 2012-7-11 14:59:29 | 只看该作者
求助啊,大神呢
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
115
贡献
30
兑换币
0
注册时间
2012-5-10
在线时间
5 小时
毕业学校
河北工业大学
3#
 楼主| 发表于 2012-7-11 15:04:47 | 只看该作者
顶,让大神看到
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
115
贡献
30
兑换币
0
注册时间
2012-5-10
在线时间
5 小时
毕业学校
河北工业大学
4#
 楼主| 发表于 2012-7-11 15:15:38 | 只看该作者
单片机是MC9S12XS128
回复 支持 反对

使用道具 举报

16

主题

487

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2898
威望
1582
贡献
758
兑换币
243
注册时间
2011-3-18
在线时间
279 小时
5#
发表于 2012-7-11 16:45:44 | 只看该作者
extern void PWM_init(void){
  PWME      = 0x00;          //PWM禁止
  PWMCTL    = 0x70;   //[7]0  6,7通道独立使用
                      //[6]1  4,5通道级联,通道5决定属性
                      //[5]1  2,3通道级联,通道3决定属性
                      //[4]1  0,1通道级联,通道1决定属性
  PWMPRCLK  = 0x00;   //不分频,Clock A和Clock B为总线时钟频率80M
  PWMSCLA   = 0x07;   //Clock SA = Clock A / (2 * PWMSCLA)
                      //Clock SA = 80M / 14 = 5.71M
  PWMSCLB   = 0x28;   //C//Clock SA = Clock A / (2 * PWMSCLA)
                      //Clock SA = 80M / 80 = 1M
  PWMCLK    = 0x6A;   //时钟选择
                      //[7:6] B,SB
                      //[5:4] SA
                      //[3:2] SB
                      //[1:0] SA
  PWMPOL    = 0xAA;   //先1后0
  PWMCAE    = 0x00;   //左对齐
//---------------------------------------------------------------
//
//---------------------------------------------------------------   
  PWMPER01  = 500;    //频率 1/(1/5710000*500)=11.42K
  PWMDTY01  = 400;    //占空比400/500=80%
//---------------------------------------------------------------
//
//---------------------------------------------------------------     
  PWMPER23  = 20000;  //频率 1/(1/1000000*20000)=50
  PWMDTY23  = 1500;   //中间1500 右1330 左1670
//---------------------------------------------------------------
//
//---------------------------------------------------------------   
  PWMPER7  = 8;       //频率 1/(1/80000000*8)=10M
  PWMDTY7  = 2;       //占空比=2/8=25%
                                     
  PWME      = 0x8A;          //1,3,7使能
}


自己改
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
155
威望
115
贡献
30
兑换币
0
注册时间
2012-5-10
在线时间
5 小时
毕业学校
河北工业大学
6#
 楼主| 发表于 2012-7-11 19:41:27 | 只看该作者
Magnetoplas 发表于 2012-7-11 16:45
extern void PWM_init(void){
  PWME      = 0x00;          //PWM禁止
  PWMCTL    = 0x70;   //[7]0  6,7通道独 ...

哇,终于有大神来了,谢谢,马上看,改好了告诉你
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-6 00:33 , Processed in 0.088781 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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