2010年8月12日星期四

flashmagic erase option : code Rd Prot

code Rd Prot
means : Code Read Protection, or CRP

2010年8月9日星期一

dc 滤波器

滤波器/抗干扰/抗高频干扰(直流/交流/24V/220V/380V)
淘宝haseali
关键词 24v 滤波器
http://item.taobao.com/item.htm?id=2718470550

2010年8月5日星期四

当你不小心接触次级线圈其中一个接头的时候,不会发生触电

“当你不小心接触次级线圈其中一个接头的时候,不会发生触电”
-----------------------------------------
那次级的两端和大地总存在电位差,例如一端和地的压差为x,那么另一端和地的压差是x+220.由于x值不一定,那么还是有可能会触电身亡的。这样说对吗?

次级两端电压是一直存在的,但相对于大地是浮动的,因为感应的存在,有可能电压很高,用电笔试,可能次级两端都亮,用万用表测可能会有几十或几百伏,但感应电压一般电流很小,持续时间也短。隔离变压器的“地”是浮动的,浮动的意思就是可以随便改变。
假设,某一时刻变压器次级A端输出为0V,B端输出220V(其实220V说的是交流有效值,峰峰值大概300V,我们拿220来说),加 上感应100V(对于大地,假设),那么A端对地100V,B端对地320V。人的电位一般和大地比较接近,如果你不小心碰到A点,感应的100V电压会 形成电流流过身体(一般感觉不到),然后A端对地电位就和人、大地相等了,B段对地电位就被拉到220V;如果你不小心碰到B点,泻放掉100V感应电 后,B段对地电位就被拉到0V,A端对地电位就成-220V了,这就是“浮地”的作用。因为市电零线是已经连接大地的,所以摸零线不会触电,而摸火线会触 电,但是你可能也见过电工带电操作,他们不怕触电吗?那是因为维持的电压才会产生维持的电流,保持和大地的绝缘就能让人也“浮地”,接触220V火线后, 人的点位就跟随火线而变化(交流电),只要保持和大地、零线绝缘也不会发生触电事故(没必要不用去尝试)。

2010年3月29日星期一

74系列集成电路的分类及区别

74系列集成电路大致可分为6大类:
74××(标准型);
74LS××(低功耗肖特基);
74S××(肖特基);
74ALS××(先进低功耗肖特基);
74AS××(先进肖特基);
74F××(高速)。
HC为COMS工作电平;
HCT为TTL工作电平,可与74LS系列互换使用;
HCU适用于无缓冲级的CMOS电路。
这9种74系列产品,只要后边的标号相同,其逻辑功能和管脚排列就相同。根据不同的条件和要求可选择不同类型的74系列产品,比如电路的供电电压为3V就应选择74HC系列的产品。
补充: .
74 – 系列 这是早期的产品,现仍在使用,但正逐渐被淘汰。
2.74H – 系列 这是74 – 系列的改进型,属于高速TTL产品。其“与非门”的平均传输时间达10ns左右, 但电路的静态功耗较大,目前该系列产品使用越来越少,逐渐被淘汰。
3.74S – 系列 这是TTL的高速型肖特基系列。在该系列中,采用了抗饱和肖特基二极管,速度较高,但品 种较少。
4.74LS – 系列 这是当前TTL类型中的主要产品系列。品种和生产厂家都非常多。性能价格比比较高,目前 在中小规模电路中应用非常普遍。
5.74ALS – 系列 这是“先进的低功耗肖特基”系列。属于74LS – 系列的后继产品,速度(典型值为 4ns)、功耗(典型值为1mW)等方面都有较大的改进,但价格比较高。
6.74AS – 系列 这是74S – 系列的后继产品,尤其速度(典型值为1.5ns)有显著的提高,又称“先进超高 速肖特基”系列。
7.74HC – 系列 54/74HC – 系列是高速CMOS标准逻辑电路系列,具有与74LS – 系列同等的工作度和CMOS 集成电路固有的低功耗及电源电压范围宽等特点。74HCxxx是74LSxxx同序号的翻版,型号最 后几位数字相同,表示电路的逻辑功能、管脚排列完全兼容,为用74HC替代74LS提供了方 便。
8. 74AC – 系列 该系列又称“先进的CMOS集成电路”,54/74AC 系列具有与74AS系列等同的工作速度和与 CMOS集成电路固有的低功耗及电源电压范围宽等特点。



ACT 高性能CMOS逻辑门系列(输入TTL兼容 具缓冲功能)
AC 高性能CMOS逻辑门系列(具缓冲功能)
ALS 高性能低功耗逻辑门系列(TTL兼容 具缓冲功能)
AS 高性能逻辑门系列(TTL兼容 具缓冲功能)
C CMOS逻辑门系列 FCT
高速CMOS逻辑门系列 F
高速逻辑门系列(TTL兼容) HC-4XX
高速COMS逻辑门系列(TTL兼容) HCT-4XX
高速COMS逻辑门系列(TTL兼容) HCT
高速COMS逻辑门系列(TTL兼容) HC
采用CMOS接口器的逻辑门系列 LS
低功耗逻辑门系列(TTL兼容) S
高速逻辑门系列(TTL兼容) VHCT (TTL兼容 有TTL接口器)

2010年3月8日星期一

BNC

http://www.tz18.cn/ BNC全系列产品图

淘宝: 超臣电子BNC全系列产品

同轴连接器BNC-JJ 接头 (Q9头)

BNC-KK

BNC-KKY

2010年1月12日星期二

big endian和little endian

均是指低地址存放的是什么字节
little endian则是低地址存放最低有效字节(LSB),而big endian是指低地址存放最高有效字节(MSB)。
我们一般将endian翻译成“字节序”,将big endian和little endian称作“大尾”和“小尾”。
故事的起源 “endian”这个词出自《格列佛游记》。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开,由此曾发生过六次叛乱,其中一个皇帝送了命,另一个丢了王位。
现在主流的CPU,intel系列的是采用的little endian的格式存放数据,而motorola系列的CPU采用的是big endian.

2009年12月28日星期一

dxp pcb线条默认宽度调整方法:

1. 点击pcb Interactively route connections 图标,出现线条时按下Tab, 出现对话框,里面调整.
2. 菜单Design -->rules -->routing width 里面调整width 大小.

DXP如何修改PCB丝印层全部字符大小?

99SE有对任意字符的操作有一个Global选项,可以把改变应用于全局,那么DXP呢?

DXP也有全局功能。
1. 在丝印层任意字符上点右键,选“find similar object”,在弹出窗口中想要匹配项目后面选“same”,点“ok”会出现inspect窗口,在里面选择 Text Heigh 改成所需高度,回车就行了。
2. 恢复pcb常见视图.
执行完第一步操作时, pcb视图变为丝印层选择字符状态,即字符高亮显示, pcb线条看不见. 现在恢复如下. 任意位置上点右键, build quiery--> apply-->ok, 任意位置点左键. 即可看到pcb线条

2009年9月7日星期一

a b c 从大到小排列

#include
sort_three_element(int * a ,int * b ,int * c )//// a b c 从大到小排列
{ int h=*a> *b && * a> *c? *a:( *b> *c? *b: *c) ;
int j=*a> *b && *a< *c|| *a< *b&& *a> *c? *a:( *a< *b&& *a< *c?( *b> *c? *c: *b):( *b> *c? *b: *c)) ;
int k=*a< *b && * a< *c? *a:( *b< *c? *b: *c);
*a=h ;*b=j;*c=k;
}
int main()
{
int a=30,b=2,c=91;
sort_three_element(&a,&b,&c);
printf ("最大=%d, 中间=%d, 最小=%d\n", a,b,c);
return 0;
}

2009年9月4日星期五

50Hz 有效值测量

确认抽样值是抽取的一个周期里的样本点. 即就是用matlab画出样本点数据.arm程序设定为64点抽样.在ads中查看抽样点数据,然后导入到matlab中绘图.
x1=1:64
% y1=[3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3235 3000 2803 2623 2478 2352 2242 2149 2065 ...
% 1994 1930 1869 1824 1782 1743 1711 1675 1656 1633 ...
% 1611 1598 1579 1569 1556 1550 1537 1533 1524 1524 ...
% 1514 1527 1978]
% % subplot(3,1,1)
% plot(x1,y1)

y2=[1669 1640 1624 1604 1591 1575 1559 1550 1540 1530 ...
1524 1511 1511 1504 1591 2027 2362 2678 2935 3171 ...
3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
3296 3296 3296 3296 3296 3296 3296 3190 2951 ...
2758 2581 2442 2313 2213 2117 2043 1969 1969 ...
1846 1798 1765 1720 1691 ]
%subplot(3,1,2)
plot(x1,y2)

%
% y3=[3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 3296 ...
% 3296 3235 3000 2803 2623 2478 2352 2242 2149 2065 ...
% 1994 1930 1869 1824 1782 1743 1711 1675 1656 1633 ...
% 1611 1598 1579 1569 1556 1550 1537 1533 1524 1524 ...
% 1514 1527 1978]
% subplot(3,1,3)
% plot(x1,y3)

2009年9月1日星期二

LM7805 LM2575 比较

7805转换效率比较低,只有40%左右,但是输出纹波很小,对于单片机这种对电源要求比较高的元件而言很适合,
而2575和2596开关型的稳压芯片,转换效率可以达到75%甚至80%以上,但是输出有纹波,很可能让单片机出现重启现象。

2009年7月27日星期一

vb 中文件系统, 目录的操作

FSO 对象模型编程包括三项主要任务:
FSO 对象模型包含在一个称为 Scripting 的类型库中,此类型库位于 Scrrun.Dll 文件中。如果还没有引用此文件,请从“属性”菜单的“引用”对话框选择“Microsoft Scripting Runtime”项。然后就可以使用“对象浏览器”来查看其对象、集合、属性、方法、事件以及它的常数。

使用CreateObject 方法,或将一个变量声明为 FileSystemObject 对象类型来创建一个 FileSystemObject 对象。


例如: 下面代码创建目录,删除目录

Private Sub Form_Load()

'获得 FileSystemObject 的实例。
Dim fso As New FileSystemObject
Dim fldr As Folder, s As String
'获取 Drive 对象。
Set fldr = fso.GetFolder("c:")
' 显示父文件夹名。
Debug.Print "Parent folder name is: " & fldr
' 显示驱动器名。
Debug.Print "Contained on drive " & fldr.Drive
' 显示根文件名。
If fldr.IsRootFolder = True Then
Debug.Print "This folder is a root folder."
Else
Debug.Print "This folder isn't a root folder."
End If
' 用 FileSystemObject 对象创建一个新的文件夹。
fso.CreateFolder ("c:\Bogus")
Debug.Print "Created folder C:\Bogus"
' 显示文件夹的基本名称。
Debug.Print "Basename = " & fso.GetBaseName("c:\bogus")
' 删除新建的文件夹。
fso.DeleteFolder ("c:\Bogus")
Debug.Print "Deleted folder C:\Bogus"
End Sub

2009年7月14日星期二

vb

google vb example

http://www.java2s.com/Code/VB/CatalogVB.htm
http://www.profsr.com/vb/vbintro.htm#content
http://patorjk.com/programming/vb6examples.htm
http://pages.cpsc.ucalgary.ca/~saul/vb_examples/index.html

2009年7月13日星期一

qt

recommend:
http://www.qt-apps.org



AnalogWidgets: owned by www.3electrons.com
http://www.qt-apps.org/content/show.php/AnalogWidgets?content=87780

2009年6月24日星期三

jlink 在easyarm2200上的使用

http://www.zlgmcu.com.cn/dispbbs.asp?boardid=29&id=7944&page=&star=2

现将JLINK V7调试EASY ARM2200方法写于下,希望对有相同问题的兄弟有所帮助:
A。片外RAM设置 BANK0-- RAM BANK1- FLASH;

JLINK下载是不成功的。因为LPC2214 的写信号reset 后默认为GPIO,因此,为了保证仿真器能够下载程序到SRAM 中,还需要重新配置,使能WE 信号,配置BLS1:0 信号,保证程序下载成功。在axd 内的命令行(System Videws---> Command Line Interface) 执行ob c:\lpc2214.ini。此文件内容见后。此文件建立方法:

在文本编辑器中输入如下命令:

com meterchen www.ZLGMCU.com

spp vector_catch 0

smem 0xffe00000 0x1000ffef 32

smem 0xe002c014 0x0F814914 32

rld

B。片外FLASH设置 BANK0-- RAM BANK1- FLASH;
先将程序通过J-FLASH下载后,在加载调试文件。因为在AXD中载入相应的image(如果是在IDE工程中启动的AXD,则会在AXD启动的同时载入相对应工程的image)。注意,由于在AXD 中并不能对flash 进行编程,因此在对程序调试的时候,必须先将程序烧写到flash 中,否则AXD 可以显示正确的相关源代码,但是仿真不能正确进行!

2009年6月23日星期二

74hc595

fsd

ghost 备份 (GHO GHS 文件 )

问题一:做GHOST时,产生了两个文件,一个是GHO,一个是GHS文件,这两个文件什么关系?
问题二:以前用ghost还原回来,即系统恢复时,只要选择GHO文件就行了,可现在确是先选择GHO文件,后又要选择GHS文件,这是什么原因?

答;
GHOST备份出来的文件是不能超过2G的,超过2G它会生成GHS文件,同样,1个GHS文件也不会超过2G,如果超过,就会继续生成新的GHS文件,不信可以看一下那个GHO文件,绝对不会超过2G的

arm 调试

这篇文章总结了刚接触ARM的网友们的常见问题,希望对快速掌握ARM调试有帮助。
1 - 检测不到目标系统
调试前,请把目标板连接好,然后用调试软件检测目标系统。如果检测不到目标系统,请做以下的检查。
A - 有些芯片是可以加密的,加密后JTAG接口就自动被禁用掉了;
B - 确定你的连接是正确的;
C - 确定你使用的仿真器是被调试软件支持的
D - 对WIGGLER而言,因为没有固定的电路图,所以需要在软件里做相应的设置;
E - 对LPC2000系列而言,RTCK管脚一般是用来控制是否使能JTAG接口的,请查阅数据手册;
F - 如果你用的芯片比较特殊,例如STR91X,因为内部扫描链是串接的,请设置好TAP,以 让仿真器知道扫描链的长度;

2 - 程序下载不正确,程序跑飞
一般的用户,刚开始调试的时候,编译好程序,就直接点击调试。但结果发现调试根本没有按照预期的进行。发生这种问题一个最常见的原因是程序根本没有正确下载到目标系统中。
对SDRAM而言,上电后一般都是不可以使用的,需要进行相应的配置才可以使用。所以如 果是在SDRAM里进行调试,请先对SDRAM进行配置,或者确定SDRAM已经初始化好了。如果是内部SRAM,一般来说,可以直接使用。所以,做一般的测试,最简单的办法是使用片sram。
在调试的时候,最好是自己通过内存观察窗口判断一下,程序是否是下载到期望的地址去了,下载是否正确。以免出现调试跑飞的问题。

3 - 软件断点和硬件断点的区别和数量限制
所有的ARM7/ARM9芯片,内部有2个断点单元。断点单元可以用于设置硬件断点或是软件断点先说说硬件断点和软件断点的区别。硬件断点是通过监测地址来触发断点的。所以,硬件断点可以设置在任何地方,不管是FLASH,ROM还是RAM,只要给定地址就可以了。而软件断点是通过监测特定的指令来触发断点的。在某个地址设置软件断点的时候,仿真器会将这个地址 的数据/指令替换成一个特殊格式的指令。断点单元通过监测这个特殊格式的指令来触发断点. 因为需要执行替换操作,所以软件断点只能设置在RAM里面。如果断点单元设置成监测某个地 址,那一个断点单元只能监测一个地址,所以只能设置2个硬件断点。如果断点单元设置成监测某个固定格式的指令,那一个断点单元可以支持数量没有限制的软件断点。因为设置软件断点的时候只需要把要说着断点的位置的数据替换成被监测的固定格式的指令就可以了。这 就是为什么大家经常看到说支持2个硬件断点和数目不限的软件断点。但这里还是要提醒以下, 如果2个断点单元都用于硬件断点,那用户就不可以设置软件断点了。

4 - 在FLASH内进行调试
在FLASH进行调试,本质上来说,和在SDRAM/SRAM里调试是一样的。区别是,FLASH是只读的,对FLASH进行写操作的时候,需要特别的命令。如果IDE支持直接将程序烧写到FLASH进行调试,那调试就会和在RAM里差不多。如果IDE不支持自动下载,可以先通过烧写软件将要调试的程序烧写到FLASH里面,然后在进行调试。在FLASH和RAM里面进行调试的另外一个区别在与可使用 的断点数量。因为FLASH是只读的,所以只能使用硬件断点,所以最多只能使用2个断点。很多 时候,单步运行也需要一个断点来实现,所以,用户只能使用一个断点。清楚了这点,碰到提示说没有断点可以使用了,不能设置断点,或者不能单步运行的时候,就知道是怎么回事情了。

5 - 软件断点被覆盖
前面我们提到,软件断点是通过替换指令来实现的。这就存在一个可能,设置好的软件断点被 覆盖掉了。特别是自拷贝程序,仿真器在拷贝前在某个地址设置了一个软件断点。然后执行拷操作,这样的结果是设置断点的位置的值由于自拷贝而发生了改变,由于新的值并不是被监测 的特殊指令,所以这个断点就会失效。造成在这个位置程序不能停止的情况。这样的情况相对来说比较少,这里只是提醒一下,希望对碰到类似情况的朋友有帮助。

6 - 反汇编调试
在调试的时候,一般看的都是源文件,汇编或C语言。如果调试的时候发现运行与期望的不一 或是跑飞,可以看看反汇编,单不运行几步,然后通过观察寄存器和内存来判断每条指令的运 行是否正确。

7 - 调试的时候,注意内存观察窗口对调试的影响
在调试的时候,如果内存观察窗口打开了,每次目标板被停止后,DEBUGGER都会通过调试代理 读取内存,更新内存观察窗口的值。一般情况下,这样做都不会带来什么影响。但有个特殊情况 必须要注意。在某些情况下,调试目标的某些寄存器有特别的地方。例如,有些寄存器,只能读 取一次,读取后它们的值就会变化。在这种情况下,因为更新内存观察窗口的值的时候会执行一 次读操作,所以程序重新运行的时候,在读取寄存器的值的时候,该值已经改变了,程序运行出 现不期望的情况。有个网友遇到过这个问题,请参考下面的帖子:

h-jtag faq

H-jtag
Q. 如何设置调试器 (ADS/SDT/REALVIEW)?
A. ADS/AXD -> options -> configure target -> add -> 在 h-jtag 安装目录中选择 h-jtag.dll -> click OK

SDT/ADW -> options -> configuration debugger -> target-> add ->在 h-jtag 安装目录中选择 h-jtag.dll-> click OK

RealView -> File -> Connection -> connect to target -> Right click on ARM -> Add/Remove/Edit Devices -> Add DLL -> 在 h-jtag 安装目录中选择 h-jtag.dll -> Configure

Q. 如何配置 KEIL?
A. KEIL->PROJECT->OPTIONS FOR TARGET->DEBUG->USE RDI Interface Driver ->SETTING->BROWSER->在 h-jtag 安装目录中选择 h-jtag.dll。

Q. 不能加载 h-jtag 驱动。
A. h-jtag 驱动没有正确安装。需要使用管理员权限重新安装驱动。

Q. Too many breakpoints.
A. 通常这是由于 vector catch/semihosting 导致的。 使用 vector catch/semihosting 会消耗断点资源。如果所有端点可用资源都被占用了,就会显示这条消息。注意,所有为 vector catch and semihosting 设置的端点对用户来说都是不可见的。这些端点不可以通过 "delete all breakpoint" 指令来消除。如果要消除这个消息,请在调试器设置中禁用vector catch and semihosting。

Q. The statement into which was stepped is singular (i.e. it has no exit)。
A. 由于设置了 vector catch/semihosting 而产生了不可见断点导致的。要清除这个消息,请在调试器设置中禁用 vector catch。

Q. Execution stopped, because of an unknown breakpoint (this indicates an internal error).
A. 由于设置了 vector catch/semihosting 而产生了不可见断点导致的。要清除这个消息,请在调试器设置中禁用 vector catch 。

Q. The processor is reset.
A. 要清除这个消息,请在调试器设置中禁用 vector catch。

Q. Unrecognized swi.
A. 要清除这个消息,请在调试器设置中禁用 semihosting。

关注者