嵌入式系统STM32
文章平均质量分 87
hjf161105
业精于勤荒于嬉,行成于思毁于随
展开
-
嵌入式系统学习——STM32之串口通信UART
处理器与外部设备通信的两种方式:1、并行通信 -传输原理:数据各个位同时传输。 -优点:速度快 -缺点:占用引脚资源多2、串行通信 -传输原理:数据按位顺序传输。 -优点:占用引脚资源少 -缺点:速度相对较慢串行通信:按照数据传送方向,分为:①单工: 数据传输只支持数据在一个方向上传输②半双工:原创 2017-05-22 23:29:05 · 4120 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III消息传递
任务间通信: 一个任务或者中断服务程序有时候需要和另一个任务交流信息,这个就是消息,传递的过程就叫做任务间通信,任务间的消息传递可以通过2种途径:一是通过全局变量,二是通过发布消息。 使用全局变量的时候每个任务或者中断服务程序都必须保证其对全局变量的独占访问。消息也可以通过消息队列作为中介发布给任务。 什么是消息? 消息包含一下几原创 2017-06-01 00:14:39 · 1860 阅读 · 0 评论 -
嵌入式系统学习——STM32之FATFS文件系统
文件系统是什么?负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。即在磁盘上组织文件的方法。常用的文件系统:-FAT / FATFS-NTFS: 基于安全性的文件系统,是Windows NT所采用的独特的文件系统结构-CDFS:CDFS是大部分的光盘的文件系统-exFAT FATFS文件系统FATFS是一原创 2017-06-16 11:16:54 · 5216 阅读 · 0 评论 -
嵌入式系统学习——STM32之TFT汉字显示
常用汉字编码GB2312GB13000GBKBIG5(繁体)汉字显示原理汉字在液晶上的显示其实就是一些点的显示与不显示,这就相当于我们的笔一样,有笔经过的地方就画出来,没经过的地方就不画。所以要显示汉字,我们首先要知道汉字的点阵数据,这些数据可以由专门的软件来生成。只要知道了一个汉字点阵的生成方法,那么我们在程序里面就可以把这个点阵数据解析成一个汉字。原创 2017-06-16 11:39:45 · 9278 阅读 · 0 评论 -
嵌入式系统学习——STM32之外部中断
STM32与51相比,多了很多资源,其中外部中断就是被扩展了很多。51的外部中断只有2个,但是STM32不是,STM32的每个IO都可以作为外部中断输入。 STM32的中断控制器支持19个外部中断/事件请求:线0~15:对应外部IO口的输入中断。线16:连接到PVD输出。线17:连接到RTC闹钟事件。线18:连接到USB唤醒事件。每个外部中断线可以独立的配置触发方式(上原创 2017-05-20 11:32:37 · 4093 阅读 · 0 评论 -
嵌入式系统学习——STM32之通用定时器
STM32是51的扩展,所以STM32不仅在IO和中断上扩展了,定时器也比51强大很多。STM32内置三种定时器,即高级定时器、通用定时器和基本定时器。三种STM32定时器区别通用定时器功能特点描述STM3 的通用 TIMx (TIM2、TIM3、TIM4 和 TIM5)定时器功能特点包括:1、位于低速的APB1总线上(APB1)2、16 位向上、向下、向上/向原创 2017-05-21 14:32:14 · 3489 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III事件标志组和存储管理
事件标志组: 有时候一个任务需要与多个事件同步,这个时候就需要使用事件标志组。事件标志组与任务之间有两种同步机制:“或”同步和“与”同步。 “或”同步:等待多个事件时,任何一个事件发生 ,任务都被同步,这个就称为“或”同步。 “与”同步:当所有的事件都发生时任务才被同步,这种同步机制被称为“与”同步。 在UCOSIII中事件标志组为OS_FL原创 2017-06-01 17:32:35 · 1330 阅读 · 0 评论 -
基于89C51和STM32F1实现2.4G无线射频智能家居
前段时间学51单片机的时候做了一个简单的智能家居,实现了三个传感器采集数据,于OLED显示。当时并没有深入的去研究,仅仅是51采集数据显示:单片机==简易智能家居OLED。这次扩展了一下这个项目。项目需求: 采集房间的温度、湿度、光照、烟雾等信息,51采集完数据在OLED上显示,采用2.4G射频模块NRF24L01,将51采集的数据发送给STM32,STM32接收完数据在TFT屏原创 2017-06-20 00:05:24 · 3878 阅读 · 2 评论 -
嵌入式系统学习——STM32之电容型触摸屏
触摸屏 触摸屏(touch screen)又称为“触控屏”、“触控面板”,是一种可接收触头等输入讯号的感应式装置。作为一种新型的电脑输入设备,可以用来取代传统的机械按键等输入设备。它是目前最简单、方便、自然的一种人机交互方式。主要应用于公共信息的查询、领导办公、工业控制、军事指挥、电子游戏、点歌点菜、多媒体教学、房地产预售等。 触摸屏本质上与液晶是分离的。触摸屏负责的是检测触摸点,液晶原创 2017-06-22 21:55:07 · 13333 阅读 · 2 评论 -
嵌入式系统学习——STM32之按键输入
之前写了两篇关于STM32 GPIO的介绍和运用,跑马灯用到了GPIO的推挽输出,但是对于输入还是没有用到,这次就运用一下GPIO的上拉输入。实验还是和以前51做的实验一样,就是判断按键的输入,然后控制LED灯。这次没有直接配置寄存器,而是调用库函数和位操作结合。注:每一块开发板对应电路都不相同,编写代码需要对应自己的板子,本人两个LED灯对应的GPIO为:GPIOD13和GPIOD1原创 2017-05-19 14:52:00 · 29014 阅读 · 4 评论 -
嵌入式系统学习——STM32之SD卡(下)
SDIO简介-SDIO寄存器SDIO电源控制寄存器(SDIO_POWER) 该寄存器只有最低2位(PWRCTRL[1:0])有效,其他都是保留位,STM32复位以后,PWRCTRL=00,处于掉电状态。所以,我们首先要给SDIO上电,设置这两个位为:11。SDIO时钟控制寄存器(SDIO_CLKCR)原创 2017-06-15 22:48:10 · 6891 阅读 · 1 评论 -
嵌入式系统学习——STM32之SD卡(上)
1、SDIO简介-什么是SDIO接口?原创 2017-06-15 22:07:20 · 4565 阅读 · 0 评论 -
STM32之启动文件理解
原文地址:STM32之启动文件理解一作者:Roberl 在嵌入式应用程序开发过程里,由于使用C语言编程,基本很少涉及到机器底层寄存器的执行过程,一般都会直接在main函数里开始写代码,似乎main成为了理所当然的起点,尽管从C程序的角度来看程序都是直接从main函数开始执行。然而,MCU上电后,是如何寻找到并执行main函数这一问题却很自然的被忽略了!事实上微控制器是无法从硬件上去转载 2017-05-24 18:03:48 · 487 阅读 · 0 评论 -
嵌入式系统学习——STM32之RTOS系统UCOS介绍与移植
前后台系统: 早期嵌入式开发没有嵌入式操作系统的概念,直接操作裸机,在裸机上写程序,比如用51单片机基本就没有操作系统的概念。通常把程序分为两部分:前台系统和后台系统。 简单的小系统通常是前后台系统,这样的程序包括一个死循环和若干个中断服务程序:应用程序是一个无限循环,循环中调用API函数完成所需的操作,这个大循环就叫做后台系统。中断服务程序用于处理系统的异原创 2017-05-26 17:34:51 · 4164 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III任务管理
什么是任务? 生活中我们处理一个大问题的时候通常都是将这个问题“分而治之”,把大问题分成多个小问题,小问题被逐步的解决掉,大问题也就随之解决了。那么这些小问题就可以看成是很多个小任务。 在我们设计复杂、大型程序的时候也是一样的,将这些负责的程序分割成许多个简单的小程序,这些小程序就是单个的任务,所有的小任务和谐的工作,最终完成复杂的功能。在操作系统中这些小任务可以并发执行,从而原创 2017-05-26 17:54:41 · 2153 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III任务基础API、时间片轮转调度和系统任务
上一篇博客介绍了UCOS-III任务处理的方式,这一篇博客主要讲一下UCOS-III的任务基础API函数。任务的创建: UCOSIII中要想使用任务,第一件事就是创建一个任务,创建任务使用函数OSTaskCreate()。//创建任务1 OSTaskCreate (( OS_TCB * ) &TASK1_TaskTCB, //TCB控制块 ( CPU_原创 2017-05-28 22:33:37 · 2241 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III中断和时间管理及软件定时器
UCOSIII中断: 中断:应内部或外部异步事件的请求中止当前任务,而去处理异步事件所要求的任务的过程叫做中断。void USART1_IRQHandler(void){ OSIntEnter(); //中断服务程序 OSIntExit();} 进入和退出中断服务函数:进入中断服务函数以后使用函数OSIntEnter(原创 2017-05-28 23:02:18 · 2869 阅读 · 0 评论 -
嵌入式系统学习——STM32之UCOS-III信号量和互斥信号量
信号量简介: 信号量像是一种上锁机制,代码必须获得对应的钥匙才能继续执行,一旦获得了钥匙,也就意味着该任务具有进入被锁部分代码的权限。一旦执行至被锁代码段,则任务一直等待,直到对应被锁部分代码的钥匙被再次释放才能继续执行。 信号量用于控制对共享资源的保护,但是现在基本用来做任务同步用。 要想获取资源的任务必须执行“等待”操作,如果该资源对应的信号原创 2017-05-29 23:29:17 · 3077 阅读 · 0 评论 -
嵌入式系统学习——STM32之GPIO
STM32库函数说明及示例(版本V1.4.0)----第一篇:GPIO库文档说明和约定:该文档主要是对STM32F4各个模块的库进行翻译和说明。文档中加入了作者的一些理解,建议和小贴士。并且在文档最后,加入了一些使用该库模块的案例。希望大家通过对该文档的阅读,可以更好的使用STM32的库函数进行学习和项目开发。之所以选用1.4.0版本进行翻译和说明,因为该版本群众基础较好,转载 2017-05-19 00:02:19 · 3947 阅读 · 0 评论 -
嵌入式系统学习——STM32之跑马灯
这段时间开始学STM32F103ZET6,带着51的思路去看32,感觉还是有很多地方是共通的。昨天看了STM32的GPIO的八种输入输出模式,今天将之应用一下,还是以前51的实验——跑马灯。 STM32和51相比,资源多了很多,所以对于STM32的输入输出,也存在不同的代码写法。(1)调用STM的库函数,从而实现32内部寄存器的配置。(2)直接对寄存器进行操作。(3)利用一些宏和原创 2017-05-19 13:33:20 · 9163 阅读 · 1 评论 -
嵌入式系统学习——STM32之电阻型触摸屏
触摸屏分类 按照触摸屏的工作原理和传输信息的介质,把触摸屏分为四种,它们分别为①电阻式:定位准确,单点触摸。②电容感应式:支持多点触摸,价格偏贵。工业应用最广泛③红外线式:价格低廉,但其外框易碎,容易产生光干扰,曲面情况下失真。④表面声波式:解决各种缺点,但是屏幕表面如果有水滴和尘土会使触摸屏变的迟钝。四线电阻屏工作原理电阻屏的主要部分是一块与显示器表面配合原创 2017-06-22 22:13:50 · 6757 阅读 · 0 评论