搜索
bottom↓
回复: 0

430 IO即当AD用 又当IO口检测电平用,出怪事了?

[复制链接]

出50入4汤圆

发表于 2011-1-24 15:53:26 | 显示全部楼层 |阅读模式
void AD(void)
{
SD16CTL = SD16SSEL_1 + SD16DIV_1;               // SLCK=MCLK=1M   2分频 f=500KHz,OSR=1024,参考电源暂不开启,转换前开,转换后关。节能!
  SD16CCTL0 = SD16DF + SD16OSR_1024 + SD16SNGL;   // + SD16UNI // 输出格式为2的补码(8000--7FFF)+过采样速率1024+单次转换 双极性模式(默认模式)
  SD16INCTL0 = SD16INTDLY_0;                      // 中断延时(4第四次采样中断)  
  
  SD16AE = SD16AE0+SD16AE1;               // 设置通道0 因为通道0占用的脚是P1.0 P1.1
  SD16INCTL0 |=SD16GAIN_32 + SD16INCH_0;  // +增益为x32+通道为
  
  SD16CTL |= SD16REFON;               // 只打开1.2V参考源
  Delay_us(100);                       
  SD16CCTL0 |=(SD16SC + SD16IE);      // 启动 SD16 进行转换并且允许 SD16 中断。

}



uchar check(void)
{
  unsigned char sta;
  SD16CCTL0 &= ~(SD16SC + SD16IE);          //关闭AD
  SD16AE &= ~(SD16AE0+SD16AE1);//关闭模拟输入
  P1SEL &=~(BIT0+BIT1); //P1.0 P1.1设为普通IO,输入输出功能
  P1REN &=~(BIT0+BIT1); //P1.0 P1.1上拉,下拉禁止
  P1DIR |=BIT0;         //P1.0 设为输出 1输出 0输入
  P1DIR &=~BIT1;        //P1.1 设为输入
  P1OUT |=BIT0;         //P1.0 输出高电平
  _NOP();
  _NOP();
  _NOP();
  _NOP();
  if(P1IN & BIT1)   //获取P1.1引脚电平
    sta=0;//RTC 在线
  else
    sta=1;//断线
  return sta;
}


void main()
{
  BCSCTL1 = CALBC1_1MHZ;   // Set DCO to 1MHz 校正数据
  DCOCTL  = CALDCO_1MHZ;   // 校正        
  AD();
  check();        //运行完成这函数后,AD再也得不到值??为什么 ??????????????单独AD对,单独IO电平检测对。切换后就不对!!求解

}

#pragma vector=SD16_VECTOR
__interrupt void SD16ISR(void)
{
  SD16CCTL0 &= ~(SD16SC + SD16IE);       // SD16停止转换,禁止中断及关闭采集电路的电源。   
  adc_last_val = SD16MEM0; // 保存 ADC 最后的结果

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-19 02:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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