博客

STM32F7与STM32F4复位序列之比较

judy 发表于:周四, 09/14/2017 - 16:06 , 关键词:
前言 初次接触到STM32F7,可能会有个疑惑,为什么0地址变成了ITCM RAM的起始地址。系统复位还是从地址0处开始执行吗?如果是,那这似乎看起来是冲突的。实际上,STM32F7是基于Cortex-M7内核,而Cortex-M7和Cortex-M3/M4的复位序列有些不一样。本文中,将针对这个问题做详细讲解。 STM32F4的复位序列 STM32F4基于Cortex-M4。... 阅读详情
930

单片机内部结构原理分析

judy 发表于:周四, 09/14/2017 - 15:48 , 关键词:
一、单片机内部结构分析 我们来思考一个问题,当我们在编程器中把一条指令写进单片机内部,然后取下单片机,单片机就可以执行这条指令,那么这条指令一定保存在单片机的某个地方,并且这个地方在单片机掉电后依然可以保持这条指令不会丢失,这是个什么地方呢?这个地方就是单片机内部的只读存储器即ROM(READ ONLY MEMORY)。为什么称它为只读存储器呢?刚才我们不是明明把两个数字写进去了吗?... 阅读详情
875

写出高效优美的单片机C语言代码

judy 发表于:周三, 09/13/2017 - 16:09 , 关键词:
1、单片机晶振不起振原因分析 遇到单片机晶振不起振是常见现象,那么引起晶振不起振的原因有哪些呢? (1) PCB板布线错误; (2) 单片机质量有问题; (3) 晶振质量有问题; (4) 负载电容或匹配电容与晶振不匹配或者电容质量有问题; (5) PCB板受潮,导致阻抗失配而不能起振; (6) 晶振电路的走线过长; (7) 晶振两脚之间有走线; (8) 外围电路的影响。 解决方案,... 阅读详情
831

单片机C语言几种内存泄露总结

judy 发表于:周二, 09/12/2017 - 13:58 , 关键词:
日常项目中碰到的内存泄露无非有以下几种: (1) 堆内存泄漏(Heap leak)。堆内存指的是程序运行中根据需要分配通过malloc,realloc new等从堆中分配的一块内存,再是完成后必须通过调用对应的 free或者delete 删掉。如果程序的设计的错误导致这部分内存没有被释放,那么此后这块内存将不会被使用,就会产生Heap Leak. 这是最常见的内存泄露。 (2)系统资源泄露(... 阅读详情
757

STM8S单片机入门2(关机模式开关机按钮)

judy 发表于:周一, 09/11/2017 - 17:11 , 关键词:
开关机功能是使用电池供电系统的最基本功能。如果使用机械式开关(2段拨动开关,自锁开关等)等直接接通和切断电源,不说机械部件的可靠性,至少自动关机(一般在长时间不操作、电池电量低时需要自动关机)功能就比较难实现。所以电池供电系统一般采用按钮开关,用一个按钮配合软件实现按一次开机、再按一次关机的功能及自动关机的功能。 这部分内容就讲述如何在上实现一键式的开关机功能。开关机功能要使用单片机的一个引脚(... 阅读详情
724

对STM32系统时钟和分频的一点理解

judy 发表于:周一, 09/11/2017 - 14:10 , 关键词:
系统时钟和分频 首先来手册里的一段话。 三种不同的时钟源可被用来驱动系统时钟 (SYSCLK) HSI振荡器时钟 HSE振荡器时钟 PLL时钟 一般用的是PLL时钟,后面有证据。 我们可以通过库函数获取各时钟值 void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks) 在我的系统里,把时钟值打印信息如下: SYSCLK:0x44aa200... 阅读详情
779

STM8S单片机入门1(开发环境搭建)

judy 发表于:周五, 09/08/2017 - 16:37 , 关键词:
STM8S单片机开发环境由三大部分组成,包括PC机上的开发软件(集成开发软件、驱动程序等)、调试&编程器ST-LINK、目标单片机电路板。如下图所示: 1、PC机上开发软件 PC机上的软件包括:ST-LINK驱动程序、IAR集成开发环境、STM8S标准函数库、STVP烧录工具。 ST-LINK调试&编程器需要驱动程序 这个驱动程序不需要单独安装,安装STVP时会一起安装。... 阅读详情
835

STM8S单片机入门(前言)

judy 发表于:周五, 09/08/2017 - 16:28 , 关键词:
STM8S单片机是一款广泛使用的8位低功耗单片机,具备系统成本低、功能强大等特点。功能强大也带来了学习入门相对较难的问题。本入门教程面向无任何单片机基础的人,从开发环境的搭建开始,通过详细讲解一个典型单片机应用系统最基本设计和实现过程,帮助大家快速入门。 单片机应用系统的形态很多,但基本模式类似。以智能硬件的应用为例,各种智能硬件区别大多是输入电路(各种传感器及外部信号输入)和输出电路(... 阅读详情
786

stm32内存管理总结

judy 发表于:周四, 09/07/2017 - 13:45 , 关键词:
一、内存管理简介 内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。内存管理的实现方法有很多种,他们其实最终都是要实现 2 个函数:malloc 和 free;malloc 函数用于内存申请,free 函数用于内存释放。本章,我们介绍一种比较简单的办法来实现:分块式内存管下面我们介绍一下该方法的实现原理,如图... 阅读详情
945

msp430 学习经验总结6个方面

judy 发表于:周四, 09/07/2017 - 09:54 , 关键词:
1.MSP430开发环境建立 1.安装IAR dor msp430 软件,软件带USB仿真器的驱动。 2.插入USB仿真器,驱动选择安装目录的/drivers/TIUSBFET 3.建立一个工程,选择"option"选项,设置 a、选择器件,在"General"项的"Target"标签选择目标器件 b、选择输出仿真,在"Linker"项里的"Output"标签,选择输出"Debug... 阅读详情
844

页面