当前位置: 首页 > news >正文

湖州吴兴建设局网站网页端二维码在哪里

湖州吴兴建设局网站,网页端二维码在哪里,wordpress 简历 插件,ps做图游戏下载网站有哪些如何理解ADC。ADC就是将模拟量转换成数字量的过程,就是转换为计算机所能存储的0和1序列,比如将模拟量转换为一个字节,所以这个字节的大小要能反应模拟量的大小,比如一个0-5V的电压测量量(外部输入电压最小0V,最大为5V&…

        如何理解ADC。ADC就是将模拟量转换成数字量的过程,就是转换为计算机所能存储的0和1序列,比如将模拟量转换为一个字节,所以这个字节的大小要能反应模拟量的大小,比如一个0-5V的电压测量量(外部输入电压最小0V,最大为5V),将0V对应成0000 0000,将5V对应为1111 1111。一个字节能够表示2^8个状态,所以可以将0-5V这个区域分会成2^8个,每个区域对应5/(2^8)V。

        普中科技单片机的ADC模块的电路图如下所示,ADC模块用的是XPT2046 芯片。

 

参考电压

         参考电压值直接决定ADC的输入范围,参考电压可以使用内部参考 电压,也可以从外部直接输入 1V~VCC范围内的参考电压。如何理解参考电压?

以逐次逼近型ADC为例。

 

ADC的时序

 

 

 相关程序

smg.h

#ifndef _smg_H
#define _smg_H#include "public.h"#define SMG_A_DP_PORT	P0	//使用宏定义数码管段码口//定义数码管位选信号控制脚
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;extern u8 gsmg_code[17];void smg_display(u8 dat[],u8 pos);#endif

smg.c

#include "smg.h"//共阴极数码管显示0~F的段码数据
u8 gsmg_code[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};/*******************************************************************************
* 函 数 名       : smg_display
* 函数功能		 : 动态数码管显示
* 输    入       : dat:要显示的数据pos:从左开始第几个位置开始显示,范围1-8
* 输    出    	 : 无
*******************************************************************************/
void smg_display(u8 dat[],u8 pos)
{u8 i=0;u8 pos_temp=pos-1;for(i=pos_temp;i<8;i++){switch(i)//位选{case 0: LSC=1;LSB=1;LSA=1;break;case 1: LSC=1;LSB=1;LSA=0;break;case 2: LSC=1;LSB=0;LSA=1;break;case 3: LSC=1;LSB=0;LSA=0;break;case 4: LSC=0;LSB=1;LSA=1;break;case 5: LSC=0;LSB=1;LSA=0;break;case 6: LSC=0;LSB=0;LSA=1;break;case 7: LSC=0;LSB=0;LSA=0;break;}SMG_A_DP_PORT=dat[i-pos_temp];//传送段选数据delay_10us(100);//延时一段时间,等待显示稳定SMG_A_DP_PORT=0x00;//消音}
}

xpt2046.h

#ifndef _xpt2046_H
#define _xpt2046_H#include "public.h"//管脚定义
sbit DOUT = P3^7;	  //输出
sbit CLK  = P3^6;	  //时钟
sbit DIN  = P3^4;	  //输入
sbit CS   = P3^5;	  //片选//函数声明
u16 xpt2046_read_adc_value(u8 cmd);#endif

xpt2046.c

#include "xpt2046.h"
#include "intrins.h"/*******************************************************************************
* 函 数 名       : xpt2046_wirte_data
* 函数功能		 : XPT2046写数据
* 输    入       : dat:写入的数据
* 输    出    	 : 无
*******************************************************************************/
void xpt2046_wirte_data(u8 dat)
{u8 i;CLK = 0;_nop_();for(i=0;i<8;i++)//循环8次,每次传输一位,共一个字节{DIN = dat >> 7;//先传高位再传低位dat <<= 1;//将低位移到高位CLK = 0;//CLK由低到高产生一个上升沿,从而写入数据_nop_();	CLK = 1;_nop_();}
}/*******************************************************************************
* 函 数 名       : xpt2046_read_data
* 函数功能		 : XPT2046读数据
* 输    入       : 无
* 输    出    	 : XPT2046返回12位数据
*******************************************************************************/
u16	xpt2046_read_data(void)
{u8 i;u16 dat=0;CLK = 0;_nop_();for(i=0;i<12;i++)//循环12次,每次读取一位,大于一个字节数,所以返回值类型是u16{dat <<= 1;CLK = 1;_nop_();CLK = 0; //CLK由高到低产生一个下降沿,从而读取数据_nop_();dat |= DOUT;//先读取高位,再读取低位。	}return dat;	
}/*******************************************************************************
* 函 数 名       : xpt2046_read_adc_value
* 函数功能		 : XPT2046读AD数据
* 输    入       : cmd:指令
* 输    出    	 : XPT2046返回AD值
*******************************************************************************/
u16 xpt2046_read_adc_value(u8 cmd)
{u8 i;u16 adc_value=0;CLK = 0;//先拉低时钟CS  = 0;//使能XPT2046xpt2046_wirte_data(cmd);//发送命令字for(i=6; i>0; i--);//延时等待转换结果CLK = 1;_nop_();CLK = 0;//发送一个时钟,清除BUSY_nop_();adc_value=xpt2046_read_data();CS = 1;//关闭XPT2046return adc_value;
}

主函数

/**************************************************************************************
深圳市普中科技有限公司(PRECHIN 普中)
技术支持:www.prechin.net
PRECHIN普中实验名称:ADC模数转换实验--电位器电压采集
接线说明:	
实验现象:下载程序后,数码管上显示AD模块采集电位器的电压值
注意事项:																				  
***************************************************************************************/
#include "public.h"
#include "smg.h"
#include "xpt2046.h"/*******************************************************************************
* 函 数 名       : main
* 函数功能		 : 主函数
* 输    入       : 无
* 输    出    	 : 无
*******************************************************************************/
void main()
{	u16 adc_value=0;float adc_vol;//ADC电压值u8 adc_buf[3];while(1){				adc_value=xpt2046_read_adc_value(0x94);//测量电位器adc_vol=5.0*adc_value/4096;//将读取的AD值转换为电压adc_value=adc_vol*10;//放大10倍,即保留小数点后一位adc_buf[0]=gsmg_code[adc_value/10]|0x80;adc_buf[1]=gsmg_code[adc_value%10];adc_buf[2]=0x3e;//显示单位Vsmg_display(adc_buf,6);		}		
}

 

http://www.yayakq.cn/news/767494/

相关文章:

  • 农产品网站策划户外网站模板
  • 西宁市网站设计重庆做企业年报在哪个网站做
  • 中国英文政务网站建设免费推广软件哪个好
  • 公司网站模板源码网站发布平台
  • dede 电商网站模板商城购物网站有哪些模块
  • 企业信息公示网站南昌做网站开发的公司
  • 网站建设设计制作包头wordpress主题安装路径
  • 建设常规的网站报价是多少钱香奈儿网站建设策划书
  • 网站和公众号的区别是什么网页设计师制作培训
  • 东莞网站建设最牛google app下载
  • 青海海东平安县建设局网站芜湖做网站建设公司
  • 万网制作网站怎么样男女直接做视频网站
  • 网站排名优化技术flash 学习网站
  • 可以做go分析的网站wordpress下拉
  • 网站开发做前端还是后端微信小程序开发300元
  • 建大型网站需要多少钱长治门户网
  • 网站建设数据库代码百度网盘电脑网页版
  • 设计网站公司地址咨询公司起名
  • 为什么做不了自己的网站杭州 网站外包
  • 网站怎么加链接广安公司网站建设
  • 做poster网站个人网站怎么做详情页
  • 推荐微信网站建设在线视频播放网站建设
  • 微商城设计网站建设抖音开放平台账号能登录抖音吗
  • 网站平台建设的实训报告婚恋网站排名前十名
  • lnmp 网站开发总结视频一页网站怎么做
  • 个人做的网站有什么危险吗国内永久免费域名注册
  • 网站广告怎么赚钱网站建设初期目标
  • 广州微信网站建设平台wordpress怎么加
  • 做 爱 网站视频教程现在做一个网站大概多少钱
  • 怎么给餐饮店做网站做网站的三年规划