91视频丝瓜-91视频完整版高清-91视频网-91视频网店-91视频网或将从此无大神-91视频网入口

您好,歡迎訪問上海現易電子元器件有限公司網站!

021-51870898
021-51870898   18019251567
4新聞資訊
您的位置: 首頁 ->  新聞資訊 -> 單片機

?stm8s單片機實現多通道轉換

文章出處:單片機 責任編輯:上海現易電子元器件有限公司 發表時間:2020-11-10

今天在使用stm8s單片機的AD功能,單片機上有AN0到AN9十個通道。想只用其中的三路AN5到AN7。

//ADC初始化
void ADC_Init(void)
{
 ADC_CR1 = 0x50;
 ADC_CR2 = 0x38;
 ADC_TDRL = 0xE0;  //禁止施密特觸發
}

unsigned int Read_ADC_Temp(unsigned channel)
{
 unsigned int i,ADtemp;
 ADC_Init();
 //ADC_CSR = 0x00;
 ADC_CSR = channel;
 ADC_CR1 = 0x01;           // CR1寄存器的最低位置1,使能ADC轉換
 for(i = 0;i < 300;i ++);       // 延時一段時間,至少7uS,保證ADC模塊的上電完成
 ADC_CR1 = ADC_CR1 | 0x01; // 再次將CR1寄存器的最低位置1
               // 使能ADC轉換
 while(!(0x80&ADC_CSR)); // 等待ADC結束
 ADtemp = (unsigned int)(ADC_DRH<<8) | ADC_DRL;
 ADC_CR1 = 0x00;
 return ADtemp;
}

當單獨使用某個通道時

adtemp = read_a2d_dis(0x07);

printf("%d ",adtemp);

讀出的數值是正確的。接地是0接到VDDA上是1023。

但是

adtemp = read_a2d_dis(0x07);

adtemp1 = read_a2d_dis(0x06);

printf("%d ",adtemp);

printf("%d ",adtemp1);

切換通道后,讀出的數據不對,接到地時分別是768,254。切換通道后重新初始化也不行。一開始以為是每次采樣讀玩數據后應該延時。后來在讀取數據的時候分別延時1S還是不行。測得硬件的電壓也是正確的。datasheet上設置的也都對的。后來無奈,就多讀幾次,看看結果是不是一樣。

后來發現只要在同一個通道連續讀兩次。取出的結果是正確的。

unsigned int read_a2d_dis(unsigned char channel)
{
 unsigned int tempTab[5];
 unsigned int i,j,temp;
 temp = 0;
 for(i = 0;i < 5;i ++)
 {
  tempTab[i] = Read_ADC_Temp(channel); 
 }
 for(j=0;j<5;j++)
 {
  for (i=0;i<5-j;i++)
  {
   if (tempTab[i]>tempTab[i+1]) 
   {
    temp=tempTab[i];
    tempTab[i]=tempTab[i+1];
    tempTab[i+1]=temp;
   }
  }
 }
 return tempTab[2]; 
}

做了如上修改后,一共讀五個數據,取中位數。才養值沒有問題,但是為什么必須在切換通道的時候要讀兩次才能得到正確的數據依然沒有找到答案。只是懷疑是否是切換通道后,單片機將數據存儲到ADC_DRH,和ADC_DRL里時移位寄存器發生了錯位。只能在以后慢慢尋找答案。


上海現易電子元器件有限公司 版權所有 未經授權禁止復制或鏡像

CopyRight 2020-2025 www.urqm.cn All rights reserved   滬ICP備2020031792號

友情鏈接:

電話

易經理

18019251567

微信

易經理

易經理

頂部

咨詢
主站蜘蛛池模板: 欧美日韩一区二区三区视视频 | 狠狠干美女 | 国产做A爰片久久毛片A片软件 | 亚洲AAAAA特级 | 国产精品久久久久久一级毛片 | 黄乱色伦 | 久久香蕉影院 | 国内熟女精品熟女A片小说 国内揄拍国产精品人妻在线A片 | 进进出出好涨啊粗大动态图 | 欧美一卡二卡三卡四卡免ios | 狠狠干狠狠操视频 | 九九精品视频一区二区三区 | 国产精品成人国产乱 | 宝贝吃吃它就像吸棒棒糖 | 亚洲国产成人久久一区二区三区 | 无码人妻国产一区二区三区 | 日韩AV国产精品成人无码 | 国产真实乱子伦新视频 | 欧美无人区码卡二卡3卡2022 | 国产一卡2卡3卡4卡有限公司 | 在线成人国产 | 亚洲m男在线中文字幕 | 三个馊子伦着玩小说冫 | 久久机热视频免费 | 欧美日韩另类在线专区 | 一女多男np高辣文h 一女多男nP现代高H | 久久久久久久久毛片精品 | 范冰冰一级做a爰片久久毛片 | 亚州久久久久区1区2少妇 | 99在线精品国自产拍 | 国产亚洲精品久久777777 | 黄色毛片免费网站 | 久久久精品久久久久久 | 神马午夜不卡片 | 99在线在线视频免费视频观看 | 亚洲日韩精品欧美一区二区 | 久久免费视频3 | 99在线在线视频观看 | 特级毛片全部免费播放免下载 | 国产日韩欧美精品一区二区三区 | 公和我做爽死我了A片N |