技术标签: M0 产品 Cortex-M0 测试 M051 ARM 工作 NUC flash
NuMicro M051系列微控制器本身有对系统电压进行检测的功能,一旦系统电压低于设定的门限电压后,将自动停止正常运行,并可设置进入复位状态。当系统电压稳定恢复到设定的门限电压之上,将再次启动运行,即相当于一次掉电再上电的复位。
作为一个正式的系统或产品,当系统基本功能调试完成后,一旦进行现场测试阶段,请注意马上改写芯片的配置位,启动内部欠压电压检测功能。NuMicro M051系列微控制器支持宽电压工作范围,但是经常工作在5V或3V系统,有必要进行适当的配置。对于5V系统,设置欠压电压为4.5V;对于3V系统,设置欠压电压为2.7V。当允许欠压电压检测时,一旦NuMicro M051系列微控制器的供电电压低于设置的欠压值,它将会进入复位状态,不执行程序,然而当电源恢复到欠压电压值以上时,它才正式执行程序,以保证系统的可靠性。
由于NuMicro M051系列微控制器是宽电压工作的芯片,例如在一个5V的电子系统中,当电压跌至2.3V时,它本身还能工作,还在执行指令程序,但这时出现2个可怕的隐患:
l 2.3V时,外围芯片工作可能已经不正常了,而且逻辑电平严重偏离5V标准,NuMicro M051系列微控制器读取到的信息不正确,造成程序的执行发生逻辑错误(这不是NuMicro M051本身的原因)。
l 当电源下降到一个临界点,如2.1V时,并且在此抖动,这样将使NuMicro M051运行的程序不正常,取指令、读/写数据都可能发生错误,从而造成程序乱飞,工作不稳定。
由于NuMicro M051本身具有对片内Flash写操作指令,在临界电压附近,芯片工作已经不稳定了,硬件的特性也是非常不稳定,所以在这个时候,一旦程序跑飞,就可能破坏Flash中的数据,进而使系统受到破坏。
典型的故障现象如下:
1) Flash中的数据突然被破坏,系统不能正常运行,需要重新下载程序。
2) 电源关闭后立即上电,系统不能运行,而电源关闭后一段时间再上电,系统就可以正常工作。
实际上,任何的单片机都会出现这样的问题,因此在许多系统中,需要使用专门的电源电压检测芯片来防止这样的情况出现。因此,NuMicro M051有必要设置欠压电压值检测,对于系统可靠性的提高绝对是有利无害的,欠压电压值明细表如下表19.8-1。
表19.8-1 欠压电压值明细表
参数 |
最小值 |
典型值 |
最大值 |
单位 |
测试条件 |
欠压电压 BOV_VL [1:0] =00b |
2.1 |
2.2 |
2.3 |
V |
|
欠压电压 BOV_VL [1:0] =01b |
2.6 |
2.7 |
2.8 |
V |
|
欠压电压 BOV_VL [1:0] =10b |
3.7 |
3.8 |
3.9 |
V |
|
欠压电压 BOV_VL [1:0] =11b |
4.4 |
4.5 |
4.6 |
V |
|
BOD电压迟滞范围 |
30 |
- |
51 |
mV |
VDD = 2.5V~5.5V |
……………………………………
书籍名称:ARM Cortex-M0原理与应用实践
书籍下载地址:http://download.csdn.net/detail/k125008301/4070709
Vue实现手动ajax上传并将文件转成Base64编码字符串传给后端最近初学vue项目中要用到上传功能,因为element-ui默认通过action上传,不够灵活,看了官方文档之后,改用其中属性http-request实现自定义上传(http-request: 覆盖默认的上传行为,可以自定义上传的实现)先贴一下element-ui Upload 上传的属性参数说明类型默认值action必选参数,上传的地址stringheaders设置上传的请求头部objec
标准库的String类型详解String 是C++标准库STL里面的一种常用的容器,(相当于保存数据类型为char的vector容器)。这个类提供了相当丰富的函数来进行对自身元素字符串的操作,以及与C风格字符串之间的转换。在C语言里,处理字符串是一件相当困难的事。(因为通常在使用字符串操作的时候会用到一个相当不容易驾驭的类型:指针)比如下面这个例子:1...
参考文章:wireshark抓包wiresharkIP过滤准备工作安装 WireShark准备 iphone 测试机数据线一根连接获取手机 UUID手机通过数据线连接电脑,如果电脑是 Mac,碰巧也安装了 XCode,那直接打开 XCode,选择 Window --> Devices and Simulators,就可以看到 UUID。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vDD5l0I7-1590465626278)(evernot
一、编写目的最近一段时间想用springboot+dubbo+zookeeper做毕设,所以就去配了一下,最后用了3天才配好。原因嘛,网上各种配置五花八门,特别是有些依赖都不知道用来干什么,所以特意写下这篇博客。供大家学习参考,各位路人大佬路过也多多指点。二、准备工具及安装①既然用dubbo怎么能没有dubbo-domain链接:https://pan.baidu.com/s/1pOLQb...
LogicLib.nsh 程序的三种基本结构包括:顺序结构、分支结构、循环结构。顺序结构是最基本的结构,本文主要说明了如何在NSIS脚本中写出分支结构和循环结构。 最基本的分支结构和循环结构可以用StrCmp命令和Goto命令组成,但通过这种方式写出的代码可读性极差且难以调试。此时我们就...
简单粗暴的解决方式进入mysqlmysql -u 用户名 -p输入密码即可2.直接输入SQL语句[email protected]@GLOBAL.sql_mode=“NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”;若成功会提示OK的字样此时解决成功!...
一、业务场景前端本地开发的场景中,我们需要频繁的改动代码,并需要实时看到效果,并且在一些开发场景中,我们需要将特定的请求代理到特定的IP、本地文件等,所以使用fiddler或whistle等本地、真机抓包调试工具是非常必要的。二、为什么使用whistle在历史的长河中,我们是使用fiddler+willow再搭配小米wifi 进行本地和真机抓包调试的,无可厚非,...
##1 SSL###1.1 简介SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。SSL (Secur...
jstl中<c:out>标签的escapeXml属性讲解例1:<c:out vlaue="AAA"><p>BBB</p></c:out>这个代码段的作用是将属性value中的内容输出当然运行jsp返回页面的值是AAA== 1. 标签体内BBB为什么不会被输出?==== 2. 如果value取到值为空怎么办?==例...
char, BSTR, _bstr_t, CComBSTR之间的互相转换char: To BSTR: _com_util::ConvertStringToBSTR CString的AllocSystemString T
CPU经常会成为系统性能的瓶颈,可能:内存泄露导致频繁GC,进而引起CPU使用率过高代码Bug创建了大量的线程,导致CPU频繁上下文切换通常所说的CPU使用率过高,隐含着一个用来比较高与低的基准值,比如JVM在峰值负载下的平均CPU利用率40%CPU使用率飙到80%就可认为不正常JVM进程包含多个Java线程:一些在等待工作另一些则正在执行任务最重要的是找到哪些线程在消耗CPU,通过线程栈定位到问题代码如果没有找到个别线程的CPU使用率特别高,考虑是否线程上下文切换导致了CP_1671465600
1.HTTP简介http协议是一种超文本传输协议,主要应用在浏览器与服务器之间的通信,可以传输文本,图片,视频等。它是一种应用层协议,也是基于TCP协议,当然现在流行的Https协议是在TLS或SSL协议层上面。如下图所示:HTTP是一个应用层协议,是一个无状态协议,默认端口号是80.,HTTPS端口号为443。HTTP的特性:(1) 协议简单,只用传递请求方法和路径,程序规模小,通信速度快。(2)可以指定传输类型,由Content-Type标记。(3)HTTP0.9 和 1.0使用非持续连接