ADC0809与AT89S52组成的数字电压表 精确到0.02V 用汇编语言怎么写?
2个回答
展开全部
精确与否是你的AD转换位数所决定的,程序怎么写都是一样的。
如果你的AD是8位AD,5V/2^8=5V/256=0.01953125v
这个是最小精度,所以如果你是8位精度的AD,你的数字电压表量程是5V的,那就可以达到要求精度,
如果量程为10V,那么8位AD就达不到。
至于汇编语言怎么写,这个你的老师没教给你AD转换吗?
51的单片机是不带AD的,扩展 AD芯片,然后用单片机和AD芯片通信就行了
带AD的单片机就设置相应ad通道和寄存器,然后开始转换,转换完成会产生中断或通过查询转换完成标志位就行了
读来的AD值先进行滤波,减少干扰。有好多程序滤波方法比如滑动平均值滤波,中卫值滤波,中间差值滤波,冒泡排序去掉最大和最小值,中间均值滤波等等...根据实际信号的频率,干扰的脉冲时间大小来选则滤波方法。具体怎么选可以再网上看看文献.
滤好波的AD值再用来查表显示想对应的电压值。你要先做一个AD对应电压的表。
因为电压转换是线性的,所以为了节省程序空间,可以不查表,用计算也可以。但是热敏电阻就必须查表,因为温度和电压转换不是线性的。
加入你测量的AD值是64H,那么电压就是0.01953125v*64H(100)=1.953125V,然后显示出来就OK了!
程序的话没人帮你写的,只能告诉你方法,具体要你去写,写上一遍就会了。不会的要自己钻研自己练习,自己找BUG。学单片机一定要动手,不对手写一辈子也学不会的。
至于怎么写这个太笼统了,你要自己写后发现什么不理解,卡到哪里不知道怎么写时再问别人,这样问人别人没办法回答你的!比如你问个AD芯片和单片机通讯的时序,单片机怎么清除RAM,定时器怎么设置比你这样问都好。
如果你的AD是8位AD,5V/2^8=5V/256=0.01953125v
这个是最小精度,所以如果你是8位精度的AD,你的数字电压表量程是5V的,那就可以达到要求精度,
如果量程为10V,那么8位AD就达不到。
至于汇编语言怎么写,这个你的老师没教给你AD转换吗?
51的单片机是不带AD的,扩展 AD芯片,然后用单片机和AD芯片通信就行了
带AD的单片机就设置相应ad通道和寄存器,然后开始转换,转换完成会产生中断或通过查询转换完成标志位就行了
读来的AD值先进行滤波,减少干扰。有好多程序滤波方法比如滑动平均值滤波,中卫值滤波,中间差值滤波,冒泡排序去掉最大和最小值,中间均值滤波等等...根据实际信号的频率,干扰的脉冲时间大小来选则滤波方法。具体怎么选可以再网上看看文献.
滤好波的AD值再用来查表显示想对应的电压值。你要先做一个AD对应电压的表。
因为电压转换是线性的,所以为了节省程序空间,可以不查表,用计算也可以。但是热敏电阻就必须查表,因为温度和电压转换不是线性的。
加入你测量的AD值是64H,那么电压就是0.01953125v*64H(100)=1.953125V,然后显示出来就OK了!
程序的话没人帮你写的,只能告诉你方法,具体要你去写,写上一遍就会了。不会的要自己钻研自己练习,自己找BUG。学单片机一定要动手,不对手写一辈子也学不会的。
至于怎么写这个太笼统了,你要自己写后发现什么不理解,卡到哪里不知道怎么写时再问别人,这样问人别人没办法回答你的!比如你问个AD芯片和单片机通讯的时序,单片机怎么清除RAM,定时器怎么设置比你这样问都好。
北京康思
2018-09-20 广告
2018-09-20 广告
电压的测量利用示波器所做的任何测量,都是归结为对电压的测量。示波器可以测量各种波形的电压幅度,既可以测量直流电压和正弦电压,又可以测量脉冲或非正弦电压的幅度。更有用的是它可以测量一个脉冲电压波形各部分的电压幅值,如上冲量或顶部下降量等。这是...
点击进入详情页
本回答由北京康思提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询