亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: MCP3208,ADC程序設(shè)計(jì) [打印本頁(yè)]

作者: 懶羊羊436    時(shí)間: 2017-9-11 18:55
標(biāo)題: MCP3208,ADC程序設(shè)計(jì)
MCP3208,ADC程序設(shè)計(jì)
下載:
MCP3204.zip (715 Bytes, 下載次數(shù): 61)

  1. #include "config_Economy.h"
  2. #include "..\APP\config.h"
  3. #include "typedef.h"
  4. #include "extern.h"

  5. void adclkoutvalue(unsigned char bits)
  6. {
  7.         if(bits==1)
  8.                 FIO1SET =0x80000000;
  9.         else
  10.                 FIO1CLR =0x80000000;
  11. }

  12. void adcsvalue(unsigned char bits)
  13. {
  14.         if(bits==1)
  15.                 FIO0SET =1<<27;
  16.         else FIO0CLR =1<<27;
  17. }

  18. void adconfig(unsigned char bits)
  19. {
  20.         if(bits==1)
  21.                 FIO0SET |=1<<28;
  22.         else FIO0CLR =1<<28;
  23. }

  24. unsigned char add(void)
  25. {
  26.         if((FIO1PIN&(1<<30))>0)        return 1;
  27.         else return 0;
  28. }

  29. void adclk_out(void)
  30. {
  31.         FIO1DIR |=0x80000000;                        //輸出
  32. }
  33. void add_out(void)
  34. {
  35.         FIO1DIR &=~(1<<30);                         //輸入
  36. }

  37. void add_config(void)
  38. {
  39.         FIO0DIR |=1<<28;                         //輸出               
  40. }

  41. void ad_cs(void)
  42. {
  43.         FIO0DIR |=1<<27;                         //輸出
  44. }

  45. unsigned int read_mcp3204(unsigned char channel)
  46. {
  47. unsigned int value;
  48. unsigned int i;
  49. unsigned char start=0x18;
  50.         adcsvalue(1);
  51.         adclkoutvalue(0);
  52.         adconfig(0);
  53.         OSTimeDlyHMSM(0,0,0,1);

  54.         start |= channel;
  55.         adcsvalue(0);
  56.         OSTimeDlyHMSM(0,0,0,1);
  57.         for(i=0;i<2;i++)
  58.         {
  59.                 adclkoutvalue(0);
  60.                 adconfig(0);
  61.                 OSTimeDlyHMSM(0,0,0,1);
  62.                 adclkoutvalue(1);
  63.                 OSTimeDlyHMSM(0,0,0,1);
  64.         }
  65.         for(i=0;i<8;i++)
  66.         {
  67.                 adclkoutvalue(0);
  68.                 if(((1<<(7-i))&start)>0) adconfig(1);  
  69.                 else adconfig(0);
  70.                 OSTimeDlyHMSM(0,0,0,1);
  71.                 adclkoutvalue(1);
  72.                 OSTimeDlyHMSM(0,0,0,1);
  73.         }
  74.         for(i=0;i<2;i++)
  75.         {
  76.                 adclkoutvalue(0);
  77.                 adconfig(0);
  78.                 OSTimeDlyHMSM(0,0,0,1);
  79.                 adclkoutvalue(1);
  80.                 OSTimeDlyHMSM(0,0,0,1);
  81.         }
  82.         value = 0;
  83.         for(i=0;i<12;i++)
  84.         {
  85.                 adclkoutvalue(0);       
  86.                 OSTimeDlyHMSM(0,0,0,1);
  87.                 adclkoutvalue(1);
  88.                 OSTimeDlyHMSM(0,0,0,1);
  89.                 value = value<<1;
  90.                 if(add()==1)
  91.                 {                                                
  92.                         value++;
  93.                 }       
  94.         }
  95.         adcsvalue(1);
  96.         adclkoutvalue(0);
  97.         adconfig(0);         
  98.         return(value);
  99. }

  100. void MCP3204_init(void)
  101. {
  102.         SCS        |= 0x01;
  103.         adclk_out();       
  104.         add_out();
  105.         add_config();
  106.         ad_cs();

  107.         adcsvalue(1);
  108.         adclkoutvalue(0);
  109.         adconfig(0);
  110. }
復(fù)制代碼







歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1