ADC了,STC151K16PWM的ADC是1个10位的,有8个通道,我偶们这个小时钟,只用到了三路AD,分别是P1.5,P1.6,P1.7,其中,P1.5引脚是测电池电压的,P1.6是测温度的,P1.7是测光线强弱的。我们拿ADC5来举例说明下,ADC的配置步骤。
在使用ADC之前,首先第一步要配置IO口为高阻输入,也就是电流既不能流入也不能流出,配置如下:
第二是对ADC进行初始化,设置模拟口位
因为我们的要求不高,进行测试的时候,ADC转换设置540个时钟就可以了,也就是完成一次ADC转换,需要540个时钟的时间才可以。
我们是在用中断的方式获得ADC的结果,并保存到temp里。
但是我们读取到的数值是一个数字量的离散值,还需要我们根据转换公式来进行换算下,这个公式在STC15W系列的数据手册上有,来看下:
因为我们的参考电压是3.3V,用的是10位的分辨率,所以选择第二个公式,得到下面的结果,*2是因为电阻分压,采集的电压只有原来的一半。
经过我们编译下载后,下载到目标板上,可以看到显示电压:
ADC测试的全部程序已上传分享,包括中断和查询方式https://pan.baidu.com/s/1qYxC1ZI
关键字:单片机 STC15W系列 ADC配置
引用地址:
单片机学习札记之7 STC15W系列的ADC配置
推荐阅读最新更新时间:2024-11-09 21:18
基于单片机的智能测试系统的设计和应用范围
1、引言 随着电子、电器类产品在社会生活中的普及,国内众多中小企业也纷纷开始自行研制,生产此类产品以满足市场的需求,但由于中小企业人力、物力的局限,往往将主要经历放在了产品的生产上,而对于产品的出厂检测却不够完善,造成产品返修率较高的局面,从实际情况来看,造成产生返修的故障中很大一部分是能够在出厂检测时被发现的,但是由于目前国内的中小企业大部分依靠人工借助部分仪器,仪表来检测,使得检测效率低、测试面不广,存在错检,误检等情况。 智能测试系统的引入可以很好地解决此类矛盾,帮助企业提高产品检测的效率,下面将以一款麻将机主机板的智能测试系统为例,全面阐述设计原理。 2、SST89E58RD2特性介绍 SST87E58RD2是一款
[单片机]
海尔MCU生存之路回顾:与微芯打官司多年
在如今懒人横行的世界里,诸如刷头会自动旋转的电动牙刷、自动洗牌的麻将桌越来越受欢迎。这些看似不起眼的“微电器”产品,都需要一个小小的内置芯片才能工作,这个芯片的学名叫MCU(俗称单片机)。 海尔“钉子”复活:盈利、专利攻坚战新打法 过去,MCU可以应用在家电、智能电表、工业控制、汽车等领域,但是,近年来其应用领域越来越宽泛,新的应用层出不穷,“有些我都不知道该如何把它们归类。”上海海尔集成电路总裁兼CEO张晓诗告诉《中国企业家》。 考虑到中国市场本身的宽广,这是一个看上去生机勃勃、充满机会的行业,但如果你准备投资其中,却必须有足够的耐心和毅力。张晓诗所领导的海尔集成电路公司就是一个活生生的案例,在这一领域创业13年,亏损期就长
[单片机]
PIC单片机的浮点数及其与十进制数之间的相互转换
在我们设计的仪表中采用PIC系列单片机,碰到了浮点数的运算问题,查阅其有关资料发现,其浮点数的格式及其与十进制数之间的转换,与我们常用的MCS-51单片机所提供的三字节、四字节浮点数完全不同,本文将说明其浮点数的格式及其与十进制数之间的转换和程序设计步骤。 1 浮点数的格式 Microchip公司单片机所采用的浮点数格式是IEEE-754标准的变异型。32位浮点数格式为: 其中:×表示一位二进制数0或1;eb 为指数的偏差;S为浮点数的符号位,S=0为正数,S=1为负数;小数点“·”在符号位S的右边;BY0 BY1 BY2为尾数的小数部分。 应特别注意: ⑴ 浮点数隐含其整数部分为1。 ⑵ 十进制数0 的浮点数
[单片机]
复位电路的几种设计
复位源是导致单片机内部复位操作的源泉,大致可分为七种:上电复位(POR)﹑人工复位(MRST)﹑电源欠电压复位(LVR)﹑看门狗复位(WDR)﹑软件复位(SWR)﹑软硬件复位(SHR)﹑和非法地址复位(IAR)。 一﹑上电复位电路 上电复位的实质是上电延时复位,也就是在上电延时期间把CPU锁定在复位状态上,就是为了弥补由于电源滤波电容存在使单片机电源由低到高逐渐上升的时间。如下图示就是利用RC支路的充电时间而形成的常用的上电复位电路。 在每次单片机断电之后,应使延时电容C上的电荷立刻放掉,以便重新作好延时准备,为随后可能在很短时间内再次加电面作好准备。否则,在断电后C内还没有充分放电的情况下,如果很快又加电,RC支路就失去了
[单片机]
二进制除法运算(义隆单片机)
多字节二进制除法 被除数为3 个字节,在0x20、0x21、0x22 单元中,0x22.7 为最高位,0x20.0 为最低位。 除数为2 个字节,在0x30、0x31 中。 算法:EM78 单片机 没有除法指令,而且本例中除法为多字节除法,可采用如下算法。 将被除数扩充一个字节0X23,0X23 清0。被除数左移1 位,0X23、0X22 中数据减去0X31、0X30 中数据,够减则减且0X20.0 置1,减出结果存入0X23、0X22;不够减则0X23、0X22 保持不变,0X20.0 清0。然后被除数再左移1 位,重复上述过程。共循环16 次,最后0X23、0X22 中得相减余数,0X21、0X20 中得商。注意,若被除数左移
[单片机]
基于STM32单片机利用ST库函数设置Systick
Systick是STM32中特有的系统时钟SysTIck有两个功能:1.可以产生精确延时;2.可以提供给系统一个单独的时钟节拍。一般延时程序: DELAY(N) { for( i=0 ; i《=x ; i++ ) ; } 对于STM32系列的微处理器中,执行一条指令只需要几十ns,进行for循环时,要实现N毫秒延时,那么x的意义非常大,而且由于系统频率的宽广,很难计算出延时N毫秒的精确值,那么在一些高速电路中,是不允许的,容易出现问题,很难查找出来。尤其在液晶驱动中,延时要求非常精确。针对STM32的处理器中,需要重新设计一个方法实现该功能,来代替DELAY(N)延时; cortex-m3中包含了一个SysTI
[单片机]
基于AVR单片机的无线远程数据采集终端的研制与开发
一、引言 随着城市供水规模扩大,城市管网不断增大,厦门自来水公司原有遥测系统难以适应生产调度需求。要求有一套可靠、快速的调度遥测系统,综合国内RTU(Remote Terminal Unit 远程测控终端)的发展状况及公司的具体情况,厦门自来水公司独立研制开发了一套新的基于AVR单片机及专用MODEM芯片的MTU(Master Terminal Unit中心调度机)、RTU无线电遥测系统。系统的整体结构如图1,其中粗黑框部分为系统的核心MTU、RTU。 分散地分布在全市的管网监测点上的远端RTU(系统可带256个RTU)采集数据,进行数据处理后通过无线电台向中心调度端发送数据,中心调度端接收到数据后进行数据处理,数据存储,并送
[单片机]
51单片机汇编语言:位操作指令有哪些?
数据 位传送指令 MOV C, bit ;bit 可直接寻址位 C←(bit) MOV bit,C ;C 进位位 (bit) ← C 位变量修改指令 CLR C ; 将C=0 CLR bit CPL C ; 将C求反再存入C CPL bit ; 将bit求反再存入bit SETB C ; 将C=1 SETB bit ; (bit) ← 1 位变量逻辑指令 ANL C, bit ANL C, bit ORL C, bit ORL C, bit
[单片机]