历史上的今天
返回首页

历史上的今天

今天是:2024年08月27日(星期二)

正在发生

2021年08月27日 | STM32 ADC学习

2021-08-27 来源:eefocus

12位ADC是一种逐次逼近型模拟数字数字转换器。它有多达18个通道,可测量16个外部和2个内部信号源。

 

ADC的输入时钟不得超过14MHZ,它是由PCLK2经分频产生。

 

如果被ADC转换的模拟电压低于低阀值或高于高阀值,AWD模拟看门狗状态位被设置。

ADC通常要与DMA一起使用 这里只是简单的用库配置ADC 不断扫描来实现ADC的应用。

首先配置GPIO与ADC的时钟:

ADC_InitTypeDef  ADC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);

GPIO_InitStructure.GPIO_Pin  =GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_AIN;
GPIO_Init(GPIOB,&GPIO_InitStructure); //默认速度为两兆

配置ADC的运行:

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_9, 1,ADC_SampleTime_1Cycles5); //通道X,采样时间为1.5周期,1代表规则通道第1个这个1是啥意思我不太清楚只有是1的时候我的ADC才正常。
ADC_Cmd  (ADC1,ENABLE);             //使能或者失能指定的ADC
ADC_SoftwareStartConvCmd(ADC1,ENABLE);//使能或者失能指定的ADC的软件转换启动功能

1
这里我用的是ADC1的9通道 PB1引脚。

也用一些默认的配置函数同GPIO 的一样例如: ADC_StructInit

ADC_InitTypeDef structureADC_InitTypeDef定义于文件“stm32f10x_adc.h”:

typedef struct

{

u32 ADC_Mode; FunctionalState ADC_ScanConvMode; FunctionalStateADC_ContinuousConvMode; u32 ADC_ExternalTrigConv; u32ADC_DataAlign; u8 ADC_NbrOfChannel;

} ADC_InitTypeDef


注意:为了能够正确地配置每一个ADC通道,用户在调用ADC_Init()之后,必须调用ADC_ChannelConfig()来配置每个所使用通道的转换次序和采样时间。


然后就是不停的读;

u16 TestAdc(void)
{
u16 adc;
while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC)==RESET); //检查制定ADC标志位置1与否 ADC_FLAG_EOC 转换结束标志位
adc=ADC_GetConversionValue(ADC1);

returnadc;//返回最近一次ADCx规则组的转换结果
}


这个程序的8位单片机风格很重,真正的ADC一定要放在DMA或是中断之中。

推荐阅读

史海拾趣

Comtronic Gmbh-Verbindungstechnik公司的发展小趣事

由于Comtronic Gmbh-Verbindungstechnik公司并非一个公众知名度特别高的公司,我无法提供该公司具体的5个发展起来的相关故事。不过,我可以为您提供一种通用的框架或方法,用以构建这类故事,您可以根据这个框架结合公司的实际情况进行创作。


Comtronic Gmbh-Verbindungstechnik公司发展故事框架

  1. 初创时期的技术突破
    • 描述公司创立初期,如何凭借某项关键技术或产品,在电子连接技术市场上站稳脚跟。
    • 强调创始人的远见卓识,以及对技术的执着追求。
    • 提及公司如何通过不断研发和优化,逐渐获得行业内的认可。
  2. 市场拓展与国际合作
    • 讲述公司如何逐步扩大市场份额,从国内市场走向国际市场。
    • 提及与国际知名企业或机构的合作,共同研发新产品或技术。
    • 描述公司如何通过参展、设立海外分公司等方式,提升品牌影响力。
  3. 创新引领与产业升级
    • 强调公司在电子连接技术领域的持续创新,推出了一系列具有里程碑意义的产品。
    • 描述这些创新如何推动整个电子行业的产业升级和技术进步。
    • 提及公司如何积极应对行业变革,不断调整战略和业务模式。
  4. 品质管理与客户信赖
    • 讲述公司如何注重产品质量和客户服务,赢得了客户的信赖和好评。
    • 强调公司如何通过严格的质量管理体系和售后服务体系,确保产品的稳定性和可靠性。
    • 提及客户对公司的认可和支持,以及由此带来的业务增长和市场份额的提升。
  5. 社会责任与可持续发展
    • 描述公司在发展过程中如何注重履行社会责任,积极参与公益事业。
    • 提及公司在环保、节能减排等方面的努力和成果。
    • 强调公司如何通过可持续发展战略,实现经济效益和社会效益的双赢。

您可以根据这些框架,结合Comtronic Gmbh-Verbindungstechnik公司的实际情况和公开资料,编写具体的发展故事。请注意,由于我无法获取该公司的具体细节,因此建议您在编写故事时务必保持客观和中立,避免涉及未经证实的信息或主观评价。

广州基安彼(GMB)公司的发展小趣事

机顶盒,全称为数字视频变换盒,是现代家庭娱乐中不可或缺的重要设备。从广义上讲,机顶盒是指任何能与电视机连接的网络终端设备,它不仅是传统电视信号的接收与转换装置,更是连接电视与互联网的桥梁。

机顶盒的核心功能在于接收并处理来自各种传输介质的数字信号,包括有线电视、卫星广播、地面广播以及宽带网络等,然后将这些信号转换成电视机能够识别的视频和音频格式。这一过程涉及信号的接收、解码和显示三大环节,确保了用户能够享受到高清乃至超高清的电视节目。

随着技术的不断进步,机顶盒的功能日益丰富。除了基本的电视播放功能外,现代机顶盒还具备了网络交互能力,支持在线购物、浏览网页、观看网络视频、玩游戏等多种应用。此外,一些先进的机顶盒还集成了人工智能技术,实现了语音助手、智能推荐等便捷功能,极大地提升了用户体验。

总的来说,机顶盒作为家庭娱乐的重要组成部分,不仅丰富了人们的观看选择,还通过其强大的网络交互能力,为用户提供了更为广泛的内容和娱乐体验。随着技术的不断升级和市场需求的不断变化,机顶盒的未来发展将更加值得期待。

海芯科技(AVIA)公司的发展小趣事

海芯科技自创立以来,一直秉持着创新和技术的核心理念。在公司的初期阶段,创始人凭借其丰富的行业经验和敏锐的市场洞察力,成功吸引了一批技术精湛、充满激情的团队成员。这些成员在各自的领域里都有深厚的背景和出色的能力,他们共同构成了海芯科技的核心研发团队。在公司的发展初期,这支团队便通过不断地技术创新和研发,为公司后续的发展奠定了坚实的基础。

Data Device Corporation公司的发展小趣事

为了进一步扩大市场份额,DDC开始积极开拓国际市场。通过参加国际展会、与海外客户建立合作关系等方式,DDC逐渐在国际市场上树立了良好的品牌形象。同时,DDC还针对不同国家和地区的市场需求,推出了定制化的产品解决方案。这些举措使得DDC在国际市场上的影响力逐渐增强,为公司的发展注入了新的动力。

Ferroxcube公司的发展小趣事

随着全球环保意识的日益增强,电子行业也开始面临着越来越严格的环保要求。Ferroxcube公司作为行业领军企业,积极响应环保号召,开始研发更加环保的磁性元件。

经过长时间的研发和试验,公司成功推出了一款采用环保材料制成的新型磁芯。这款磁芯不仅性能优异,而且在使用寿命结束后可以方便地进行回收再利用,大大降低了对环境的污染。

这一创新产品一经推出,就受到了市场的热烈欢迎。许多环保意识强烈的客户纷纷选择使用Ferroxcube的环保磁芯,以支持绿色环保事业。这也使得Ferroxcube在环保领域的声誉大大提升,为公司赢得了更多的市场份额和客户认可。

Fremont_Micro_Devices_USA公司的发展小趣事

在21世纪初,随着电子行业的飞速发展,对于高性能磁性元件的需求也日益增长。Ferroxcube公司,作为世界第二大磁性元件生产商,凭借其卓越的技术和产品质量,迅速在市场上占据了一席之地。公司不断投入研发,推出了一系列创新的磁芯和磁环产品,深受客户好评。

在一次重要的行业展会上,Ferroxcube展示了一款新型的高性能磁芯,其优越的性能和稳定性吸引了众多行业内人士的关注。一家知名的电源制造商对这款产品表现出了浓厚的兴趣,并表达了合作的意愿。经过几轮深入的洽谈,双方达成了战略合作协议,Ferroxcube的磁芯成为了这家电源制造商的首选元件。

这一合作不仅为Ferroxcube带来了大量的订单,还提升了公司在行业内的知名度和影响力。公司借此机会加大了研发投入,进一步巩固了其在磁性元件领域的领先地位。

问答坊 | AI 解惑

嵌入式开发站点集锦

国内有关嵌入式开发的论坛 电子产品世界的论坛[2004年09月30日] http://bbs.edw.com.cn/index.asp 恒颐高科论坛[2004年09月30日] http://www.hyesco.com/forum/index.asp 国内站点 华恒公司的主页,里面有很多的相关资料,有待大家去发现 http://ww ...…

查看全部问答>

介绍一种新型“数字温湿度传感器”

这是采用双线串行数字接口的温湿度传感器,与单片机接口非常方便,时序也很简单。 测量的温度/湿度精度很高。我们使用以后觉得很好用,所以,介绍给大家。 特点如下: 相对湿度和温度测量 _ 兼有露点 _ 全标定输出,无需标定即可互换使用 ...…

查看全部问答>

EEWORLD平台需要大家共同建设,单靠几个人很难做好(一段关于芯币制度的对话)

以下是一段与EEWORLD网友关于芯币制的对话,从中更为深切地感受到EEWORLD的发展靠大家: lian为EEWORLD论坛单片机板块版主njlianjian,单片机培训的核心人物。 lian说: 论坛下载能不能取消掉芯币啊       因为如果我想下载 ...…

查看全部问答>

wince 打2008年的补丁出错

wince打了2008年的补丁,怎么连基本的sysgen都出错呢? 错误提示 tbtcore无法nmake,不知道有谁碰到过这种情况,不知道打2007年的补丁能不能正常编译通过,不过现在微软网站不提供2007年的补丁了,那位朋友有,能共享一下。。。。。。…

查看全部问答>

?哪里有Wince5.0 Pocket PC SDK

微软下载中心验证我的操作系统不是正版下不下来,请哪为高手帮忙?急需非常感谢!!!!…

查看全部问答>

各位手上有什么比较好用的bootloader吗?要求可以将nk.bin文件下载到内存中运行。

有的话给我发推荐一份啊,如果有时间的话麻烦给我发一份。 我的邮箱cy757#21cn.com(#改为@)…

查看全部问答>

大整数的转换问题

如何实现 大整数 999999999999 与 0xXX 0xXX 的十六进制数组 之间的互换? 请高手们指教~…

查看全部问答>

如何对付SMT的上锡不良

  波峰面:波的表面均被一层氧化皮覆盖﹐它在沿焊料波的整个长度方向上几乎都保持静态﹐在波峰焊接过程中﹐PCB接触到锡波的前沿表面﹐氧化皮破裂﹐PCB前面的锡波无皲褶地被推向前进﹐这说明整个氧化皮与PCB以同样的速度移动波峰焊机。  焊点成 ...…

查看全部问答>

STM8S有相应的低电压版本的吗?

有个项目用了STM8S105,电池供电(3节镍氢),系统中带DC-DC给功放供电,当DC-DC启动时或输出功率较大时,经常引起MCU复位。 STM8S有没有相应的低电压版本(即管脚,软件都一样,只是工作电压不同的)?…

查看全部问答>

STM32rtc有电池,确认起振后是不是就后顾无忧了?

                                 我的问题是如果我有外部电池给RTC供电,只要在厂测试RTC已经工作了后,只要电池有电就不会出现晶振不起振的情况吗 ...…

查看全部问答>