用单片机的I/O口模拟I2C协议 I2C用IO模拟程序网上范例最多的就是51的程序了,这些范例的正确性无需怀疑.但是如果直接以它为蓝本将它"AVR化",一不留神,就会有点问题了. 这要从I2C的硬件规范和AVR及51单片机的IO口说起.I2C要求SCL,SDA二线都有 线与 功能,即I2C驱动口应该是 漏极开路 电路,其高电平的维持是靠上拉电阻来实现的, 而低电平则需要驱动口的强下拉能力. 51单片机IO口正好完全符合这个特性.写起I2C驱动颇为得心应手.但是AVR的IO口强大了,它输出的高电平是实实在在的高电平,而不是靠什么上拉电阻来提供,只有10mA都不到的电流!于是如果直接使用 PORTB_Bit0 = 1这样的操作,就不能满足I2C的线与功能了,如果此时有别的设备要将SCL或者SDA拉低,那么结果就是二个IO口打架,谁赢谁输不得而知,时间长了,多半是两败俱伤,芯片发热吧. 当然AVR的IO口自然有办法满足I2C的电气特性要求,不就是不能输出1么,那么用它的高阻状态即可(DDRB_Bit0=0,PORTB_Bit0=0即可),要输出0么(DDRB_Bit0=1,PORTB_Bit0=0).
上传时间: 2016-07-19
上传用户:gxrui1991
用MATLAB产生FSK调制信号 1.实验要求: (1)随机产生一个包含十个元素的数组,该数组中的元素非0即1,用作FSK信号的输入数据。 (2)对该数组中的二进制数进行FSK调制,0调制在5000Hz上,1调制在8000Hz上,码元速率为200码元/秒。 (3)画出所产生的FSK信号的时域图形和频域图形。
上传时间: 2014-06-19
上传用户:pompey
计算mahalanobis(即马氏)距离
标签: mahalanobis 计算
上传时间: 2014-01-11
上传用户:Zxcvbnm
用汇编语言编写的贪食蛇小程序,有撞墙功能,即撞墙后游戏结束
上传时间: 2016-07-23
上传用户:kr770906
数字上变频DUC是与数字下变频ddc相对应的工作.目前实现方式主要有:专用芯片,通用DSP和FPGA实现三种.本程序即给出了XILINX公司的Digital Up Converter核心程序(IP CORE)以及响应的使用说明,对于从事雷达,无线通信的工程人员和研究者有很大用处.
标签: Converter Digital XILINX FPGA
上传时间: 2016-07-24
上传用户:jing911003
PLC程序根据定义的通信协议(即 PLC接收信息 帧的格式和定义 )识别其信息 内容。通过PC 的 COM1与S7-200 PLC的 RS一232端口的串行硬件连接,然后通过对 S7—200系列 PLC进行通信编程 ,就可实现与上位机通信 。
上传时间: 2016-07-28
上传用户:lnnn30
PLC程序根据定义的通信协议(即 PLC接收信息 帧的格式和定义 )识别其信息 内容。通过PC 的 COM1与S7-200 PLC的 RS一232端口的串行硬件连接,然后通过对 S7—200系列 PLC进行通信编程 ,就可实现与上位机通信 。
上传时间: 2016-07-28
上传用户:tyler
利用PA口的第二功能将PA0口(即ADC的0通道)输入的模拟量转变为数字量,通道的参考源选 择AVCC,并且数据采用右对齐方式,转换方式为每1秒启动一次转换,转换结果由实验台上 的七段数码管显示
上传时间: 2013-12-19
上传用户:ecooo
OFDM原始信号(即不加任何PAPR处理措施)时的CCDF的计算及显示程序。
上传时间: 2014-11-26
上传用户:kr770906
CWC大型购物商城 基于jsp+javabean+mysql三层结构的动态购物网站。网站用户接口(即界面)由jsp完成,数据和逻辑处理由beans完成,数据储存由mysql完成。
上传时间: 2013-12-24
上传用户:2404