DeviceDriver\StdPeriph_Driver\src\stm32f10x_adc.c 裡面有限制 0x4 我用 ADC_InjectedSequencerLengthConfig(ADC1,4); 4個ADC時 都正常 這樣可4個 adcv1i=ADC1->JDR1; adcv2i=ADC1->JDR2; adcv3i=ADC1->JDR3; 這樣也可 adcv1i=ADC_GetInjectedConversionValue(ADC1, ADC_InjectedChannel_1); adcv2i=ADC_GetInjectedConversionValue(ADC1, ADC_InjectedChannel_2); adcv3i=ADC_GetInjectedConversionValue(ADC1, ADC_InjectedChannel_3); 無法擴充 加到6個 我要6個ADC讀 6個不同電壓值 試過 修改 增加 //__IO uint32_t JOFR5; // __IO uint32_t JOFR6; // __IO uint32_t JDR5; // __IO uint32_t JDR6; \DeviceDriver\Include\stm32f10x.h /**
typedef struct { IO uint32_t SR; __IO uint32_t CR1; IO uint32_t CR2; IO uint32_t SMPR1; __IO uint32_t SMPR2; IO uint32_t JOFR1; IO uint32_t JOFR2; __IO uint32_t JOFR3; IO uint32_t JOFR4; //IO uint32_t JOFR5; // __IO uint32_t JOFR6; IO uint32_t HTR; IO uint32_t LTR; __IO uint32_t SQR1; IO uint32_t SQR2; IO uint32_t SQR3; __IO uint32_t JSQR; IO uint32_t JDR1; IO uint32_t JDR2; __IO uint32_t JDR3; IO uint32_t JDR4; // IO uint32_t JDR5; // __IO uint32_t JDR6; IO uint32_t DR; } ADC_TypeDef; |
STM32F103RCT6 马来西亚丝印,程序无法与PLC通信,请问是怎么回事,求解答
L9663驱动开发
用stm32cubeide上传串口通信代码之后,st-link红灯一直亮,再想下载的时候显示Target no device found
stm32f103USART2无法收发信息
请问为什么自己加了stdio.h,sprintf还是用不了?
Error in final launch sequence: Failed to execute MI command: target remote localhost:61234
STM32f1内存映射问题
运行一段时间后“死机”,再深入观察,看到定时器4中断服务程序不再执行,看了《Cortex-M3权威指南(中文)》仍无法定位原因?
FLASH的地址怎么选择呢?
stm32f103ze完整电路原理图下载。
若是要6個ADC 可否指導個方向??
有點明白了
若不用DMA 可否單個 單個通道 讀取?
官網有無合適的範例? 或是 關鍵指令 可以搜索的?
目前还没看到有不用DMA的官方范例。
用DMA是最便利最普遍的方式。 而用中断或查询的方式会非常消耗资源,影响其他代码运行。
所以目前看到官方做的范例都是用DMA传递结果的。
楼主可以参照着用一下的。