找回密码
 立即注册
查看: 458|回复: 9

ADC采样的电压与内部1.19V比较没有成功,帮忙看看,用8G1K08A的芯片

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-15 22:41:05 | 显示全部楼层 |阅读模式

#include <STC8G.h>
#include "intrins.h"
//引脚定义
sbit LED=P5^4;
sbit IR=P5^5;
sbit RX_PD=P3^2;
sbit OUT=P3^3;
//延时1ms
void Delay1ms(void) //@11.0592MHz
{
unsigned char data i, j;

i = 15;
j = 90;
do
{
	while (--j);
} while (--i);

}

//定义

#define ADCTIM (*(unsigned char volatile xdata *)0xfea8)
typedef unsigned char u8;
typedef unsigned int u16;
typedef unsigned long u32;
u16 Get_ADC10bitResult(u8 channel); //通道 0~15
u16 Bandgap;
//主函数
void main(void)
{
P3M0 = 0x00; //P3为准双向口模式
P3M1 = 0x00;
P5M0 |= 0x30;//P5为推挽输出模式
P5M1 &= ~0x30;

	P3M0 = 0x00;//P3.2口为高阻输入
	P3M1 = 0x04; 
P_SW2 |= 0x80;//ADC的初始化
ADCTIM = 0x3f;                              //设置ADC内部时序
P_SW2 &= 0x7f;
ADCCFG = 0x0f;                              //设置ADC时钟为系统时钟/2/16
ADC_CONTR = 0x82;  //设置P3.2为ADC口      0010                

while (1)
{
	 u16 j;
	  u8  i;
	IR=1;

Delay1ms();
IR=0;
Delay1ms();
Get_ADC10bitResult(15); //读内部基准电压1.19V,读15通道
for(j=0, i=0; i<8; i++)
{
j+= Get_ADC10bitResult(15);
}
Bandgap = j >> 4; //取平均值8次

Get_ADC10bitResult(2); //ADC2采样
for(j=0, i=0; i<8; i++)
{
j+= Get_ADC10bitResult(2);
}
j = j >> 4;
j = (u16)((u32)j * 119 / Bandgap);
if(j>Bandgap) //判断ADC2.0采样电压大于基准电压就开灯
OUT=1;
LED=1;
if(j<Bandgap) //判断ADC2.0采样电压大于基准电压就关灯
OUT=0;
LED=0;
return ;
}

}
u16 Get_ADC10bitResult(u8 channel) // ADC采样
{
ADC_RES = 0;
ADC_RESL = 0;
ADC_CONTR = (ADC_CONTR & 0xF0) | 0x40 | channel;
nop();
nop();
nop();
while (!(ADC_CONTR & 0x20));
ADC_CONTR &= ~0x20;
return (((u16)ADC_RES << 8) | ADC_RESL);
}

发送的红外灯,接收的没有输出

回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

718

主题

1万

回帖

1万

积分

管理员

积分
15632
发表于 2024-12-16 08:36:55 | 显示全部楼层
截图202412160830204846.jpg


截图202412160830589208.jpg


截图202412160831326358.jpg

截图202412160831517930.jpg


截图202412160832281992.jpg


截图202412160833419656.jpg


截图202412160834383455.jpg


截图202412160835141046.jpg


截图202412160835489671.jpg

截图202412160836175577.jpg

截图202412160836527162.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

718

主题

1万

回帖

1万

积分

管理员

积分
15632
发表于 2024-12-16 08:38:29 | 显示全部楼层
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2024-12-16 17:29:34 | 显示全部楼层
请测试“ADC相关程序-STC8G1K08A-8PIN”里的“02-5路ADC转换-BandGap-串口1(P3.1)返回结果-C语言”例子。



/*************        功能说明        **************
用户请先别修改程序, 直接下载"02-5路ADC转换-BandGap-串口1(P3.1)返回结果-C语言"里的"ADC.hex"测试. 下载时选择主频11.0592MHZ。

测试时, 电脑的串口助手设置115200,8,n,1.

本程序演示4路ADC(P3.0 P3.2 P3.3 P5.4 P5.5)和bandgap查询采样,通过串口1(P3.1)发送给上位机,波特率115200,8,n,1.

0~3通道对应P3.0~P3.3, 4通道-->P5.4, 5通道-->P5.5, 15通道为内部1.19V基准电压做输入的ADC值.

初始化时先把要ADC转换的引脚设置为高阻输入.

******************************************/


STC8G系列-ADC相关程序.rar (341.32 KB, 下载次数: 38)


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-16 19:45:32 | 显示全部楼层
梁*** 发表于 2024-12-16 17:29
请测试“ADC相关程序-STC8G1K08A-8PIN”里的“02-5路ADC转换-BandGap-串口1(P3.1)返回结果-C语言”例子。

...

好的
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-16 19:45:59 | 显示全部楼层
神*** 发表于 2024-12-16 08:38
讲解视频 和 C语言代码见下面链接

谢谢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-16 20:05:20 | 显示全部楼层
梁*** 发表于 2024-12-16 17:29
请测试“ADC相关程序-STC8G1K08A-8PIN”里的“02-5路ADC转换-BandGap-串口1(P3.1)返回结果-C语言”例子。

...

不知道怎么测试,怎么没有这些设置,看看能否截个图,参考一下啊
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-16 20:16:29 | 显示全部楼层
梁*** 发表于 2024-12-16 17:29
请测试“ADC相关程序-STC8G1K08A-8PIN”里的“02-5路ADC转换-BandGap-串口1(P3.1)返回结果-C语言”例子。

...

这样的吗
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-12-06 08:15:07
已绑定手机

12

主题

22

回帖

129

积分

注册会员

积分
129
发表于 2024-12-16 20:16:45 | 显示全部楼层

image.png

点评

就是这样测试,你的供电电压是3.3V。  详情 回复 发表于 2024-12-16 21:23
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2024-12-16 21:23:49 | 显示全部楼层

就是这样测试,你的供电电压是3.3V。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-3 03:09 , Processed in 0.137943 second(s), 110 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表