单片机AD转换后在数码管显示的问题?
我用的是51系列的单片机,在做仿真,想用单片机、ADC0801、和数码管,但结果无法在数码管上显示,不知道怎么转换?请各位高手指教!!急!!!谢谢啦!...
我用的是51系列的单片机,在做仿真,想用单片机、ADC0801、和数码管,但结果无法在数码管上显示,不知道怎么转换?请各位高手指教!!急!!!谢谢啦!
展开
展开全部
ADC0801为8位的AD,最大值为255,所以只需三位就可以了,我不知道你要直接显示AD转换结果,还是要显示等效电压值,下面的程序直接显示AD结果的。
显示电压的话 (AD采样数据/255)*参考电压=电压值,加上这句代码就可以了。
void AD_convert(int ad_value)
{
int low,mid,high;
high = ad_value/100;//提取百位的值
mid = (ad_value-high*100)/10;//提取十位的值
low = ad_value%10;//提取个位的值
LED_show(low,mid,high);//调用你的数码管显示函数
}
显示电压的话 (AD采样数据/255)*参考电压=电压值,加上这句代码就可以了。
void AD_convert(int ad_value)
{
int low,mid,high;
high = ad_value/100;//提取百位的值
mid = (ad_value-high*100)/10;//提取十位的值
low = ad_value%10;//提取个位的值
LED_show(low,mid,high);//调用你的数码管显示函数
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询