stm32
考古队码老板
这个作者很懒,什么都没留下…
展开
-
FreeRtos 那点事
FreeRTOS(读作"free-arr-toss")是一个嵌入式系统使用的开源实时操作系统。FreeRTOS被设计为“小巧,简单,和易用”,能支持许多不同硬件架构以及交叉编译器。 FreeRTOS自2002年Richard Barry开始开发以来,一直都在积极开发中。至于我,我不是FreeRTOS的开发人员或贡献者,我只不过是一个最终用户和爱好者。因此,这章将着重与FreeRTOS架构转载 2017-05-12 19:42:27 · 4196 阅读 · 0 评论 -
FreeRTOS实验_独立看门狗监视多线程
1.首先随意创建几个线程,如下图:2.然后就要思考了,怎么样实现如果其中一个线程死掉了,就不喂狗得以让系统重启? 其实,我们可以反过来想一下,什么情况下才喂狗得以让系统正常运行?答案是,所有线程都活着的时候。 那么我们就让所有线程每隔一段时间上报一次“我还活着”事件给监视程序,当监视程序发现其中一个线程在这段时间内没有上报“我还活着”事件时就原创 2017-06-23 19:34:10 · 1900 阅读 · 0 评论 -
FreeRtos 内核函数 cmsis_os函数一览
http://blog.csdn.NET/baidu_23187363/article/details/53876277内核控制函数osStatus osKernelInitialize (void); //内核初始化osStatus osKernelStart (void); //原创 2017-06-23 20:07:17 · 3703 阅读 · 0 评论 -
STM32F105使用固件库的时候串口乱码解决方法
主要是根据你的外部晶振修改的。若使用的外部晶振是8M,可用如下方法修改。将 "stm32f10x.h" 做如下修改,就能解决问题。#if !defined HSE_VALUE#ifdef STM32F10X_CL #define HSE_VALUE ((uint32_t)8000000) /*!#else #define HSE_VALUE原创 2017-10-15 10:54:47 · 935 阅读 · 0 评论 -
stm32 DMA 配置 串口程序
STM32的串口1发送、接收DMA模式函数配置,已经调试可用,大家可以交流学习下/************************************************************************************函数名称:void USART1_Config(void)**函数功能:USART1串口引脚初始化**输入参数:无**返回参数原创 2017-10-15 10:58:25 · 601 阅读 · 0 评论 -
stm32启动文件ld md hd cl vl xl分析及选择
说的直白点就是以下区别,在选择启动文件的时候有选择性区别!startup_stm32f10x_cl.s互联型的STM32F105xx,STM32F107xxstartup_stm32f10x_hd.s 大容量的STM32F101xx,STM32F102xx,STM32F103xxstartup_stm32f10x_hd_vl.s 大容量的STM32F100xxstartup原创 2017-10-24 13:49:37 · 20395 阅读 · 2 评论 -
STM32’s I2C 硬件BUG引发的血案
2010-4-8 1: 45 下面的函数中有一个BUG, 也就是SR2不能用WHILE来轮询,而应直接读出.如下面代码段,因此,在这里说的这是STM32的BUG其实是我的代码的错误: I2C2->DR = inerAddress[1]; while( (I2C2->SR1&Q_I2C_SR1_BIT_BTF)==0 ); I2C2->SR2; // 正解2转载 2017-10-25 11:37:29 · 2518 阅读 · 1 评论 -
关于IO模式(浮空、推挽、开漏...)描述及应用
Ⅰ、写在前面在开发STM32的时候,都需要对IO的模式进行配置(GPIO_InitStructure. GPIO_Mode = xxx)。但是,你们都知道各种模式的具体意义吗? 有的人问:IO口输出可以上拉吗? 开漏输出是干什么用的? 其实这些问题并不难,只要你了解到每一种模式的真正意思,相信这些问题都不会难道你。本文的内容比较基础,也比较实用,希望对你转载 2017-10-26 17:03:43 · 950 阅读 · 0 评论 -
SIM800系列模块GSM/GPRS建立TCP连接到远端服务器过程
SIM800模块是全球领先的M2M模块及解决方案供应商芯讯通无线科技有限公司的一个产品系列,使用AT指令的GSM/GPRS无线通讯模块,就自己的使用过程记录下SIM800C系列模块建立TCP连接到远端服务器过程,模块基本使用通用异步串口通讯,模块内部TCP/IP应用程序用于GPRS服务。先对AT命令做一个简单介绍吧:AT命令以AT开头,一回车符结束。一个简单命令如:AT回车符,模块转载 2017-12-05 20:08:00 · 3100 阅读 · 2 评论 -
cJSON 使用笔记
最近在stm32f103上做一个智能家居的项目,其中选择的实时操作系统是 rt_thread OS v1.2.2稳定版本,其中涉及到C和java(android)端数据的交换问题,经过讨论和研究,选择了json格式的数据进行交互。当然,如果自己去写一个json解析器,有点重造轮子的嫌疑。于是使用了开源的json解析器。考虑到是嵌入式平台,在一位朋友的推荐下,选择了轻量级别的cJSON。原创 2017-06-21 20:48:56 · 1067 阅读 · 0 评论 -
几步实现stm32上面移植mqtt
最近项目需要,stm32上面使用到mqtt了,百度了下,发现网上资料还是挺少的,虽然有几份相关的资料,下载下来之后,看到了mqtt的底层代码竟然还有错误,这个问题导致了我后面一直调试不通,后来,我直接从官方下载了mqtt的源码用比较器比较后找到了原因,最后果断将官方的mqtt底层代码移植上来,mqtt的发布还是比较顺利,订阅虽然可以收到消息,但是由于没有移植os,发布消息时,订阅接受有时无法收到消原创 2017-06-20 21:00:13 · 25079 阅读 · 8 评论 -
stm32 BKP寄存器操作[操作寄存器+库函数]
stm32 BKP寄存器操作[操作寄存器+库函数]作者:Changing发表时间:07-06 17:13分类:电子相关No Comments前一篇:stm32 低功耗设计[操作寄存器+库函数]后一篇:stm32 RTC实时时钟[操作寄存器+库函数]BKP是“BACKUP”的缩写,stm32f103RCTE的内部配备了10个16位宽度的BKP寄存器。在主电源切断或系统原创 2017-05-22 19:18:07 · 2260 阅读 · 0 评论 -
stm32 不断的重新启动的原因
注意 由于 stm32 系统 不断的重新启动,最后的原因就是 stm32 开发板子上面的 reset 引脚 是 悬空的状态,受到其他信号的干扰的,不接的情况下 ,有可能 当做是 天线的作用 导致mcu 不断的重新启动的原因原创 2017-05-04 19:22:10 · 12114 阅读 · 0 评论 -
stm32 JTag 错误
版权声明:本文为博主原创文章,未经博主允许不得转载。keil编译Jlink烧写时提示* JLink Info: Could not measure total IR len. TDO is constant high.。无法烧写成功。。我的问题是是Jlink方式烧写时电压太低,检测不到。把Jlink烧写方式换成SW烧写。就OK了顶1踩原创 2017-04-24 15:25:00 · 539 阅读 · 0 评论 -
Stm 32 IAP 在线 升级IAP 的 操作
(扩展-IAP主要用于产品出厂后应用程序的更新作用,考虑到出厂时要先烧写IAP 再烧写APP应用程序要烧写2次增加工人劳动力基础上写了“STM32 IAP+APP ==>双剑合一”链接稍后发)一、在进入主题之前我们先了解一些必要的基础知识----stm32系列芯片的种类和型号:startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F107xx转载 2017-05-25 11:08:33 · 1359 阅读 · 0 评论 -
STm32 使用 stm32cube GPIO 点亮 led 的
有关软件的使用以及其它准备工作请参考:使用HAL库、STM32CubeMX和Keil 5开发入门教程(一):点亮一盏LED灯(NUCLEO-F411RE)一、API说明HAL库一共包含如下6个IO操作函数: 1、读取某个引脚的电平状态: HAL_GPIO_ReadPin() 2、写入某个引脚的电平状态: HAL_GPIO_WritePin() 3、翻转某个引脚的原创 2017-04-24 16:34:13 · 6465 阅读 · 0 评论 -
STM32F030 ADC1的DMA采样问题
搞了1天一直ADC没有出来,发现采处理的值一直是固定值..去21IC求助贴.[STM32F0] STM32F030 ADC1采样问题请教等了好久都没有人回复,但有人提醒我说需要等待DMA的数据完成.后面对比了别人的代码,/* ADC DMA request in circular mode */ADC_DMARequestModeConfig(ADC1, ADC_DMAMode转载 2017-04-27 14:00:16 · 9860 阅读 · 1 评论 -
STM32实现IAP功能的学习笔记
STM32实现IAP功能的学习笔记最近因项目需求要实现STM32的在线升级即IAP功能,先将这几天的学习体会和IAP的具体实现总结出来,分享给大家,希望对同样实现IAP的童鞋有所帮助,文中最后会上传名为STM32_Update.zip的压缩文件里面包含了STM32_App、STM32_MyBoot_V1.0和升级软件STM32_UpdateSoftware的源码文件供大家参考。原创 2017-06-01 09:35:15 · 41575 阅读 · 22 评论 -
STM32启动BOOT0 BOOT1设置方法 [
不同的下载方式对应STM32启动方式也不同,如下图是STM32三种启动方式: ●第一种启动方式是最常用的用户FLASH启动,正常工作就在这种模式下,STM32的FLASH可以擦出10万次,所以不用担心芯片哪天会被擦爆! ●第二种启动方式是系统存储器启动方式,即我们常说的串口下载方式(ISP),不建议使用这种,速度比较慢。STM32中自带的BootLoader就是转载 2017-05-22 15:10:23 · 17330 阅读 · 0 评论 -
stm32f103 rtc 获取 日历 时钟
STM32的RTC实现日历功能程序发布时间:2011-09-30 14:53:05 STM32的RTC只有一个32位的计数器用来计时,没有寄存器来存年月日时分秒等。通过设置可以让这个计数器1秒加1,从0-0XFFFFFFFF大概可以计时136年。程序要设置一个时间起点表示0,一般设置起始时间为1970-01-01 0:0:0。这是UNIX时间戳。如果要设置RTC时间,如2011-9-3原创 2017-05-22 15:13:54 · 7194 阅读 · 0 评论 -
FreeRtos osMessagePut osMessageGet 函数
任务:使用stm32cube 工程的message quene management 部分api1、使用stm32cubemx生成相应的工程2、使能消息队列相关的函数 #define osFeature_MessageQ 13、定义消息队列的名字osMessageQDef(MsgBox, 1, int); //创建一个长度为1,单位为int的消原创 2017-12-05 20:09:31 · 18390 阅读 · 0 评论