跳转到主要内容

博客

stm32 窗口看门狗学习(一)

什么是窗口看门狗?

1)独立看门狗
限制喂狗时间在0-x内,x由相关寄存器决定。喂狗的时间不能过晚。

2)窗口看门狗
之所以称为窗口就是因为其喂狗时间是一个“窗口”,不能过早也不能过晚。

STM32F10x 的窗口看门狗中有一个7位的递减计数器,出现下述2种情况之一时产生看门狗复位:
 
1)当计数器的数值从0x40减到0x3F时 ,这里的0x3F可以看成是窗口的下限;  
2)喂狗的时候,如果计数器的值大于某一设定数值(这个数值是窗口的上限),此数值在WWDG_CFR寄存器中配置。

5个设计智能看门狗的小技巧

从系统或软件故障中恢复是一件不容易的任务;要让该故障不复存在更是困难,即使故障已可被辨识和修复。不过,外部看门狗(Watchdog)可帮助系统针对故障迅速做出反应。

外部看门狗是嵌入式系统工程师工具箱里重要且关键的工具,然而为了捕捉到故障,且预防故障的发生,看们狗必须设计得当。因此设计一个看门狗系统时应考虑以下5个秘诀。

<strong>技巧1—监测心跳</strong>

一个外部看门狗须具备的最简单功能是监测由主应用处理器产生的一个定期「心跳(Heartbeat)」信号,以及在心跳异常时发出一个错误信号。心跳监测可做为两种不同的用途:首先,在经过已在软件执行的功能检查之后,微控制器(MCU)应该只是生成心跳,以确保软件的正常工作。第二,如果系统的实时响应已受到损害,心跳应该要能显示出来。

单片机应用系统硬件设计应该考虑哪些问题?

(1)存储器扩展:容量需求,在选择时就考虑到单片机的内部存储器资源,如能满足要求就不需要进行扩展,在必须扩展时注意存储器的类型、容量和接口,一般尽量留有余地,并且尽可能减少芯片的数量。选择合适的方法、ROM和RAM的形式,RAM是否要进行掉电保护等。

(2)I/O接口的扩展:单片机应用系统在扩展I/O接口时应从体积、价格、负载能力、功能等几个方面考虑。应根据外部需要扩展电路的数量和所选单片机的内部资源(空闲地址线的数量)选择合适的地址译码方法。

STM32外设有哪些?

STM32系列是ST公司基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核的32位单片机。按内核架构分为不同产品:
<center><img src="http://mcu.eetrend.com/files/2017-10/博客/100008357-27937-bu_huo_.png&quot; alt="STM32外设有哪些?"></center>

STM32单片机学习笔记(四)

<a href="http://mcu.eetrend.com/blog/2017/100008327.html">续《STM32单片机学习笔记(三)》</a>

113、 数据帧构成:

STM32单片机学习笔记(三)

续<a href="http://mcu.eetrend.com/blog/2017/100008231.html"&gt;《STM32单片机学习笔记(二)》 </a>

77、FSMC,即灵活的静态存储控制器。能够与同步或异步存储器和16位PC存储器卡接口,STM32的FSMC接口支持包括SRAM、NANDFLASH、NORFLASH和PSRAM等存储器。

51单片机存储器详解

<strong>MCS-51的存储器可分为四类:</strong>

<strong>程序存储器</strong>

一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。

I2C总线协议详解

<strong>I2C总线定义</strong>

I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。

<strong>I2C总线特点</strong>

STM32单片机学习笔记(二)

续<a href="http://mcu.eetrend.com/blog/2017/100008209.html"&gt;《STM32单片机学习笔记(一)》</a>

STM32单片机学习笔记(一)

1、 AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速设备

2、 Stm32f10x.h相当于reg52.h(里面有基本的位操作定义),另一个为stm32f10x_conf.h专门控制外围器件的配置,也就是开关头文件的作用

3、 HSE Osc(High Speed External Oscillator)高速外部晶振,一般为8MHz,HSI RC(High Speed InternalRC)高速内部RC,8MHz

4、 LSE Osc(Low Speed External Oscillator)低速外部晶振,一般为32.768KHz,LSI RC(Low Speed InternalRC)低速内部晶振,大概为40KHz左右,提供看门狗时钟和自动唤醒单元时钟源

单片机中的一些常见电路

首先是在看一个喇叭电路时,通过单片机的一个IO口来控制PNP管的导通与否,进而控制这个喇叭是否工作,下面介绍NPN、PNP管的相关知识:

NPN和PNP主要就是电流方向和电压正负不同,说得“专业”一点,就是“极性”问题。

NPN 是用 B→E 的电流(IB)控制 C→E 的电流(IC),E极电位最低,且正常放大时通常C极电位最高,即 VC &gt; VB &gt; VE
PNP 是用 E→B 的电流(IB)控制 E→C 的电流(IC),E极电位最高,且正常放大时通常C极电位最低,即 VC &lt; VB &lt; VE

为什么大多数PCB板都是绿色的?

1、绿色的阻焊油墨是历史最悠久,且最便宜最普及的。
<center><img src="http://mcu.eetrend.com/files/2017-09/博客/100008169-27161-011.jpg&quot; alt="什么大多数PCB板都是绿色的?"></center>

MSP430单片机三种时钟的功能区别

MSP430单片机工作的系统时钟被分为了 MCLK、 SMCLK 和 ACLK 三个,可以根据需要关闭其中的一个几个或全部。

MCU 内需要时钟的单元包括 CPU 和部分片内外设,三种时钟的功能区别如下:

<font color="blue">1.MCLK:</font>主时钟( Main system Clock) ,专为 CPU 运行提供的时钟。 MCLK 频率配置的越高, CPU 执行的速度越快。虽然 CPU 速度越快功耗也越高,但高频率的 MCLK 可以让 CPU 工作时间更短。所以正确的低功耗设计并不是要尽量降低 MCLK,而是在不用 CPU 时立刻关闭 MCLK。在大部分应用中,需要 CPU 运算的时间都非常短,所以,间歇开启 MCLK(唤醒 CPU)的方法节能效果非常明显。

PCB设计中永恒不变的九项法则

尽管目前半导体集成度越来越高,许多应用也都有随时可用的片上系统,同时许多功能强大且开箱即用的开发板也越来越可轻松获取,但许多使用案例中电子产品的应用仍然需要使用定制PCB。在一次性开发当中,即使一个普通的PCB都能发挥非常重要的作用。PCB是进行设计的物理平台,也是用于原始组件进行电子系统设计的最灵活部件。本文将介绍几种PCB设计黄金法则,这些法则自25年前商用PCB设计诞生以来,大多没有任何改变,且广泛适用于各种PCB设计项目,无论是对年轻的电子设计工程师还是更为成熟的电路板制造商,都具有极大的指导性作用。

本文以下内容介绍了电子设计工程师在使用设计软件进行PCB布局设计及商业制造时应牢记并践行的十条最有效的设计法则。工程师无需按时间先后或相对重要性依次执行这些法则,只需全部遵循便可极大地改变产品设计。

法则一

单片机执行指令的过程

单片机执行程序的过程,实际上就是执行我们所编制程序的过程。即逐条指令的过程。计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。

取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。

分析指令阶段的任务是:将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。

计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。

一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线送入到存储器,然后逐条取出执行。但单片机中的程序一般事先我们都已通过写入器固化在片内或片外程序存储器中。因而一开机即可执行指令。

下面我们将举个实例来说明指令的执行过程:

STM32串口收数据的几种不同方式

本例程通过PC机的串口调试助手将数据发送至STM32,接收数据后将所接收的数据又发送至PC机,具体下面详谈。

<strong>实例一: </strong>

LDO的五大作用,最后一个很多人想不到

LDO【low drop output】低压差线性稳压器,是硬件人员熟悉的不能再熟悉的一种器件了,这是一种线性的降压型的电源管理芯片。

C语言预处理指令总结

预处理指令是以#号开头的代码行,#号必须是该行除了任何空白字符外的第一个字符。#后是指令关键字,在关键字和#号之间允许存在任意个数的空白字符,整行语句构成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些转换。

单片机C语言易错知识点

嵌入式操作系统(Embedded Operation System,EOS)是指用于嵌入式系统的操作系统。嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。嵌入式操作系统是负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能,是一种用途广泛的系统软件。

<font size="4" color="blue">嵌入式LINUX</font>

电子装置不可或缺的关键零组件:內存

所有使用者对「內存」这个名词可是一点都不陌生,因为所有的电子产品都必须用到內存,且通常用到不只一种內存,说它是一种「战略物资」也不为过!不过对于內存种类、规格与形式,很多人容易搞混,例如:身为「执行」程序(数据)的DRAM,以及「储存」程序与数据的FlashROM就是一例,这篇专辑将由浅入深为大家介绍各种新型內存的结构与运作模式。

<strong>內存的分类</strong>

电的內存是指电写电读的內存,主要分为两大类,如图一所示:

挥发性內存(VolatileMemory,VM):电源开启时数据存在,电源关闭则数据立刻流失(数据挥发掉),例如:SRAM、DRAM、SDRAM、DDR-SDRAM等。