关于武汉芯景科技有限公司的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_ */
相关推荐
糖糖单片机设计3 小时前
基于单片机的热水器节能控制系统
单片机·嵌入式硬件
数字新视界3 小时前
数字孪生技术赋能智能化转型与创新实践
嵌入式硬件·物联网·系统架构·机房管理·动力与环境监控系统
HQB20264 小时前
屹晶微电子 EG1195|10‑120V/10A+ 外置 MOS 异步降压控制器|ESOP‑8|电动车转换器 / 快充 / 工业电源
嵌入式硬件·硬件工程
不悔哥5 小时前
开源LineageOS:旧手机刷上开源系统
嵌入式硬件·智能手机·开源
服务器硬件项目经理5 小时前
《超节点修仙录》· 第一卷·炼气期【第04话】 超节点 vs 普通服务器——不就是多插了几张卡吗?
运维·服务器·人工智能·嵌入式硬件·深度学习·机器学习
一次调频AGCAVC6 小时前
一次调频系统控制柜的组成及一次调频装置主机功能详述
人工智能·嵌入式硬件
金色光环6 小时前
【DSP学习】C2000_PWM中断程序_笔记
笔记·单片机·学习
智购科技智能售货柜6 小时前
顾客已经关门,视觉售货柜还在处理旧画面:延迟积压怎么查?~YH
python·单片机·嵌入式硬件·物联网·eclipse
糖糖单片机设计6 小时前
基于 STM32 的智能电蚊香控制系统
stm32·单片机·嵌入式硬件
摇滚侠6 小时前
《大模型是怎样跑起来的(轻科技)》硬件篇 阅读笔记
人工智能·笔记·科技