EDN首页   博客首页

最新日志

发表于:2008-7-5 15:57:28
标签:项目  真空计  厚爱  机遇  

4

新的开始---写在第一个项目开始之际

开始做项目了,

学习了三个月,

前几天老总突然宣布让我接手WMC541电阻真空计项目。

独立完成,

做出一个能投入市场的产品!

是挑战,

更是机遇!

我会努力的,

不会愧对黄总的厚爱,

也为了更大的提升自己,

锤炼自己!

祝福我吧,

我千千万万的好友与同胞们!

系统分类: 生活点滴   |    用户分类:    |    来源: 原创

评论(2) | 阅读(359)
发表于:2008-6-17 17:14:23
标签:SPI  IIC  总线  接口  串行  

3

SPI与IIC的讨论

点击下载

SPI--Serial Peripheral Interface,串行外围设备接口,

Motorola公司推出的一种同步串行通讯方式,

是一种三线同步总线,因其硬件功能很强,

SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。

I2C--INTER-IC串行总线的缩写,

PHILIPS公司推出的芯片间串行传输总线。

它以1根串行数据线(SDA)和1根串行时钟线(SCL

实现了双工的同步数据传输。具有接口线少,控制方式简化,

器件封装形式小,通信速率较高等优点。

在主从通信中,可以有多个I2C总线器件同时接到I2C总线上,

通过地址来识别通信对象。

 

 SPIIIC2种不同的通信协议,现在已经广泛的应用在IC之间的通信中。并且不少单片机已经整和了SPIIIC的借口。但像51这种不支持SPIIIC的单片机,也可以用模拟时钟的工作方式进行SPIIIC的通信的。

 

IIC 接口的协议里面包括设备地址信息,可以同一总线上连接多个从设备,通过应答来互通数据及命令。但是传输速率有限,不能实现全双工,不适合传输很多的数据。
SPI
3线跟4线两种,4线的话,就是多了一条叫SDC的线,用来告知从设备现在传输的是数据还是指令。这个接口较快,可以传输较连续的数据。SPI要想连接多个从设备,就需要给每个从设备配备一根片选信号。如果要可以实现全双工,也是需要多加一根数据线。

 

SPI总线比IIC总线的速度快!IIC总线比SPI总线通讯线少!

 

什么是I2C总线

I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。
I2C总线特点
I2C总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。I2C总线的另一个优点是,它支持多主控(multimastering), 其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。
I2C总线工作原理
总线的构成及信号类型
I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。
I2C总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答信号。
开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。
结束信号:SCL为低电平时,SDA由低电平向高电平跳变,结束传送数据。
应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。
目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口。
总线基本操作
I2C规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送器,器件接收数据则定义为接收器。主器件和从器件都可以工作于接收和发送状态。 总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,并产生起始和停止条件。SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平的期间,SDA状态的改变被用来表示起始和停止条件。               

控制字节
在起始条件之后,必须是器件的控制字节,其中高四位为器件类型识别符(不同的芯片类型有不同的定义,EEPROM一般应为1010),接着三位为片选,最后一位为读写位,当为1时为读操作,为0时为写操作。如图2所示。

写操作
写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同。关于页面写的地址、应答和数据传送的时序参见图3。                       图3 页面写

读操作
读操作有三种基本操作:当前地址读、随机读和顺序读。图4给出的是顺序读的时序图。应当注意的是:最后一个读操作的第9个时钟周期不是“不关心”。为了结束读操作,主机必须在第9个周期间发出停止条件或者在第9个时钟周期内保持SDA为高电平、然后发出停止条件。

实例
X24C04与MCS-51单片机软硬件的实现
X24C04是XICOR公司的CMOS 4096位串行EEPROM,内部组织成512×8位。16字节页面写。与MCS-51单片机接口如图5所示。由于SDA是漏极开路输出,且可以与任何数目的漏极开路或集电极 开路输出“线或”(wire-Ored)连接。上拉电阻的选择可参考X24C04的数据手册。下面是通过I<sup>2</sup>C接口对X24C04进行单字节写操作的例程。流程图及源程序如下:

;名称:BSENT
;描述:写字节
;功能:写一个字节
;调用程序:无
;输入参数:A
;输出参数:无
BSEND: MOV R2,#08H ;1字节8位
SENDA: CLR P3.2 ;
RLC A ;左移一位
MOV P3.3,C ;写一位
SETB P3.2
DJNZ R2,SENDA ;写完8个字节?
CLR P3.2 ;应答信号
SETB P3.3
SETB P3.2
RET
在I2C总线的应用中应注意的事项总结为以下几点 :
1) 严格按照时序图的要求进行操作,
2) 若与口线上带内部上拉电阻的单片机接口连接,可以不外加上拉电阻。
3) 程序中为配合相应的传输速率,在对口线操作的指令后可用NOP指令加一定的延时。
4) 为了减少意外的干扰信号将EEPROM内的数据改写可用外部写保护引脚(如果有),或者在EEPROM内部没有用的空间写入标志字,每次上电时或复位时做一次检测,判断EEPROM是否被意外改写。

 I2C管理总线IntelIntegrated Circuit busI2C总线是一种由飞利浦公司开发的串行总线,产生于80年代,最初为音频和视频设备开发,现主要在服务器管理中使用。是两条串行的总线,用于连接微控制器及其外围设备。I2C总线包括一个两端接口,通过一个带有缓冲区的接口,数据可以被I2C发送或接受。利用I2C硬件总线技术可以对服务器的所有部件进行集中管理,可随时监控风扇、内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。主要的优点是其简单性和有效性。

 

 

系统分类: 单片机   |    用户分类:    |    来源: 整理

评论(4) | 阅读(810)
发表于:2008-6-17 17:07:46
标签:锁相环  原理  应用  设计  单片机  

4

锁相环的原理及应用

    随着现代电子技术的发展,具有高稳定性和准确度的频率源已经成为通信、雷达、仪器仪表、高速计算机及导航系统的主要组成部分。高性能的频率源可通过频率合成技术获得。随着大规模集成电路的发展,锁相式频率合成技术占有越来越重要的地位。由一个或几个高稳定度、高准确度的参考频率源通过数字锁相频率合成技术可获得高品质的离散频率源。

1 锁相环频率合成器的原理

1.1 锁相环原理

   锁相环(PLL)是构成频率合成器的核心部件。主要由相位比较器(PD)、压控振荡器(VCO)、环路滤波器(LP)和参考频率源组成。

锁相环是一种利用外部输入的参考信号控制环路内部振荡信号反馈控制电路。他的被控制量是相位,被控对象是压控振荡器。如图1所示,如果锁相环路中压控振荡器的输出信号频率发生变化,则输入到相位比较器的信号相位θv(t)θR(t)必然会不同,使相位比较器输出一个与相位误差成比例的误差电压Vd(t),经环路滤波器输出一个缓慢变化的直流电压Vc(t),来控制压控振荡器输出信号的相位,使输入和输出相位差减小,直到两信号之间的相位差等于常数。此时,压控振荡器的输出信号频率和输入信号频率相等,且环路处于锁定状态。

1.2 锁相环频率合成器原理

   如图2所示,锁相环频率合成器是由参考频率源、参考分频器、相位比较器、环路滤波器、压控振荡器、可变分频器构成。参考分频器对参考频率源进行分频,输出信号作为相位比较器参考信号。



   可变分频器对压控振荡器的输出信号进行分频,分频之后返回到相位比较器输入端与参考信号进行比较。当环路处于锁定时有f1=f2,因为f1=fr/Mf2=fo/N,所以有fo=Nfr/M。只要改变可变分频器的分频系数N,就可以输出不同频率的信号。

2 基于CD4046的锁相环频率合成器的设计

2.1 集成锁相环CD4046介绍

单片集成锁相环CD4046采用CMOS电路工艺,特点是电源电压范围宽(318 V),输入阻抗高(100 MΩ),动态功耗小。在电源电压VDD=15 V时最高频率可达1.2 MHz,常用在中、低频段。CD4046内部集成了相位比较器、相位比较器、压控振荡器以及线性放大器、源跟随器、整形电路等。

相位比较器采用异或门结构,使用时要求输入信号占空比为50%。当两路输入信号的高低电平相异时,输出信号为高电平,反之,输出信号为低电平。相位比较器的捕捉能力和滤波器有关,选择合适的滤波器可以得到较宽的捕捉范围。

相位比较器由一个信号的上升沿控制,他对输入信号的占空比要求不高,允许输入非对称波形,具有很宽的捕捉范围。相位比较器的输出和两路输入信号的频率高低有关,当14脚的输入信号比3脚的比较信号频率低时,输出为逻辑"0",反之则输出逻辑"1"。如果两信号的频率相同而相位不同,当输人信号的相位滞后于比较信号时,相位比较器输出的为正脉冲,当相位超前时则输出为负脉冲。而当两个输入脉冲的频率和相位均相同时,相位比较器的输出为高阻态。

压控振荡器需要外接电阻R1R2和电容C1R1C1是充放电元件,电阻R2起到频率补偿作用。VCO的振荡频率不仅和R1R2以及C1的取值有关,还和电源电压有关,电源电压越高振荡频率越高。

CD4046引脚和外围电路图如图3所示。

2.2 设计实例

本设计中参考频率源选用COMS石英晶体多谐振荡器产生2 MHz的矩形脉冲信号,电路如图4所示。

可变分频器由集成四位二进制同步加法计数器74LS161来完成。这里采用474LS161通过预置数的方法来实现可变分频。为提高工作速度可采用图5所示接法。利用同步方案最高可实现65 536分频。预制值=65 536-N。经过可变分频后获得的信号是窄脉冲信号,在输出端可利用74LS74对该信号进行二分频,以便获得方波信号,从而满足相位比较器I的占空比的要求。此时实际分频系数变为2N

参考分频器与可变分频器采用同样的电路,目的在于通过设置不同的分频系数M,以实现不同的频率间隔的需求。

本设计选取无源比例积分滤波器作为环路滤波器,其时间常数r=(R3+R4)C2。电路如图6所示。



2.3 电路的调试

在调试的过程中需注意R1R2C1的选取,选取不同的R1R2C1并合理设置可变分频系数N,就可获得不同频率范围的输出信号,同时根据所需情况注意选取合适的滤波器,设置不同的前置分频系数即可改变频率间隔。

3

该电路由于频率范围和频率间隔可根据具体需要进行调节,且输出信号频率具有高稳定性和准确性,可广泛作为离散信号源来使用,也可用于集成。此外,如用单片机对分频器的置数端进行控制,可更加方便地实现频率的调整。

 

图片看不清楚的请下载附件!点击下载 

 

系统分类: 单片机   |    用户分类:    |    来源: 整理

评论(3) | 阅读(562)
发表于:2008-5-31 14:51:10
标签:无标签

2

用I2C总线实现AD7416的多点温控系统

     下载地址:点击下载

     很好的一篇文章,思路也不错!

     希望大家喜欢!

系统分类: 单片机   |    用户分类:    |    来源: 整理

评论(3) | 阅读(325)
发表于:2008-5-31 14:42:46
标签:无标签

2

为什么51单片机常用11.0592MHz的晶振

 

为什么51单片机常用11.0592MHz的晶振

现在有许多极好的编译程序能显示代码,在速度和尺寸两方面都是非凡有效的。现代的编绎器非常适应寄存器和变量的使用方面,比手动编译有较好的优越性,甚至在其它常规方面,所以C应是看代码方面最合适的。   答1: 因为它能够准确地划分成时钟频率,与UART(通用异步接收器/发送器)量常见的波特率相关。特别是较高的波特率(19600,19200),不管多么古怪的值,这些晶振都是准确,常被使用的。
  答2: 当定时器1被用作波特率发生器时,波特率工作于方式1和方式3是由定时器1的溢出率和SMOD的值(PCON.7------双倍速波特率)决定:
   
方式1、3波特率= (定时器1的溢出率)
    特殊时,定时器被设在自动重袋模式(模式2,TMOD的高四位为0100B),其为:
   
方式1、 3波特率= 11.0592MHZ晶振的一些典型波特率如下:

波特率

SMOD

TH1

19200

1