谁能提供个STM32读取某个输入引脚数据的程序,急求 5

刚接触STM32,还不太会编程序,急需一个读取引脚数据的程序,单片机的具体型号是STM32F103RET7,想读取的引脚是42引脚,它接的是一个内置16位AD的传感器输出... 刚接触STM32,还不太会编程序,急需一个读取引脚数据的程序,单片机的具体型号是STM32F103RET7,想读取的引脚是42引脚,它接的是一个内置16位AD的传感器输出,想用串口调试助手在电脑上显示该引脚所接收到的数据
邮箱 1485031667@qq.com
展开
 我来答
joodoo75
2012-11-17 · TA获得超过449个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:91.6万
展开全部
不用自己写程序,
用stm32f10x_adc.c中的函数调用一下就可以了
提醒一下,在调用ADC_Init之前先把42脚配成AN功能。
然后用
AD_value = ADC_GetConversionValue(ADC1);就可以了。
给你一段参考的
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
ADC_InitStructure.ADC_ScanConvMode = DISABLE;
ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
ADC_InitStructure.ADC_NbrOfChannel = 1;
ADC_Init(ADC1, &ADC_InitStructure);
ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_13Cycles5);

/* Configure high and low analog watchdog thresholds */
ADC_AnalogWatchdogThresholdsConfig(ADC1, 0x0fff, 0x0000);
/* Configure channel8 as the single analog watchdog guarded channel */
ADC_AnalogWatchdogSingleChannelConfig(ADC1, ADC_Channel_0);
/* Enable analog watchdog on one regular channel */
ADC_AnalogWatchdogCmd(ADC1, ADC_AnalogWatchdog_SingleRegEnable);

/* Enable ADC1 */
ADC_Cmd(ADC1, ENABLE);

ADC_ResetCalibration(ADC1);
/* Check the end of ADC1 reset calibration register */
while(ADC_GetResetCalibrationStatus(ADC1));

/* Start ADC1 calibaration */
ADC_StartCalibration(ADC1);
/* Check the end of ADC1 calibration */
while(ADC_GetCalibrationStatus(ADC1));
/* Start ADC1 Software Conversion */
ADC_SoftwareStartConvCmd(ADC1, ENABLE);

AD_value = ADC_GetConversionValue(ADC1);
意法半导体(中国)投资有限公司
2023-06-12 广告
STM32F207是一款非常优秀的微控制器芯片,它是ST(意法半导体)最新推出的基于90纳米工艺的STM32F2系列芯片之一。STM32F207芯片内置了丰富的外设接口,包括ADC、DAC、UART、SPI、I2C等,可以轻松实现各种复杂的... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式