智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 4203|回复: 6
打印 上一主题 下一主题

mc9s12xs128的AD代码

[复制链接]

1

主题

2

帖子

0

精华

注册会员

Rank: 2

积分
177
威望
219
贡献
28
兑换币
0
注册时间
2010-1-22
在线时间
0 小时
跳转到指定楼层
1#
发表于 2010-1-22 21:30:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"


void setbusclock(void)
{   
    CLKSEL=0X00;    //disengage PLL to system
    PLLCTL_PLLON=1;   //turn on PLL
    SYNR=0xC5;                                                        
    REFDV=0x81;          //pllclock=2*osc*(1+SYNR)/(1+REFDV)=32MHz;   
    _asm(nop);          //BUS CLOCK=16M  ?
    _asm(nop);
    while(!(CRGFLG_LOCK==1));   //when pll is steady ,then use it;
    CLKSEL_PLLSEL =1;          //engage PLL to system;
}

void vADInit(void)
{

    ATD0CTL1=0b00000000;//8位精度
    ATD0CTL2=0b01000000;//禁止外部触发,标志位快速清零,中断禁止
    ATD0CTL3=0b10001000;//右对齐无符号.转换序列长度为1,No FIFO模式,Freeze模式下继续转换?
    ATD0CTL4=0b00000111;//4AD采样周期,ATDClock=[BusClock*0.5]/[PRS+1]  ; PRS=15, divider=32 ?
    ATD0CTL5=0b00100000;//特殊通道禁止,单通道采样,扫描模式连续采样,ch AN0
    ATD0DIEN=0b00000000;//禁止数字输入

}

unsigned char ReadATD()
{
    byte ad=0;  
    while(!ATD0STAT0_SCF);
    ad= ATD0DR0L;
    return ad;
}

void main(void) {

  setbusclock();
  DDRB=0xFF;
  PORTB=0x00;   
  vADInit();      
  EnableInterrupts;  
  
  
  for(;;){
  
    PORTB=ReadATD(); //在B口显示转换值
         
  }
}

0

主题

162

帖子

0

精华

高级会员

Rank: 4

积分
537
QQ
威望
351
贡献
160
兑换币
12
注册时间
2009-9-26
在线时间
13 小时
2#
发表于 2010-1-24 16:13:37 | 只看该作者
顶!正在学AD这一块,太好了!
回复 支持 反对

使用道具 举报

3

主题

142

帖子

0

精华

高级会员

Rank: 4

积分
554
QQ
威望
371
贡献
67
兑换币
0
注册时间
2010-3-2
在线时间
58 小时
3#
发表于 2010-3-16 20:45:07 | 只看该作者
学习哦
回复 支持 反对

使用道具 举报

0

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
威望
198
贡献
41
兑换币
0
注册时间
2010-3-6
在线时间
2 小时
4#
发表于 2010-3-19 00:37:35 | 只看该作者
好 资源  感谢
回复 支持 反对

使用道具 举报

9

主题

199

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
8268

论坛元老奖章

QQ
威望
529
贡献
7627
兑换币
0
注册时间
2010-1-10
在线时间
56 小时
5#
发表于 2010-3-19 10:30:40 | 只看该作者
good
回复 支持 反对

使用道具 举报

10

主题

126

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2604
威望
567
贡献
1795
兑换币
130
注册时间
2009-6-6
在线时间
121 小时
6#
发表于 2010-3-24 19:26:01 | 只看该作者
敢问楼主,你在BDM调试下试过了么?情况怎么样?为什么我一整就全都是1,奇怪~
回复 支持 反对

使用道具 举报

1

主题

15

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
242
威望
206
贡献
22
兑换币
0
注册时间
2010-4-8
在线时间
7 小时
7#
发表于 2010-4-9 22:35:49 | 只看该作者
学习了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 22:58 , Processed in 0.057309 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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