野火stm32论坛(野火stm32怎么添加按键)
本文目录
- 野火stm32怎么添加按键
- 各位大神,求教啊,stm32 adc 多通道采集出错
- 那位朋友有野火42集-STM32视频教程
- stm32程序在插上串口线可以进行调试,程序正常运行(程序有指示灯),拔掉串口线程序就不运行了,求指点!
- 关于野火M3 STM32开发板上的LCD例程的问题
野火stm32怎么添加按键
野火stm32添加按键操作如下:1.打开PROE,新建一个零件模板,点击菜单栏“工具”找到“映射键”。2.点击“映射键”,再点击“新建”出现。3.录制映射键窗口,然后再键序列下填入快捷键代码,在名称下填写快捷键表示的意义,在说明下填写快捷键的简要说明就行了。
各位大神,求教啊,stm32 adc 多通道采集出错
/******************** (C) COPYRIGHT 2012 WildFire Team **************************** 文件名 :adc.c* 描述 :adc应用函数库 * 实验平台:野火STM32开发板* 硬件连接:----------------------------------------------------* | |* | PC1 - ADC1 连接外部电压(通过一个滑动变阻器分压而来)|* | |* ----------------------------------------------------* 库版本 :ST3.5.0 ** 作者 :wildfire team ***隐藏网址******隐藏网址*************************************************************************************/#include "adc.h"#define ADC1_DR_Address ((u32)0x40012400+0x4c)__IO uint16_t AD_Value; 存放2个通道的值__IO uint16_t ADC_ConvertedValue;//__IO u16 ADC_ConvertedValueLocal;/** 函数名:ADC1_GPIO_Config* 描述 :使能ADC1和DMA1的时钟,初始化PC.01* 输入 : 无* 输出 :无* 调用 :内部调用*/static void ADC1_GPIO_Config(void){GPIO_InitTypeDef GPIO_InitStructure;/* Enable DMA clock */RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);/* Enable ADC1 and GPIOC clock */RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_GPIOC, ENABLE);/* Configure PC.01 as analog input */GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;GPIO_Init(GPIOC, &GPIO_InitStructure); // PC0,输入时不用设置速率/* Configure PC.01 as analog input */GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;GPIO_Init(GPIOC, &GPIO_InitStructure); // PC2,输入时不用设置速率}/* 函数名:ADC1_Mode_Config* 描述 :配置ADC1的工作模式为MDA模式* 输入 : 无* 输出 :无* 调用 :内部调用*/static void ADC1_Mode_Config(void){DMA_InitTypeDef DMA_InitStructure;ADC_InitTypeDef ADC_InitStructure;RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);//使能DMA时钟/* DMA channel1 configuration */DMA_DeInit(DMA1_Channel1);DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address; //ADC地址DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&AD_Value;//内存地址DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;//BufferSize=2,因为ADC转换序列有2个通道//如此设置,使序列1结果放在AD_ValueDMA_InitStructure.DMA_BufferSize = 64;DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;//外设地址固定DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable; //内存地址递增DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; //半字DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;//循环模式开启,Buffer写满后,自动回到初始地址开始传输DMA_InitStructure.DMA_Mode = DMA_Mode_Circular; //循环传输DMA_InitStructure.DMA_Priority = DMA_Priority_High;DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;DMA_Init(DMA1_Channel1, &DMA_InitStructure);DMA_Cmd(DMA1_Channel1, ENABLE); //配置完成后,启动DMA通道/* ADC1 configuration */ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //独立ADC模式ADC_InitStructure.ADC_ScanConvMode = ENABLE ; //禁止扫描模式,扫描模式用于多通道采集ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; //开启连续转换模式,即不停地进行ADC转换ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //不使用外部触发转换ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //采集数据右对齐ADC_InitStructure.ADC_NbrOfChannel = 2; //要转换的通道数目2ADC_Init(ADC1, &ADC_InitStructure);/*配置ADC时钟,为PCLK2的8分频,即9Hz*/RCC_ADCCLKConfig(RCC_PCLK2_Div8); /*配置ADC1的通道11为55. 5个采样周期,序列为1 */ ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_55Cycles5);ADC_RegularChannelConfig(ADC1, ADC_Channel_12, 2, ADC_SampleTime_55Cycles5);/* Enable ADC1 DMA */ADC_DMACmd(ADC1, ENABLE);/* Enable ADC1 */ADC_Cmd(ADC1, ENABLE);/*复位校准寄存器 */ ADC_ResetCalibration(ADC1);/*等待校准寄存器复位完成 */while(ADC_GetResetCalibrationStatus(ADC1));/* ADC校准 */ADC_StartCalibration(ADC1);/* 等待校准完成*/while(ADC_GetCalibrationStatus(ADC1));/* 由于没有采用外部触发,所以使用软件触发ADC转换 */ ADC_SoftwareStartConvCmd(ADC1, ENABLE);}/** 函数名:ADC1_Init* 描述 :无* 输入 :无* 输出 :无* 调用 :外部调用*/void ADC1_Init(void){ADC1_GPIO_Config();ADC1_Mode_Config();}/******************* (C) COPYRIGHT 2012 WildFire Team *****END OF FILE************/
那位朋友有野火42集-STM32视频教程
兄弟别看什么野火了...他们的教程和正点原子根本不是一个水平的。我当初也是从野火转到正点原子上的。你要是正好有野火的板子你可以先学一学野火的。看完systick之后直接看原子教程就行,到时候你就会体会到区别了。当然,两个教程可以同时看。F1的话直接搜索战舰,PDF和例程都有。F4搜探索者。
stm32程序在插上串口线可以进行调试,程序正常运行(程序有指示灯),拔掉串口线程序就不运行了,求指点!
首先,你在void HardFault_Handler(void){ /* Go to infinite loop when Hard Fault exception occurs */ while (1) { }}里面设置一个断点,看程序运行的时候会不会进去,进去则说明你的程序逻辑上有问题,有可能是数组越界之类的错误;其次,如果没有进去,你需要量一下boot0和boot1的电平,看是不是正常的flash内启动模式。我之前也遇见过类似的问题,发现时开发板上boot前的一个三极管击穿了所以导致启动模式不对,希望对你有所帮助!
关于野火M3 STM32开发板上的LCD例程的问题
根据LCD屏的资料上的读写时序,各个时序参数,主要就是LCD的读写时序图和时序参数,再根据STM32的FSMC的时序图得到的这些参数。
如STM32的FSMC时序图(其中一种)
LCD的控制读写时序图(不同的液晶时序参数不一样,我的这个液晶是St7565P为驱动芯片)
不同的液晶在读写时候,总线上电平变化及保持时间要求会不一样,就想什么地址建立时间,地址保持时间,数据建立时间,数据保持时间等等,根据这些来去配置STM32的FSMC时序。
更多文章:
苹果手机怎么恢复微信聊天记录的内容(苹果手机微信聊天记录删除了怎么找回)
2024年11月20日 06:20
普通人买ipadpro有什么用(日常学习选购有必要选购ipadpro系列吗,为什么)
2024年10月28日 06:30
红米8手机价格表大全(红米Redmi8屏幕碎了换屏需要多少钱)
2024年10月20日 14:20
y7000p比y7000强在哪里(y7000和y7000p区别 联想y7000和y7000p有哪些区别)
2024年3月26日 12:40
联想y470独显开关(联想Y470集成显卡怎么切换换独立显卡,切换后怎么看得出来)
2024年5月16日 14:40
蓝宝石hd6850跑分(蓝宝石HD6850 1GB GDDR5白金版和蓝宝石HD6870白金版)
2024年6月9日 02:20
苹果6插卡无服务怎么办(苹果6卡插进去显示无服务是什么原因)
2024年5月5日 06:00
上海日立电器官方网站(上海海立(集团)股份有限公司的公司简介)
2024年9月12日 02:20
win10电脑开机密码忘了怎么办(win10忘记密码怎么进系统)
2024年10月28日 14:20
美的电压力锅最新款(美的电压力锅13pss605a价格贵不贵 它有什么优点)
2024年3月6日 06:10
hd6570比核显好吗(为何hd6570还没有我集成显卡好)
2024年11月4日 13:20