当前位置:首页 > 51单片机 > 正文内容

STC单片机内置AD两位小数显示电压值

(一)程序关键语句
#define VCC 500L
//数值后加字母L,表示定义一个长整型,可以表示的最大数值是2的32次方;
//不能使用INT型变量,unsigned int型最大值是65535;
dd =ADC_Get(0);//dd定义为unsigned int型;
vinU=VCC*dd/256;//运算时,采集到的dd数值从0到255,256*500时超范围,会报错;必须加上开头红色语句;
//基准电压是5V时,如果直接用vinU=dd*5/256会因为int型变量,只能取整数1位;
//为了提高测量精度,可以测量值扩大100倍,第一位后显示小数点表示;避免使用小数运算;

方法二:vinU=(unsigned long)dd*500/256 //运算时防止数据溢出,32位;

print(0x86,vinU/100+0x30);//取整数位数字
print(0x87,'.');//显示小数点
print(0x88,vinU0/10+0x30);//显示第一位小数
print(0x89,vinU+0x30);//显示第二位小数

扫描二维码推送至手机访问。

版权声明:本文由智凡单片机c语言入门发布,如需转载请注明出处。

分享给朋友:

相关文章

3*4矩阵键盘简单lcd1602密码锁控制

3*4矩阵键盘简单lcd1602密码锁控制

不好意思啊兄弟只能先把你写到这里了  跟真实的密码锁功能上相差甚远不过应该满足了你的要求还有之前你要求的3*3键盘只有9个数字  但是0~9是十个数字所以键盘我...

一种单片机按键长按短按识别处理方法

一种单片机按键长按短按识别处理方法

本文介绍了一种单片机区别处理按键长按(大于3秒)和短按(小于3秒)的方法,源码来自于他人,仅供学习参考。单片机按键的引脚用WKUP_KD表示,需要事先进行定义;此程序还需要一个延时30毫秒的子程序段d...

STC15系列单片机检测不到,下载不成功

STC15系列单片机检测不到,下载不成功

检测不到单片机存在使用STC15系列的IAP15W4K61S4和IAP15W2K16S2两种型号的单片机时,都出现了STC-ISP下载软件很长时间检测不到单片机的情况百度得到的解决网上百度你经常看到的...

STC自动冷启动下载器的制作

STC自动冷启动下载器的制作

       不知道大家是否发现每一次在STC单片机上下载程序时都需要手动的给单片机重新上电呢?这是因为MCS51单片机设计时对系统内存储空间(现大多是指Fla...

89c51单片机扩展IO口

89c51单片机扩展IO口

首先我们先讲讲为什么要扩展IO口。在我们使用51单片机的时候,有时候会出现IO口不够用的情况。比如键盘!这个时候IO口的资源就十分有限了。按键是我们常用的器件,做某些东西的时候又不能缺少按键。如果一个...

基于51单片机的实时时钟(89c52+DS12c887+LCD1602)

基于51单片机的实时时钟(89c52+DS12c887+LCD1602)

       迷茫了好长时间,不知道自己该学点什么,正值暑假来临,仔细斟酌电子信息工程专业的前景和发展,最终选择好好学习一下单片机,由于之前就学过,所...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。