73

帖子

0

TA的资源

一粒金砂(初级)

21
 

楼主真是强

                                 做个记号,下次好好看看
此帖出自stm32/stm8论坛
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

22
 

楼主太强了!!

请问你刚学STM32用的什么开发板?? 能用keil软件么?
一定回复我哦!!!

我会一直关注这个帖子的!!!
此帖出自stm32/stm8论坛
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

23
 

LZ已有硬件触发,不如加个等效采样功能,估计可以到达10M

                                  
此帖出自stm32/stm8论坛
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

24
 

回复楼23 24

我是08年8月开始接触32的,导师对着一块芯片说,看看这块芯片,1M的AD,还带DMA,这么大容量的RAM和FLASH。内部几乎可以采到1万个点了。于是就开始了2个星期的痛苦入门。刚开始是用的万利的板子,网上好像很多例子都是基于这个板子的,可能出来比较早。但是现在看来例子相对较少。软件环境用的是板子带的IAR。

等效采样有听说过,但是没具体研究过。楼上有做过么?能否给些资料的链接。上次我去面试,面试官听到我这个最大能采200K的波形:他说这有什么用这么低。受打击了
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

25
 

不错

                                 谢谢
此帖出自stm32/stm8论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

26
 

taiqiangle

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

27
 

很好!

                                 水平已经相当可以了!
此帖出自stm32/stm8论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

28
 

双通道的问题

一直没搞明白的是如果用STM32的同一个AD(假如ADC1)的两个通道(或更多通道)进行采样,怎么编程序,如果再开一个DMA通道(同时再定义一个AD_Data[XX]数组),那么通过什么样的语句把AD的通道和DMA的通道对应起来的?谢谢



此帖出自stm32/stm8论坛
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

29
 

不错,学习

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

30
 

安安

                                 写的真好。
此帖出自stm32/stm8论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

31
 

希望能找到工作

                                 多学学多研究不怕找不到工作
此帖出自stm32/stm8论坛
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(初级)

32
 

回复双通道问题

下面是我开多通道的代码给你参考下:

void DMA_ADC_Config()
{
      /* DMA channel1 configuration ----------------------------------------------*/
  DMA_DeInit(DMA_Channel1);//复位DMA通道x
  DMA_InitStructure.DMA_PeripheralBaseAddr = ADC_DR_Address;//定义 DMA通道外设基地址=ADC1_DR_Address     源
                                                              //AD采集到的数据存放的寄存器
  DMA_InitStructure.DMA_MemoryBaseAddr = (u32)ADC_RegularConvertedValueTab;//定义DMA通道存储器地址,内存中的数据 目的
  DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;//指定外设为源地址
  DMA_InitStructure.DMA_BufferSize = 4;//定义DMA缓冲区大小4
  DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;//当前外设寄存器地址不变
  DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;//当前存储器地址增加
  DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;//定义外设数据宽度16位
  DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;//定义存储器数据宽度16位
  DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;//DMA通道操作模式位环形缓冲模式
  DMA_InitStructure.DMA_Priority = DMA_Priority_High;//DMA通道优先级高
  DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;//禁止DMA通道存储器到存储器传输
  DMA_Init(DMA_Channel1, &DMA_InitStructure);//初始化DMA通道x
  DMA_Cmd(DMA_Channel1, ENABLE);//使能DMA通道x  
  
}

void ADC1_Channel_config()
{
  /* ADC1 configuration ------------------------------------------------------*/
  ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;//AD转换模式
  ADC_InitStructure.ADC_ScanConvMode = ENABLE;//使能扫描
  ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;//连续转换
  ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;;//有软件控制转换
  ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//数据右对齐
  ADC_InitStructure.ADC_NbrOfChannel = 4;//转换通道为通道4
  ADC_Init(ADC1, &ADC_InitStructure);
  /* ADC1 regular channel14 configuration */
  //ADC1选择信道14|15,音序器等级1,采样时间55.5个周期
  ADC_RegularChannelConfig(ADC1, ADC_Channel_14, 1, ADC_SampleTime_55Cycles5);    
  ADC_RegularChannelConfig(ADC1, ADC_Channel_15, 2, ADC_SampleTime_55Cycles5);
  ADC_RegularChannelConfig(ADC1, ADC_Channel_6, 3, ADC_SampleTime_55Cycles5); 
  ADC_RegularChannelConfig(ADC1, ADC_Channel_4, 4, ADC_SampleTime_55Cycles5);   
}
(这段代码是以前做万用表的时候用的,多次修改,有些注释可能没改过来)
然后在上面定义下数据数组
vu16 ADC_RegularConvertedValueTab[4];
结果4个通道的数据就按次序在这个数组里面了,
具体顺序应该是这样的,先是采集通道14,DMA自动把数据放到数组第一个位置然后DMA地址会加一
所以DMA_InitStructure.DMA_MemoryInc 一定要定义成 DMA_MemoryInc_Enable;也就是递增
然后通道15,依次类推到4次结束后触发一次DMA中断,然后又是通道14
此帖出自stm32/stm8论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

33
 

非常感谢

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

34
 

不错啊

                                 不错啊
此帖出自stm32/stm8论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

35
 

不错,香版,上裤子

                                 毕业设计就该如此去做。
此帖出自stm32/stm8论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

36
 

如果是本科毕业设计

                                 那应该很任意找到工作。
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

37
 

为什么要触发了?

                                 我觉得STM32这部分,不需触发呀,AD用自动开启,也不要定时器启动,利用AD采样的等时性就可以了.采用后把数据传给PC,PC来处理触发沿的问题就可以了.
此帖出自stm32/stm8论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

38
 

请教搂主如何提高STM32 的USB虚拟串口的速度?

 
我使用STM32的虚拟串口与PC机通信,代码都是基于ST提供的Demo.感觉速度只有大约每秒55K字节。想请问在正常情况下,速度应该是多少?如何提高传输速度?

  另外,搂主为何要自行写Windows下的驱动呢?为了提高速度?

Thanks  
 
此帖出自stm32/stm8论坛
 
 
 

回复

56

帖子

0

TA的资源

一粒金砂(初级)

39
 

楼主找工作应该不难啊,能做到这样不错了。

                                 其实可以用LabVIEW来做PC端,这样比较容易些,开发速度要快不少。
此帖出自stm32/stm8论坛
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(中级)

40
 

感觉描述的太复杂~

主要是window的驱动方面。感觉很复杂。
应该套用 框架,有个既定的框架的。USB驱动大同小异啊!那个USBBLUK就是吧!
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表