STC12C5A60S2编程!!会C语言单片机编程的进!!紧急求助。。

我需要用这个单片机编程检测有无微小电压值,用到ADC功能,只将P1.0设为检测口,若有那个小的电压,使P2.0和P2.1强推挽输出高电位.有没有会的高手,麻烦一下给个可以... 我需要用这个单片机编程检测有无微小电压值,用到ADC功能,只将P1.0设为检测口,若有那个小的电压,使P2.0和P2.1强推挽输出高电位.有没有会的高手,麻烦一下给个可以直接用的c程序,回答一下留个名,程序直接发到我邮箱(xuxb_china@qq.com).。麻烦调试好再发,谢谢啦,分不多,还请见谅 展开
 我来答
dsu5566
2012-03-25 · TA获得超过2152个赞
知道大有可为答主
回答量:1761
采纳率:100%
帮助的人:1927万
展开全部
很简单的,启动P1.0 AD转换后,读AD值,若大于0就有电压,
更多追问追答
追问
这个我也知道,不过写不出可以用的程序,也很郁闷
追答
typedef unsigned char BYTE;
typedef unsigned int WORD;
#include "reg51.h"
#include "intrins.h"

/*Declare SFR associated with the ADC */
sfr ADC_CONTR = 0xBC;
sfr ADC_RES = 0xBD;
sfr ADC_LOW2 = 0xBE;
sfr P1ASF = 0x9D;
sfr P2M0 = 0x96;
sfr P2M1 = 0x95;

/*Define ADC operation const for ADC_CONTR*/
#define ADC_POWER 0x80
#define ADC_FLAG 0x10
#define ADC_START 0x08
#define ADC_SPEEDLL 0x00
#define ADC_SPEEDL 0x20
#define ADC_SPEEDH 0x40
#define ADC_SPEEDHH 0x60

//延时
void Delay(WORD n)
{
WORD x;

while (n--)
{
x = 5000;
while (x--);
}
}

//初始AD寄存器
void InitADC()
{
P1ASF = 0xff;
ADC_RES = 0;
ADC_CONTR = ADC_POWER | ADC_SPEEDLL;
Delay(2);
}

//AD转换
BYTE GetADCResult(BYTE ch)
{
ADC_CONTR = ADC_POWER | ADC_SPEEDLL | ch | ADC_START;
_nop_();
_nop_();
_nop_();
_nop_();
while (!(ADC_CONTR & ADC_FLAG));
ADC_CONTR &= ~ADC_FLAG;

return ADC_RES;
}

void main()
{ BYTE temp;
P2M1=0; P2M0=0x03; //P2.0和P2.1强推挽
InitADC();
while (1)
{
temp=GetADCResult(0);//转换P1.0
if(temp>1)
P2|=0x03; //P1.0有电压 P2.0和P2.1输出高
else
P2&=0xFC; //P1.0无电压 P2.0和P2.1输出低
}
}
意法半导体(中国)投资有限公司
2023-06-12 广告
STM32F103是一款高性能的嵌入式芯片,由意法半导体(STMicroelectronics)公司生产。它是STM32系列芯片之一,具有紧凑、低功耗、高性能等特点,被广泛应用于嵌入式系统中。STM32F103的主要特点包括:1. 集成了A... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
百度网友d685796b2
2012-03-25 · TA获得超过103个赞
知道答主
回答量:84
采纳率:0%
帮助的人:64.4万
展开全部
用过,你说的微小电压是多少呢,先设定微小电压值,然后与P1.0检测到的电压相比较,如果满足你说的微小电压就设置P2.0和P2.1为推挽输出 ,并输出高电平
不难,觉得你还是自己先写写看看吧,硬是写不出再问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光公寓2012
2012-03-25 · 超过27用户采纳过TA的回答
知道答主
回答量:181
采纳率:0%
帮助的人:108万
展开全部
帮顶,,,,目前还不会。。。
追问
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式