关于武汉芯景科技有限公司的A/D转换芯片XJ3021开发指南(兼容MCP3021)

一、芯片引脚介绍

1.芯片引脚

2.引脚描述

二、系统结构图

三、时序(IIC通信)

四、程序代码

XJ3021.C

复制代码
/*
 * XJ3021.c
 *
 *  Created on: 2024年8月23日
 *      Author: Administrator
 */
#include "softiic.h"
#include "XJ3021.h"
#include "usart.h"
#include <stdio.h>
#include "tim.h"


//XJ3021的IIC读
uint16_t XJ3021ReadOneByte(void)
{
	  uint8_t buffer0;
	  uint8_t buffer1;
	  uint16_t adc_value;

	  bsp_analog_i2c_start();
	  bsp_analog_i2c_send_byte(0X9B);
	  bsp_analog_i2c_wait_ack();
	  buffer0= bsp_analog_i2c_read_byte();
	  bsp_analog_i2c_ack();
	  buffer1= bsp_analog_i2c_read_byte();
	  bsp_analog_i2c_nack();
	  bsp_analog_i2c_stop();

	  adc_value = ((buffer0 & 0x0F) << 8) | (buffer1 & 0xFC);
	  adc_value = adc_value>>2;

      return adc_value;
}



//打印相互3021的电压
float Voltage=0;
void printf_XJ3021Voltage(void)
{
	Voltage=XJ3021ReadOneByte();
	Voltage = Voltage*(float)3/1024;
	printf("Voltage %f\r\n",  Voltage);
}

XJ3021.H

复制代码
/*
 * XJ3021.h
 *
 *  Created on: 2024年8月23日
 *      Author: Administrator
 */

#ifndef INC_XJ3021_H_
#define INC_XJ3021_H_



uint16_t XJ3021ReadOneByte(void);
void printf_XJ3021Voltage(void);




#endif /* INC_XJ3021_H_ */
相关推荐
事变天下7 小时前
迈瑞的足球之夏:从一次救援到全球守护
大数据·科技
老云讲算力市场7 小时前
智算中心加速迈向超节点时代,奇点算力布局高效算力服务
人工智能·科技
老k一步步来8 小时前
STM32 HAL库CAN通信核心函数详解,参数以及作用
stm32·单片机·嵌入式硬件
gwf2168 小时前
SSD读写速度深度解析:顺序读写vs随机读写、IOPS、延迟,你的硬盘性能到底怎么看?
git·嵌入式硬件·缓存·github·智能硬件
QXWZ_IA8 小时前
RTK外业成果怎么判断能不能用于正式成图?交付标准
人工智能·科技·智能硬件
Freak嵌入式11 小时前
版本混乱 / 依赖缺失?uPyPi:MicroPython 版 PyPI,彻底解决库管理混乱
linux·服务器·数据库·单片机·嵌入式硬件·性能优化·依赖倒置原则
wuyk55512 小时前
77.嵌入式 C 语言中 enum 枚举的工程化实践:告别魔法数字,提升代码可维护性
c语言·开发语言·stm32·单片机·嵌入式硬件
义嘉泰12 小时前
XT25F128F-W Flash芯片全面解析
人工智能·嵌入式硬件·芯片
QH1392923188012 小时前
Keysight N9917B N9918B手持式综合微波分析仪
网络·科技·嵌入式硬件·集成测试·信息与通信