请问一下,我用PIC单片机的AD转换来测直流电压(0~5V),然后用数码管来显示(三位)

作者&投稿:慎发 (若有异议请与网页底部的电邮联系)
你好~~我在做一个单片机的毕业设计~就是用单片机检测一个直流电压,然后在数码管上显示,希望您能给予帮助~

给你个很相近的实例,参考下吧:
STC12C5A60S2+内部AD+lcd1602+eeprom应用(贴程序)
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4366749&bbs_page_no=1&search_mode=1&search_text=电压&bbs_id=1006

STC12C5A08S2 AD应用 电压表
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4312307&bbs_page_no=1&search_mode=1&search_text=电压&bbs_id=1006

差太远了吧
AD转换后要经过3-8译码,再用7段译码,变成数码管可以显示的形式

数码管动态显示还是静态显示取决于你的要求
静态显示就是每一个数码管用7根线驱动,比如你要显示4位十进制数,就需要4 * 7 = 28根线

动态显示是所有数码管共用7根线,但是需要一个扫描信号,需要另做一个扫频逻辑。

如果你要显示一位两位十进制数的话可以考虑用静态显示,四位或者以上的话PIC就没有这么多空的引脚给你用了,最好做静态显示

注意一下如果要做静态显示的话,在做数码管驱动电路的时候驱动电流选的小一些,否则容易烧坏数码管。做静态显示的话驱动电流可以适当大一些,否则亮度不足

加个数字滤波程序,理论就是:采AD值N次(如20次),存在内存里,然后程序将这20个数从低到高排列,取中间一位作为算出的AD值,每0.5s(或其它延时时间)进行一次数字滤波,这样得出的AD值就稳定了,这是中值滤波法,当然还有限幅滤波(就是设电压上下限)、平均数(去最大值和最小值,再求平均值)等数字滤波法,单片机做检测电压值一般都要用数字滤波。
给你个C语言的中值滤波法:
#define N 10
typedef unsigned int u16;

u16 voltage_filter(void)
{
char count,i,j;
static u16 value_buf[N];
u16 sum=0,temp;
for(count=0;count<N;count++)
{
value_buf[count] = GetADCValue(5);
}
for(j=0;j<N-1;j++)
{
for(i=0;i<N-j;i++)
{
if(value_buf[i]>value_buf[i+1])
{
temp = value_buf[i];
value_buf[i]=value_buf[i+1];
value_buf[i+1]=temp;
}
}
}
for(count=1;count<N-1;count++)
sum+=value_buf[count];
return (sum/(N-2));
}

明显是“AD每次的转换值不一样导致的结果”,可以用多次采样平均的简单的办法解决,就是不要每采一次都显示,可以采8、16、32、64次相加后平均再输出显示,这样就不会抖了,而且多次采样平均也符合统计学原则。(采8、16、32、64次是为了平均时方便用右移3、4、5、6位方式实现,速度快)

变化很正常,可能是电压本身就在变化,可以加一个判断,就是判断最后一个数码管显示的数值如果发生了多大的变化,你才更新它显示的内容,否则不更新最后一个数码管现实的内容。

你发个电路图看看


我想问一下抖音里怎么置顶自己的作品?
需要工具:手机、抖音APP 一、想要将自己的作品置顶时,打开抖音的个人主页。\/iknow-pic.cdn.bcebos.com\/c83d70cf3bc79f3d137719a1b4a1cd11738b2989"target="_blank"title="点击查看大图"class="ikqb_img_alink">\/iknow-pic.cdn.bcebos.com\/c83d70cf3bc79f3d137719a1b4a1cd11738b2989?x-bce...

我想问一下医院可以用信用卡吗
我国相关法律(《全国人大常委会关于信用卡条例的解释》)规定的信用卡,是指商业银行或者其他金融机构发行的具有消费支付、信用贷款、转账结算、现金存取款等全部或者部分功能的电子支付卡。2017年12月1日,《公务英语翻译书写规范》正式实施,规定信用卡的标准英文名称为Credit Card。信用卡消费是一种非现金...

我想问一下茂名市电子驾驶证可以办理吗
具体申请电子驾照的办法如下。\/iknow-pic.cdn.bcebos.com\/43a7d933c895d14382387bb161f082025baf07d1"target="_blank"title="点击查看大图"class="ikqb_img_alink">电子驾驶证申请流程:下载交管12123,然后登录“交管12123”后,在APP首页最上方找到了“驾驶证”按钮,点击进入后在“我的驾驶证”页面...

我想问一下ipad分辨率怎么调
需要用到的工具有:iPadAir2。以iPadAir2为例:1、打开iPadAir2桌面,点击进入设置,如下图所示:\/iknow-pic.cdn.bcebos.com\/6a63f6246b600c33f1592e29144c510fd9f9a12b"target="_blank"title="点击查看大图"class="ikqb_img_alink">\/iknow-pic.cdn.bcebos.com\/6a63f6246b600c33f1592e29144...

我想问一下探探软件是用来干嘛的?
探探软件是用来社交聊天的。探探是一个基于大数据智能推荐、全新互动模式的社交App。探探根据用户的个人资料、位置、兴趣爱好等信息,计算并推送身边与你匹配的人,帮助用户结识互有好感的新朋友。探探不仅基于LBS,还会根据用户之间 共同兴趣爱好、共同好友、曾经共同经过的地点等十几项信息,计算并推送与之...

我想问一下可以用别人的医保卡看病吗
\/iknow-pic.cdn.bcebos.com\/8644ebf81a4c510f4fc07d076d59252dd42aa5a3"target="_blank"title="点击查看大图"class="ikqb_img_alink">\/iknow-pic.cdn.bcebos.com\/8644ebf81a4c510f4fc07d076d59252dd42aa5a3?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2C...

我想问一下vivox23录屏功能在哪里?
x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"esrc="https:\/\/iknow-pic.cdn.bcebos.com\/0b7b02087bf40ad1449802af592c11dfa9ecce7a"\/> 2、点击红框所选“屏幕录制”,进入下一步设置。\/iknow-pic.cdn.bcebos.com\/b3fb43166d...

我想问一下驾驶证审验业务退办是什么情况
根据《中华人民共和国道路交通法》第二十三条公安机关交通管理部门依照法律,行政法规的规定,定期对机动车驾驶证实施审验。\/iknow-pic.cdn.bcebos.com\/4610b912c8fcc3ce7068f9a18045d688d53f20f3"target="_blank"title="点击查看大图"class="ikqb_img_alink">根据《机动车驾驶证申领和使用规定》第七十...

我想问一下自己如何创建微信公众号?
1、首先进入微信官方首页,点击右上角的“立即注册”按钮,即可进入注册页面。\/iknow-pic.cdn.bcebos.com\/95eef01f3a292df51a8e0957b1315c6034a87327"target="_blank"title="点击查看大图"class="ikqb_img_alink">\/iknow-pic.cdn.bcebos.com\/95eef01f3a292df51a8e0957b1315c6034a87327?x-bce-...

你好我问一下38度算发烧么?
体温测量与正常波动:1、口腔温度 将体温计放置在舌下,闭嘴约3分钟后取出,正常范围为36.3℃~37.2℃;2、腋窝温度 因测量方便卫生,是目前最常使用的测温方法,其测量方法是将体温计夹于腋窝,五分钟后读取数值,正常范围为36.1℃~37℃,比口腔温度约低0.2℃~0.4℃。\/iknow-pic.cdn.bcebos...

荔蒲县17045399053: 请问一下,我用PIC单片机的AD转换来测直流电压(0~5V),然后用数码管来显示(三位) -
茶京林格: 明显是“AD每次的转换值不一样导致的结果”,可以用多次采样平均的简单的办法解决,就是不要每采一次都显示,可以采8、16、32、64次相加后平均再输出显示,这样就不会抖了,而且多次采样平均也符合统计学原则.(采8、16、32、64次是为了平均时方便用右移3、4、5、6位方式实现,速度快)

荔蒲县17045399053: 请问一下,单片机中内置ad转换怎么使用,就是怎么连接电路,怎么输入模拟信号,怎么输出 -
茶京林格: 你看下手册中有相关介绍的,一般情况是设置对应寄存器位即可,转换完毕会产生中断,再从相应寄存器读出来即可

荔蒲县17045399053: 公司PIC单片机AD转换的Vref PIN接法 -
茶京林格: 这是一个RC滤波电路,可以根据要求改变电阻、电容的取值滤除不同范围的噪声或干扰,如果只拍一个电容,滤波电路参数的选择和改变就没有那么灵活了.

荔蒲县17045399053: 关于PIC单片机AD采样的问题 -
茶京林格: PIC24的单片机有多个AD输入通道(即多个输入引脚).当你想在一次AD中断只读取一个通道的AD值时候,就不需要扫描输入.如果想一次中断采集到多个AD引脚的电压值,就要设置扫描输入. 这个扫描输入就是一次性把多路AD扫描进来的意思.

荔蒲县17045399053: pic单片机多路ad转换 -
茶京林格: 不知道你用那个系列的PIC?试试先关闭AD模块(即将ADON位清0),然后换通道,再打开AD模块!

荔蒲县17045399053: 为什么pic单片机只有一个ad通道可以用 -
茶京林格: 单片机 及 资料没有问题,8个 AD 通道都能 进行AD 转换,只要编程正确.

荔蒲县17045399053: 我用pic16f877a单片机ad转换 然后是这么一个电路:光电接收管船一个10k电阻 电阻接正5v 光电二极管接模拟 -
茶京林格: 光电二极管接反或电阻不够大都会出现这个情况.

荔蒲县17045399053: pic16f1939单片机的ad转换结果是什么?怎么计算? -
茶京林格: PIC16F1939单片机没用过,PIC16F877倒是接触过1、精度 : 8位的 10位的2、对齐方式:左对齐、右对齐3、相关寄存器:ADRESEAL ADRESEAH 4、参考电压:基准电压或是电源电压 转换结果 U.=N/256*U参 或是 U0=N/1024*U参N为两个寄存器的数字

荔蒲县17045399053: PIC 单片机的AD值怎么计算 -
茶京林格: 看你用的是PIC那个系列的单片机了. PIC12、PIC16、PIC18、pic24等系列的单片机基本上都是10位精度的AD,而dsPIC30/33系列单片机有12位精度的AD. 在这只说10位精度的AD的计算. 首先2的10次方就是1024,也就是说AD采集到的数据用0到1023这1024个数值来表示,这还需要看你设置的参考电压的值,如果设置参考电压为5V(VREF引脚接5V),则参考电压范围是0V~5V,其对应的就是0~1023. 所以 AD值 = (采集到的数据 * 5V)/ 1023

荔蒲县17045399053: 单片机AD转换问题.
茶京林格: 1,什么是AD转换? A是模拟信号的意思,D是数字信号的意思,AD转换就是模数转换,顾名思义,就是把模拟信号转换成数字信号,例如把电压值转化为数字信号. 2,为什么要AD转换? 单片机(以及其他处理器)只能处理数字信号,当单...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网