一个关于C8051F350模拟电源的小问题
前言
多做重要而不紧急的工作,慢慢的就会发现重要而紧急的工作没那么多了
工作方法
今天有好几个同事出差去现场实验了,为了今天的顺利成行,昨天加了个班,但是从项目管理的角度或者说做事的方法上来讲,这次加班完全可以避免。主要是开发APP的同事发现数据不正常之后,一直没有和我沟通,直到昨天下午,做出差前的准备时,才告诉我有问题。而且还有其他很多组件要同时调试,我也没办法很好地使用各种资源。所以,如果总是习惯于把重要不紧急的事情发展成重要且紧急的事情,总归有人要背锅。作为项目的一份子,我做的也不到位,没有很好地跟进项目的状态。在以后的项目中,要吸取这个项目的教训,明确项目中各项工作的轻重缓急,在执行过程中,贯彻尽可能地早处理和多处理重要且不紧急的工作,随着项目的进行,重要且紧急的工作就会慢慢减少,整个项目完成起来就会比较轻松,手忙脚乱的情况就会少一些。切记不要把重要不紧急的工作发展成重要且紧急的工作。
技术问题
这次的问题说起来也是怪自己。这款小仪器不是我研发的,但原理比较简单,由于负责的同事手头上活比较多,所以移交到我这里。
在调试过程中,我也是偷懒了,碰到一些不明了的问题,没有仔细思考,一般是第一时间去咨询研发人,这也就为这次的问题的出现买下来伏笔。
电路方面就不多说了,问题的核心出在C8051F350芯片内部AD上,具体现象为:
- 开关按下后,各部分供电正常,但MCU不能正常工作(概率事件)
- 在程序正常工作时(指示灯能够闪烁),AD值不正常,重启后,如果能够启动,AD值有可能发生变化,AD值随机,无规律
分析过程
由于之前调试过一次样机,工作正常,所以基本上可以排除软件出问题的可能性,但是还是单步调试了一下,有意思了,单步调试时,能够正常工作...
接下来,我就怀疑复位电路有问题,导致350没能够启动起来,但是看了一下复位电路,实在是太简单了,就是阻容电路,出问题的可能性也很小...
这时候,领导提议更换主芯片,换了之后问题依旧,而且按下开关,不能启动的概率更高了...
在我焊接芯片的时候,领导就跑了...考虑到AD值不断变化,就想到是不是350的ADC没有能够启动起来,350模拟电源的供电部分,我一直有一点点疑问,会不会是这里出了问题呢?

同事为模拟电源预留了两个来源,一个是3.3V电源,一个是3.0V参考电源。按照他的说法,默认焊接R11,就是利用3.0V参考电压源供电。从理论上分析(参考下图,需要输入的电流很小),貌似没有什么问题,REF5030提供的电流也是足够的(10mA)。

我自己在做设计的时候,是直接用3.3V供电的,而且我记得官方有块开发板还是参考设计,也是直接用3.3V供电的,所以我就把R11焊下来,把R10两个焊盘直接短接。问题就得到了解决。
结束语
说实在的,还是有点懵,因为没找到理论支撑说服自己,感觉有点稀里糊涂的。希望有大神路过的时候,顺便指点一下。
一个关于C8051F350模拟电源的小问题的更多相关文章
- 用c#写的一个局域网聊天客户端 类似小飞鸽
用c#写的一个局域网聊天客户端 类似小飞鸽 摘自: http://www.cnblogs.com/yyl8781697/archive/2012/12/07/csharp-socket-udp.htm ...
- python(三)一个文件读写操作的小程序
我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1. ...
- 笔试题&面试题:找出一个数组中第m小的值并输出
题目:找出一个数组中第m小的值并输出. 代码: #include <stdio.h> int findm_min(int a[], int n, int m) //n代表数组长度,m代表找 ...
- 一个基于ES5的vue小demo
由于现在很多vue项目都是基于ES6开发的,而我学vue的时候大多是看vue官网的API,是基于ES5的,所以对于刚接触项目的我来说要转变为项目的模块化写法确实有些挑战.因此,我打算先做一个基于ES5 ...
- VC++:制作一个控件注册的小工具
在平时的工作中,时常需要注册与反注册ActiveX控件,有时需要判断控件是否已经注册. 所以通过查找资料编写了一个控件注册的小工具,欢迎学习交流,不当之处请多多交流. 先直接上图: 主要代码: ...
- 利用@keyframe及animation做一个页面Loading时的小动画
前言 利用@keyframe规则和animation常用属性做一个页面Loading时的小动画. 1 @keyframe规则简介 @keyframes定义关键帧,即动画每一帧执行什么. 要使用关键帧 ...
- 让一个div拖动和让一个panel拖动加拉大拉小
一.让一个div拖动 <!doctype html> <html xmlns="http://www.w3.org/1999/xhtml"> <hea ...
- 如何开发一个简单的HTML5 Canvas 小游戏
原文:How to make a simple HTML5 Canvas game 想要快速上手HTML5 Canvas小游戏开发?下面通过一个例子来进行手把手教学.(如果你怀疑我的资历, A Wiz ...
- 写了一个常规性生成merge 的小脚本
现在使用数据库来写存储过程,动不动参数就会用到xml ,当然罗,优势也很明显,参数相对固定,而且灵活,如果要修改或者什么的,中间接口层也不需要做变化,只需要修改封装的存储过程以及程序传参就ok了. 随 ...
随机推荐
- 兼容的Ajax
/** * 创建XMLHttpRequest对象 * @param _method 请求方式: post||get * @param _url 远程服务器地址 * @param _async 是否异步 ...
- java大数(BigInteger)
JAVA之BigInteger 用Java来处理高精度问题,相信对很多ACMer来说都是一件很happy的事,简单易懂.用Java刷了一些题,感觉Java还不错,在处理高精度和进制转换中,调用库函数的 ...
- 【Python】 zabbixAPI的包装pyzabbix
pyzabbix pyzabbix是zabbixAPI的第三方python包装.从网上莫名其妙地搞到了一份源码,看了一下之后发现实现方法还蛮巧妙的,感觉挺好的就记下来了.那些个源码本身其实也是一个个单 ...
- 内部办公网与IDC机房的GRE隧道配置实践
背景 公司内网与机房服务器为了实现用内网IP通信的功能,故使用了linux的IP gre隧道的方式.使得公司内部可以直接通过路由直连的方式访问机房服务器. 拓扑图如下: 注:拓扑中的外网IP为虚构的I ...
- linux --> vimrc的配置
vimrc的配置 .vimrc文件: " 去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限 set nocompatible "代码补全 set completeopt ...
- [luogu1168]中位数_优先队列
中位数 题目大意:输出读入的前2*k+1个数的中位数.一共有n个数,按照读入顺序. 注释:$1\le n \le 10^9$. 想法:这是优先队列的一个应用qwq.我们弄两个堆.小根堆和大根堆,保证: ...
- php正则相关知识点
关于正则,其实简单就是搜索和匹配.php,java,python等都是支持正则的,php正则兼容perl.好多同学觉得正则比较难,比较抽象,其实正则是非常简单的,主要是一个熟悉和反复练习的结果,还有一 ...
- 用java理解程序逻辑小结
1.Java常见的注释有哪些,语法是怎样的? 1)单行注释用//表示,编译器看到//会忽略该行//后的所文本 2)多行注释/* */表示,编译器看到/*时会搜索接下来的*/,忽略掉/* */之间的文本 ...
- 使用redis的比较完美的加锁解锁
使用redis的比较完美的加锁解锁 tags:redis read&write redis加锁和解锁 php 习惯性说一下写这篇文章要说明什么,我们经常用redis进行加锁操作,目的是为了解决 ...
- 利用jmeter进行数据库测试
1.首先,用jmeter进行数据库测试之前,要把oracle和mysql的JDBC驱动jar包放到jmeter安装路径的lib目录下,否则会提示错误 2.添加一个线程组,如下图 3.接下来添加一个JD ...