初学STM32CubeIDE.doc_第1页
初学STM32CubeIDE.doc_第2页
初学STM32CubeIDE.doc_第3页
初学STM32CubeIDE.doc_第4页
初学STM32CubeIDE.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

初学STM32CubeIDE1、 关于安装安装已经有好多人说过了,我就不重复。2、 认识界面初初打开软件,自动打开“Information Center”就是信息中心。我们点击“Read STM32CubeIDE Documentation”,再点击“STM32CubeIDE Qiuck Start Guide”就是快速启动手册。简单介绍一下。Note: workspace and project names must contain only ascii characters. This is also valid for the path to the workspace. 注意:项目要用ascii字节。工作空间名也要用ascii字节。工作空间就是一个文件夹,用于作为STM32CubeIDE的存放暂时文件和记录文件的地方。3、 建工程工程不用建在工作空间中。我喜欢各软件的工程集中放一起,再区分一个个软件专用的工程文件夹。菜单“File”-“New”-“STM32 Project”或者“Start new STM32 project”链接,则启动新建工程。工程的第一步:选择芯片,可以通过左则输入型号,快速选出;或者通过下拉框的过滤,最后选定型号。工程的第二步:项目的名字,还的选项。名字不要用中文,要用ascii。选项默认就可以,用C语言,输入单片机程序。工程的第三步:这里我也看不明白,点“Finish”(完成)就好了。建工程前和后比较卡,这是在下载。4、 设定时基看看电路图,我发现晶振两块,一块是8MHz,另一块是32.768KHz。那么对应高速时钟是来自晶振8MHz。低速时钟是来自晶振32.768KHz。那么我点开“System Core”,选中“RCC”。对应HSE下拉选“Crystal/Ceramic Resonator”这是晶振的意思。“BYPASS Clock Source”意思是指线输入路时钟源。我再点击上栏“Clock Configuration”时钟配置。LSE的连接Input frequency可以填入32.768HSE的连接Input frequency可以填入8HCLK填入72,跳出Clock Wizard,这是时钟向导,是否自动调整其它时钟源。点“OK”。5、 设定GPIO点击上栏“Pinout&Configuration”。看看电路图,我要找LED灯,我发现都上拉的。那么GPIO设成推挽,初值为高电平就好了。我的电路图中,LED连接电阻再接到GPIO。LED2接PE5,LED3接PB5。那么我接芯片图放大(滚轮),移动(抓取),找GPIO。在PE5点击GPIO_Output。在PB5点击GPIO_Output。再到System Core下拉项,点击GPIO。那么Configuration下面就有GPIO了。点击分隔条,让GPIO Mode and Configuation栏放大。再点表单项。PE5设置:GPIO output level = HighGPIO mode = Output Push Pull (推挽)GPIO Pull-up/Pull-down = No pull-up and no pull-down (不上拉,也不下拉)Maximum output speed = Low (低速转换电平)User Label = LED2Label很好用,代码里会用Label显示。GPIO Pull-up/Pull-down设成开漏 (Output Open Drain) 也可以。Maximum output speed是开关的速度,对于LED这个速度不用太快,所以慢也可以,快也可以。好了,我只要做一个闪灯的Hellow World。顺便说说按扭。上拉的按扭接PA0,设置PA0置成GPIO_InputGPIO mode = Input modeGPIO Pull-up/Pull-down = Pull-down (下拉)User Label = Key0下拉的按扭接PE4,设置PE4置成GPIO_InputGPIO mode = Input modeGPIO Pull-up/Pull-down = Pull-up (上拉)User Label = Key1点击保存。则提问,是否生成代码,点“Yes”。注意,如果已经在main.c和main.h写了自己的代码,会被擦掉。所以要备份好。最好是设好脚就不去改了。否则要备份。6、 代码在“Project Explorer”下点开“Src”看到main.c,双击打开它。这已经多了两行:void SystemClock_Config(void);static void MX_GPIO_Init(void);下面也有它们的函数体,都是自动生成的。我们自己加入代码,要在“USER CODE”在/* USER CODE BEGIN PFP */和/* USER CODE END PFP */之间加入函数定义体。在/* USER CODE BEGIN 0 */和/* USER CODE END 0 */之间加入函数定义体。例如:/* USER CODE BEGIN PFP */void TurnOnLED(int flag);void TurnOffLED(int flag);/* USER CODE END PFP */* Private user code -*/* USER CODE BEGIN 0 */void TurnOnLED(int flag)switch(flag)case 2:HAL_GPIO_WritePin(LED2_GPIO_Port, LED0_Pin, GPIO_PIN_RESET);break;case 3:HAL_GPIO_WritePin(LED3_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);break;void TurnOffLED(int flag)switch(flag)case 2:HAL_GPIO_WritePin(LED2_GPIO_Port, LED0_Pin, GPIO_PIN_SET);break;case 3:HAL_GPIO_WritePin(LED3_GPIO_Port, LED1_Pin, GPIO_PIN_SET);break;/* USER CODE END 0 */。while (1) /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ TurnOnLED(2); HAL_Delay(300); TurnOffLED(2); HAL_Delay(1000); TurnOnLED(3); HAL_Delay(300); TurnOffLED(3); HAL_Delay(1000); /* USER CODE END 3 */好啦代码写好,7、 Debug和Release默认是Debug,我想想直接Release好了。我上机试。点击菜单“Project”-“Build Configuration”-“Set Active”-“Release”再点编译:“Project”-“Build Project”问题来了,这将会生成ELF。而不是HEX8、 Elf to Hex用Keil的工具,在KeilARMARMCCbinfromelf.exe我要建一个bat代码:(输入LED.elf,输出LED.hex)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论