elike

  • 2019-10-10
  • 回复了主题帖: NUCLEO-G431RB测评->COMP

    不好意思,最后一图弄错了,在这里

  • 发表了主题帖: NUCLEO-G431RB测评->COMP

    NUCLEO-G431RB测评 COMP 文档描述 整个芯片内嵌7个极速的模拟比较器,每一个的端口都可以直接配置成以下三种输入方式:A.I/O 引脚。B. DAC的输出口。C. 内部的参考电压。如下图所示。 从datasheet中可知,对于50pF的电容负载,传播延时仅有30ns左右,的确比较快。 静态电流还是比较低的 其中BRG_EN是用来控制输入端接入VREFINT、3/4VREFINT、1/2VREFINT或1/4VREFINT。可以很方便的用来检测一些电压,实现一些外部控制。 需要注意的是,每一个COMP的输入口的配置需要遵循以下表格 实例程序 ****\NUCLEO_G4\STM32Cube_FW_G4_V1.1.0\Projects\NUCLEO-G431RB\Examples\COMP\COMP_CompareGpioVsDacInt_OutputGpio 利用DAC输出锯齿波,与外部输入电压比较,输出不同占空比的方波。 连上示波器和DC电源。 输入电压为1.5V时,输出如下 当输入电压为2.5V时,输出情况如下,明显看出占空比的变化。 当输入电压为0.5V时,输出情况如下 此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-10-08
  • 回复了主题帖: NUCLEO-G431RB测评->OPAMP

    bigbat 发表于 2019-10-8 09:52 请教楼主:你的figure 174的图是什么资料里的?
    之前申请测评界面的文档http://bbs.eeworld.com.cn/data/attachment/elecplay/upload/file/20190822/1566433911329292.pdf

  • 2019-10-07
  • 发表了主题帖: NUCLEO-G431RB测评->OPAMP

    NUCLEO-G431RB测评 OPAMP 文档描述 整个芯片包含有6个2输入单输出的运算放大器,这些运放都可以配置成以下几种状态:电压跟随器,PGA:非反向(X2~X64)、反向(-X1~-X63)。而且运放的输入端可以配置成与DAC相连,输出端可以配置成与ADC相连。 以下只用到OPAMP3,所以直接看OPAMP3的接口描述 从中我们可知,如果用OPAMP3,它的输入输出只能固定在以上描述的几个端口。 实例程序: 运放的配置如下,我们将运放配置成非反向的PGA模式,初始增益可设置为2。 hopamp3.Instance = OPAMP3; hopamp3.Init.PowerMode = OPAMP_POWERMODE_NORMAL; hopamp3.Init.Mode = OPAMP_PGA_MODE; hopamp3.Init.NonInvertingInput = OPAMP_NONINVERTINGINPUT_IO2; hopamp3.Init.InternalOutput = DISABLE; hopamp3.Init.TimerControlledMuxmode = OPAMP_TIMERCONTROLLEDMUXMODE_DISABLE; hopamp3.Init.PgaConnect = OPAMP_PGA_CONNECT_INVERTINGINPUT_NO; hopamp3.Init.PgaGain = OPAMP_PGA_GAIN_2_OR_MINUS_1; hopamp3.Init.UserTrimming = OPAMP_TRIMMING_FACTORY; 并且由DAC产生一个正弦波,并把这个正弦波输出连接到运放的输入端,直接通过示波器查看输出端的情况。 这里提一下:压缩包中自带的实例程序中的README文档有错误,按程序中来看,运放配置的输入端应该是PA1,但是README中,却说是PB0,所以输入接口应该是CN7:30脚. /**OPAMP3 GPIO Configuration PA1 ------> OPAMP3_VINP PB1 ------> OPAMP3_VOUT */ HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1); HAL_GPIO_DeInit(GPIOB, GPIO_PIN_1); 最后的输出结果,如下所示, 按下按钮,可以改变增益,由原来的的2X到4X。结果如下 最后做FFT分析频谱,可知放大倍数为2.036 而对于4X的来说,则实际倍数为3.97 此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-10-06
  • 发表了主题帖: NUCLEO-G431RB测评->ADC(过采样)

    NUCLEO-G431RB测评 ADC(过采样) 文档描述 按照文档中描述,此芯片中的过采样是通过average每一次采样的值来实现较高的SNR,可达16bit。计算公式如下: 其中N代表过采样率:2~256,M则是取平均,而在实际中除法是通过右移来实现的,右移两位就是除以4。在电路中,整个原始数据是存储在20bit的寄存器上,所以一般情况下,如果想要得到16bit的精度,可以有以下几种办法:A.直接取值:N=32,右移5位;N=64,右移6位等。B.通过舍去最后4位:N=32,右移1位,N=64,右移2位,或者直接利用上面的公式计算,对应的表格如下: 注意:结束转换位标志EOC只会在每进行N次过采样之后才有效。在过采样模式下,不支持offset。 如果采用OSR=64,右移两位,实际的结果中最后四位为小数。 hadc1.Instance = ADC1; hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV2; hadc1.Init.Resolution = ADC_RESOLUTION_12B; //12,10,8,6 bit hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; hadc1.Init.GainCompensation = 0; hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE; hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; hadc1.Init.LowPowerAutoWait = DISABLE; hadc1.Init.ContinuousConvMode = ENABLE; hadc1.Init.NbrOfConversion = 1; hadc1.Init.DiscontinuousConvMode = DISABLE; hadc1.Init.ExternalTrigConv = ADC_EXTERNALTRIG_T1_TRGO; hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_RISING; hadc1.Init.DMAContinuousRequests = DISABLE; hadc1.Init.Overrun = ADC_OVR_DATA_OVERWRITTEN; hadc1.Init.OversamplingMode = ENABLE; hadc1.Init.Oversampling.Ratio = ADC_OVERSAMPLING_RATIO_64; hadc1.Init.Oversampling.RightBitShift = ADC_RIGHTBITSHIFT_2; hadc1.Init.Oversampling.TriggeredMode = ADC_TRIGGEREDMODE_SINGLE_TRIGGER; hadc1.Init.Oversampling.OversamplingStopReset = ADC_REGOVERSAMPLING_CONTINUED_MODE; if (HAL_ADC_Init(&hadc1) != HAL_OK) { Error_Handler(); } /** Configure the ADC multi-mode */ multimode.Mode = ADC_MODE_INDEPENDENT; if (HAL_ADCEx_MultiModeConfigChannel(&hadc1, &multimode) != HAL_OK) { Error_Handler(); } /** Configure Analog WatchDog 1 */ AnalogWDGConfig.Channel = ADC_CHANNEL_1; if (HAL_ADC_AnalogWDGConfig(&hadc1, &AnalogWDGConfig) != HAL_OK) { Error_Handler(); } /** Configure Regular Channel */ sConfig.Channel = ADC_CHANNEL_6; sConfig.Rank = ADC_REGULAR_RANK_1; sConfig.SamplingTime = ADC_SAMPLETIME_640CYCLES_5; sConfig.SingleDiff = ADC_SINGLE_ENDED; sConfig.OffsetNumber = ADC_OFFSET_NONE; sConfig.Offset = 0; 通过终端窗口观察可知,每次RESET后,再开始电压的dc值,就会与前一次的差别大概在3以内,而且如果通过RESET重置后,开始的dc值,也会同以上类似。 由以上结果和之前的没有过采样的结果比较,可知由于过采样的加入,使得数据的精度提高,如果电压固定的话,基本不会由于采样时间的差别而导致结果的差别,使得结果更加可靠,可以很明显地感觉到精度的提升。   此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 发表了日志: NUCLEO-G431RB测评->ADC(过采样)

  • 2019-10-04
  • 发表了主题帖: NUCLEO-G431RB测评->ADC基本配置(无过采样)

    本帖最后由 elike 于 2019-10-4 22:19 编辑 NUCLEO-G431RB测评 ADC基本配置(无过采样) 文档描述 基本内容:芯片内部有5个ADC,每个ADC都是12bit的SAR-ADC,通过设置watchdog features, 可以检测外部电压是否超限,文档中的16bit ADC是通过硬件过采样技术实现的,同时支持低功耗模式。 特性:采样时间可控,自动校准,过采样率可在2~256之间可调,支持增益补偿和offset补偿,内部的运放可直接输出到ADC。 ADC外围框图 以下实例只会用到ADC1,所以下图只是列出ADC1的外接端口连接配置简图:   ADC的时钟配置图   实例1分析: 以实例中offset 补偿为例,通过设置不同的offset值,使得检测电压的范围能更好地控制。 实例中的配置如下:为了方便显示,在原来的代码里加入UART部分,使得ADC输出的数据能在终端显示。 引脚配置: /**ADC1 GPIO Configuration PC0 ------> ADC1_IN6 */ GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); /**LPUART1 GPIO Configuration PA2 ------> LPUART1_TX PA3 ------> LPUART1_RX */ GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_PULLUP; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Alternate = GPIO_AF12_LPUART1; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);   ADC的基本硬件配置如下: hadc1.Instance = ADC1; hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV2; hadc1.Init.Resolution = ADC_RESOLUTION_12B; hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; hadc1.Init.GainCompensation = 0; hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE; hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; hadc1.Init.LowPowerAutoWait = DISABLE; hadc1.Init.ContinuousConvMode = DISABLE; hadc1.Init.NbrOfConversion = 1; hadc1.Init.DiscontinuousConvMode = DISABLE; hadc1.Init.ExternalTrigConv = ADC_EXTERNALTRIG_T1_TRGO; hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_RISING; hadc1.Init.DMAContinuousRequests = ENABLE; hadc1.Init.Overrun = ADC_OVR_DATA_OVERWRITTEN; hadc1.Init.OversamplingMode = DISABLE; multimode.Mode = ADC_MODE_INDEPENDENT; AnalogWDGConfig.Channel = ADC_CHANNEL_1; sConfig.Channel = ADC_CHANNEL_6; sConfig.Rank = ADC_REGULAR_RANK_1; sConfig.SamplingTime = ADC_SAMPLETIME_640CYCLES_5; sConfig.SingleDiff = ADC_SINGLE_ENDED; sConfig.OffsetNumber = ADC_OFFSET_NONE; sConfig.Offset = 0; 采用ADC1, 12bit的模式,采样时间为640.5个ADC的时钟周期(ADC的时钟周期计算这里就不详述,自行查看上一篇文章),没有加硬件过采样。 At startup, offset is disabled, ADC operates normally. Upon each press on User push-button, the offset configuration changes to next one in list: Configuration #1: Offset enabled, sign is negative & saturation disabled                   Translation operated:    0V .. 3,3V  => -2048 .. 2047 Configuration #2: Offset enabled, sign is positive & saturation disabled                   Translation operated:    0V .. 3,3V  =>  2048 .. 6143 Configuration #3: Offset enabled, sign is negative & saturation enabled                   Translation operated:    0V .. ~1,65V  =>  0                                        ~1,65V ..   3,3V  =>  0 .. 2047 Configuration #4: Offset enabled, sign is positive & saturation enabled                   Translation operated:    0V .. ~1,65V  =>  2048 .. 4095                                        ~1,65V ..   3,3V  =>  4095 主要是因为手边没东西,所以直接将输出口接地,测量0电位的时候,输出的情况如下:     此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 回复了主题帖: NUCLEO_G431RB测评-UART疑问

    嗯,应该是每一帧8bit,包括结束位,所以数据位只有7bit。

  • 2019-09-22
  • 发表了主题帖: NUCLEO-G431RB评测->DAC评测

    本帖最后由 elike 于 2019-9-22 21:39 编辑 NUCLEO-G431RB评测 此芯片中的DAC是12位的DAC,总共有4个DAC接口,能从GPIO输出的有两个通道的DAC, 如下图所示。 要想控制此DAC正常工作,首先需要了解的就是它的端口情况。文档中已经给出端口描述 从中可知,两个DAC的输入数据都是16bit,而系统寄存器是32位的,所以在作为DAC用的时候,有相应的截取位,对于单通道输出的DAC来说,数据截取格式如下: 需要注意的是,当DAC的输入时钟dac_hclk>80MHz的时候,HFSEL就必须要做出相应的设置,来延迟DAC_DHRx寄存器的输出传输到DAC_DORx,为了留给DAC足够的建立时间。 整个DAC的输出电压公式如下 基本编程配置如下 sConfig.DAC_HighFrequency = DAC_HIGH_FREQUENCY_INTERFACE_MODE_AUTOMATIC; sConfig.DAC_DMADoubleDataMode = DISABLE; sConfig.DAC_SignedFormat = DISABLE; sConfig.DAC_SampleAndHold = DAC_SAMPLEANDHOLD_DISABLE; sConfig.DAC_Trigger = DAC_TRIGGER_T2_TRGO; sConfig.DAC_Trigger2 = DAC_TRIGGER_T6_TRGO; sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE; sConfig.DAC_ConnectOnChipPeripheral = DAC_CHIPCONNECT_DISABLE; sConfig.DAC_UserTrimming = DAC_TRIMMING_FACTORY; 从以下程序中可以看出,用了两个触发器DAC_TRIGGER_T2_TRGO和DAC_TRIGGER_T6_TRGO,分别实现对每一帧数据和整个周期数据的控制。这两个触发器相当于一个分频器,有关于两个触发器的基本配置如下:    htim2.Instance = TIM2; htim2.Init.Prescaler = 149; htim2.Init.CounterMode = TIM_COUNTERMODE_UP; htim2.Init.Period = 999; htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; 表明这个触发器的分频数为(150*500) htim6.Instance = TIM6; htim6.Init.Prescaler = 0; htim6.Init.CounterMode = TIM_COUNTERMODE_UP; htim6.Init.Period = 2499; htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; 这个触发器的分频数为(1*2500) 而整个系统的时钟配置如下 RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; RCC_OscInitStruct.PLL.PLLM = RCC_PLLM_DIV4; RCC_OscInitStruct.PLL.PLLN = 75; RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; RCC_OscInitStruct.PLL.PLLQ = RCC_PLLQ_DIV2; RCC_OscInitStruct.PLL.PLLR = RCC_PLLR_DIV2; if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { Error_Handler(); } /** Initializes the CPU, AHB and APB busses clocks */ RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;   所以系统加到触发器上的时钟频率为 16MHz/4*75/2/1/1/1=150MHz 而两个触发器的分频数分别为(150*1000,2500)对应输出频率为(1kHz,60kHz),所以输出信号的周期为1kHz。 在输出端连上示波器,可从示波器上观察得到,波形如下 按下USER按钮,显示出正弦波   对其中的正弦波导出到MATLAB中,做FFT分析,如下图 从图中可以看出,波形输出没有问题,但是杂波的影响,高次谐波带来的失真还是比较严重的,且在频率为~60kHz的时候内部高频采样时钟泄露相对于输入达到了-39dB。 为了再次确认结果,我直接将输入数字信号取出 uint16_t sinewave[60] = { 0x07ff,0x08cb,0x0994,0x0a5a,0x0b18,0x0bce,0x0c79,0x0d18,0x0da8,0x0e29,0x0e98,0x0ef4,0x0f3e,0x0f72,0x0f92,0x0f9d, 0x0f92,0x0f72,0x0f3e,0x0ef4,0x0e98,0x0e29,0x0da8,0x0d18,0x0c79,0x0bce,0x0b18,0x0a5a,0x0994,0x08cb,0x07ff,0x0733, 0x066a,0x05a4,0x04e6,0x0430,0x0385,0x02e6,0x0256,0x01d5,0x0166,0x010a,0x00c0,0x008c,0x006c,0x0061,0x006c,0x008c, 0x00c0,0x010a,0x0166,0x01d5,0x0256,0x02e6,0x0385,0x0430,0x04e6,0x05a4,0x066a,0x0733}; 在MATLAB中重复17个周期,然后对该理想信号做FFT,看其频谱分布, 发现采用改数字信号对正弦波的模拟类似程度较高,没有偶次谐波,剩下的主要是奇次谐波。   当我将输出正弦波频率降低时,降低到500Hz。波形输出结果如下图所示 同样导入MATLAB分析 谐波会好一些,但是时钟注入的杂波还是影响较大,没有变化。 当输出频率升高时,上升到5kHz,示波器上的结果如下图      也可以通过改变输入信号的值来改变波形,如果将输入数值变为以下内容时, uint16_t sinewave[60] = { 0x07ff,0x08cb,0x0994,0x0a5a,0x0b18,0x0bce,0x0c79,0x0d18,0x0da8,0x0e29,0x0e98,0x0ef4,0x0f3e,0x0f72,0x0f92,0x0f9d, 0x0f92,0x0f72,0x0f3e,0x0ef4,0x0e98,0x0e29,0x0da8,0x0d18,0x0c79,0x0bce,0x0b18,0x0a5a,0x0994,0x08cb,0x07ff,0x07ff, 0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff, 0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff,0x07ff}; 输出如图所示 此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 2019-09-21
  • 发表了主题帖: NUCLEO_G431RB测评->文件结构&ST-Link在线调试尝鲜

    NUCLEO-G431RB评测 平台搭建 之前试了一下MDK514,发现和http://bbs.21ic.com/icview-2861476-1-1.html?ordertype=1 出现的问题一样,所以这边直接下载了最新版的MDK528A。 下载文件: https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubeg4.html http://www.keil.com/dd2/pack/#  STMicroelectronics STM32G4   文件结构分析 分析其文件结构,顶层目录如下,我们所要关注的主要是projects的文件夹。 里面的实例程序可供我们直接使用 所有的硬件接口描述也就是底层的硬件API,全都在这个文件中。 每一个实例的目录结构如下所示 从中我们可知,对以下三种平台提供了较完善的配置,分别是:EWARM、MDK-ARM、SW4STM32,在其他的平台上测试的时候需要自己配置。 其中的startup_stm32g4xx.s文件,是整个系统初始化的重要文件,定义了系统初始的SP指针,PC指针,系统中断入口向量表。   基本配置 先可以看看其中的配置,从一个一个比较简单一点的GPIO的实例开始。   其中Keil.STM32Gxx_DFP.1.1.0,我这边是直接从上面的链接下载后,然后选择project->manage->pack installer->import。 有关ST-Link部分,这次就可以看到,接口都可以识别了,可以在keil界面直接进行调试和下载。 尝鲜板载ST-Link调试 这里只打开了简单的GPIO例子,这个例子实现的是控制LED2以一定的频率闪亮。 在亮暗切换的那一行打一个断点,然后调试运行,界面如下。 仔细调一下,可以发现,r1寄存器和灯的状态有关,r0寄存器则和记时相关。   此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 发表了日志: NUCLEO_G431RB测评->文件结构&ST-Link在线调试尝鲜

  • 发表了日志: NUCLEO_G431RB测评->文件结构&ST-Link在线调试尝鲜

  • 发表了主题帖: NUCLEO_G431RB测评->文件结构&ST-Link在线调试尝鲜

    NUCLEO_G431RB测评 平台搭建 之前试了一下MDK514,发现和http://bbs.21ic.com/icview-2861476-1-1.html?ordertype=1 出现的问题一样,所以这边直接下载了最新版的MDK528A。 下载文件: https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubeg4.html http://www.keil.com/dd2/pack/ 中的STMicroelectronics STM32G4 文件结构分析 分析其文件结构,顶层目录如下,我们所要关注的主要是projects的文件夹。 里面的实例程序可供我们直接使用 所有的硬件接口描述也就是底层的硬件API,全都在这个文件中。 每一个实例的目录结构如下所示 从中我们可知,他只是这样三种平台提供了较完善的配置,分别是:EWARM、MDK-ARM、SW4STM32,在其他的平台上测试的时候需要自己配置。 其中的startup_stm32g4xx.s文件,是整个系统初始化的重要文件,定义了系统初始的SP指针,PC指针,系统中断入口向量表。 接下来我们可以先打开一个比较简单一点的GPIO的实例。 基本配置 先可以看看其中的配置 其中Keil.STM32Gxx_DFP.1.1.0,我这边是直接从上面的链接下载后,然后选择project->manage->pack installer->import。 有关ST-Link部分,这次就可以看到,接口都可以识别了,可以在keil界面直接进行调试和下载。     尝鲜板载ST-Link调试 这里只打开了简单的GPIO例子,这个例子实现的是控制LED2以一定的频率闪亮。 在亮暗切换的那一行打一个断点,然后调试运行,界面如下。 仔细调一下,可以发现,r1寄存器和灯的状态有关,r0寄存器则和记时相关。   此内容由EEWORLD论坛网友elike原创,如需转载或用于商业用途需征得作者同意并注明出处

  • 点评了资料: MPLAB XC8中文用户指南

  • 2019-09-09
  • 回复了主题帖: #测评名单公布#尝鲜体验ST NUCLEO_G431RB开发板

    个人信息 姓名:杨普清 手机号码:18768518966 寄送地址:上海市浦东新区华夏中路393号(上海科技大学) 邮编:201210

  • 2018-12-28
  • 回复了主题帖: 求助!50Mhz正弦信号输出问题?

    我之前有测过无源晶振两端的电压,从示波器上来看就是正弦波,你这里应该需要搭一个无源晶振的驱动电路,网上有很多类似的电路,像那种直接加一个反向器的类似电路,只是为了能振起来而已,你可以像设计LC振荡电路那样设计,如图

最近访客

< 1/2 >

统计信息

已有22人来访过

  • 芯币:90
  • 好友:--
  • 主题:13
  • 回复:9
  • 课时:--
  • 资源:--

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言