推荐阅读最新更新时间:2024-11-03 06:06
STM32:Keil MDK(uVision v4.10)开发环境搭建
集成开发环境(IDE):Keil公司的RealView MDK(uVision V4.10) 源文件编辑器:EditPlus(我在用的)/UltraEdit/SourceInsight/IDE自带的编辑器 串口工具:SecureCRT(一个专业的超级终端工具,支持很多接口(包括串口)和协议,推荐使用。) RealView MDK 工程配置:(keil开发环境搭建核心步骤) 1、新建文件夹,文件夹名如:Template 2、在文件夹Template下新建文件夹:User/ Project/ Output/ Listing/ Libraries/CMSIS/ Libraries/FWlib/ Doc/ 3、在Project/文件
[单片机]
智能家居系统设计(裸机stm32/μCOS-III)
在正式讲解之前,先来总结一下。该项目是对大学学过的部分知识进行整合,同时这也是我大学的毕业设计,也算是对大学的一个交待。 首先来讲述一下该项目具体实现了哪些功能,方便大家理清思路。该项目拥有四种控制方式,分别是语音识别、触摸屏、小程序、APP,而控制的对象是家用电器(这里利用一个多路继电器来模拟家用电器)。 这四种控制方式还能对采集的数据进行反馈显示: 在语音识别方面,语音模块识别到特定的关键词语后,会将采集到的温湿度数据通过语音播报模块进行播报反馈; 在触摸屏和APP方面,将采集到的温湿度、有害气体浓度、光照强度显示在触摸屏上,还可以设置湿度和有害气体浓度的阈值(湿度阈值的设置是当湿度超过设定阈值时,表明室外下雨
[单片机]
玩转STM32(11)CPU的心跳历程
前面说CPU怎么样才有脉搏,也就是给CPU装了一个心脏,这样这个由泥沙组成的CPU才能开始拥有像生命的力量了。在前文后面,提到了使用25MHz晶振作为外部的频率来源,但是我们的目标是让CPU工作在168MHz的频率,这样才可以让CPU工作得更快,运行代码更快,效率更高。当然,如果你想让CPU工作在25MHz也是可以的,只是有点不值得,用这么贵的硬件,运行这么低的频率。要想快,就得提高CPU运行的频率,那么怎么样才可以把25MHz的频率转换为168MHz的频率呢?可以看到168M是比25M频率高很多,显然要使用到倍频电路,也要使用到分频电路。比如把25M按25分频系数来分频,那么得到频率就是1M,然后再使用倍频电路,比如使用336作
[单片机]
Stm32 SWD 下载 调试配置
找到一篇比较好的 关于stm32 SWD模式 下载 调试 配置文章 整理如下: 我们比较常用的是Jlink下载器 ,这种下载器有一个缺点就是使用的Jtag 20PIN接口,太多的PIN会导致一些小型的PCB板很拥挤,也会增加布线的难度。 而使用SWD接口下载调试,只需要要使用4个PIN: GND, RST, SWDIO, SWDCLK ,而且下载速度可以达到10M/s,优势显而易见。 以下转自: http://www.openedv.com/posts/list/187.htm 我们所使用的Jtag 20PIN引脚图: 相关原理图: SWD 仿真模式概念简述
[单片机]
使用Keil MDK运行第一个STM32程序
1.1.1 使用Keil MDK运行第一个STM32F10X程序 在上一小节中已经详细介绍了使用Keil MDK和标准外设库创建一个工程的过程,下面将介绍基于这个工程来编写一个小程序,通过这个程序我们可以初步了解: l STM32标准外设库的简单使用过程 l STM32外设的使用方法和大致流程 l 程序的编译、链接、下载步骤 l 利用Keil MDK的在线仿真功能进行软件仿真的简要步骤 1. 程序的编写 (1)程序实现的功能 为了方便各位读者的入门和理解,这个小程序的功能非常简单,作为本书功能实践的第一个程序,其功能当然也是最为经典的“Hello World!”了,只不过不是简单的屏幕输出,而是利用硬件的串口进行输出,同时作为单片
[单片机]
STM32蜂鸣器模拟播放歌曲
/********************************************************************** *函数名:BEEP_Init *功 能:蜂鸣器初始化 *参 数:无 *返 回:无 *备 注: 引脚 点蜂鸣器电平 模式 速度 PC3 高电平 通用推挽输出 50M **********************************************************************/ void BEEP_Init(void)
[单片机]
STM32的ADC单次转换设计
下面分别为库函数和直接操作寄存器的两个范便,我都已测试通过 使用此程序前必要对GPIO设好为模拟输入方式 =====================================库函数版========================================= void AD_CONFIG_SINGLE(void ) { //先配置IO口: ADC_InitTypeDef adcInitStruct; ////PB1 作为模拟通道输入引脚 RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 , ENABLE);//使能ADC和GPIOC时钟 //配置ADC: //将ADC配置成非
[单片机]
STM32自定义printf实现多串口互用
STM32 串口使用频繁的朋友可能知道一个问题,库自带的 USART_SendData 函数一次只能发送 1 Byte 字符 如果我们要输出一个带格式、带参数的串口数据就只能通过 sprintf 打印到一个临时数组,然后再使用一个for循环调用USART_SendData一个字符一个字符的输出,过程非常麻烦! 姜斌是一个非常怕麻烦的人所以这种方法无疑让我发疯!后来在原子(OpenEDV)那里购买了开发板拿到了例程。里面重定向了printf函数作为串口输出函数,有了这个函数之后就能够很轻松的参数输出,但问题就在这里我们串口1 串口2 都要带参数输出怎么办? 本次实验:自定义printf函数 实验数据来源: 配置usart
[单片机]