单片机实验12:ADC实现电压测量

本文详细介绍了如何使用XPT2046 ADC芯片配合11.0592MHz晶振,在单片机中实现0~6V电压的精确测量,包括写入、读取数据和转换过程,并展示了完整的实验源代码和关键步骤。

ADC实现电压测量,XPT2046芯片可测电压范围为 0 ~ 6V,分辨率为4095
点击了解XPT2046

单片机晶振为11.0592

实验源代码:

  • XPT2046.h
#include <reg52.h>
#include <intrins.h>

#define uint unsigned int
#define uchar unsigned char

sbit DIN = P3^4;		
sbit ADCS = P3^5;
sbit DCLK = P3^6;
sbit DOUT = P3^7;

sbit led2 = P2^2;
sbit led3 = P2^3;
sbit led4 = P2^4;

XPT2046.c

 #include "XPT2046.h"

void WRITE_AD(uchar dat)	 //写入数据函数
{
   
   
	uchar i;
	DCLK = 0;				 
	for(i=0;i<8;i++)
	{
   
   
		DIN = dat >> 7;		 //将dat右移7位赋值给DIN,值得注意的是dat本身并没有变化
		dat <<= 1;			 //将dat左移1位赋值给dat,此时dat本身发生了变化
		DCLK = 0;
		DCLK = 1;
	}	
}

uint READ_AD()				//读取写入的数据	   
{
   
   
	uchar i;
	uint dat=0;
	DCLK = 0;
	for(i=0;i<12;i++)
	{
   
   
		dat <<= 1;			//读取时要先位移
		DCLK = 1;
		DCLK 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值