一个关于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了. 随 ...
随机推荐
- JDK1.8源码(四)——java.util.Arrays 类
java.util.Arrays 类是 JDK 提供的一个工具类,用来处理数组的各种方法,而且每个方法基本上都是静态方法,能直接通过类名Arrays调用. 1.asList public static ...
- Spring Boot应用的后台运行配置
酱油一篇,整理一下关于Spring Boot后台运行的一些配置方式.在介绍后台运行配置之前,我们先回顾一下Spring Boot应用的几种运行方式: 运行Spring Boot的应用主类 使用Mave ...
- 漫谈Java IO之基础篇
Java的网络编程如果不是专门搞服务器性能开发或者消息分发,几乎可能涉及不到.但是它却是面试找工作必问的一个知识点,涵盖的知识体系也非常广泛,从Java底层IO原理到操作系统内核组成,再到网络TCP. ...
- 安装Oracle客户端和plsql
Oracle 客户端安装 + pl/sql工具安装配置 Oracle 客户端安装 + pl/sql工具安装配置 下载oracle客户端,并在本地安装. 11g下载地址为: http://www ...
- lua精灵移除报对象非法
function addLeftCard(isVisible) if self.left_CardSprite == nil then self.left_CardSprite = cc.Sprite ...
- Java读取文件存储到mysql
写了一批Lua脚本,要放到数据库里面,调用的时候进行计算,由于有太多lua脚本,就写了个程序来录入. 下面主要分三个部分: public static String readToString(Stri ...
- 201621123062《java程序设计》第八周作业总结
1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 思维导图: 2. 书面作业 2.1ArrayList代码分析 2.1.1 解释ArrayList的contains源代码 源 ...
- MySQL 服务安装及命令使用
MySQL 服务安装及命令使用 课程来源说明 本节实验后续至第17节实验为本课程的进阶篇,都基于 MySQL 官方参考手册制作,并根据实验楼环境进行测试调整改编.在此感谢 MySQL 的开发者,官方文 ...
- 几款有用的AndroidStudio插件
1.Android Parcelable code generator 顾名思义,这是个生成实现了Parcelable接口的代码的插件. 在你的类中,按下alt + insert键弹出插入代码的上下文 ...
- JFinal项目发送邮件——jfinal-mail-plugin
JFianl框架: JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful.在拥有Java语言所有 ...