⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 说明.txt

📁 avr 单片机twi源程序 功能:实现TWI主从机通讯.
💻 TXT
字号:
// 用途:演示TWI主从机通讯
// 作者:古欣
// AVR与虚拟仪器 http://www.avrvi.com

// 参与本话题的讨论: http://bbs.avrvi.com/htm_data/30/0707/3370.html

主机主程序


CODE:


//ICC-AVR application builder : 2007-7-19 9:50:03
// Target : M16
// Crystal: 7.3728Mhz
// 作者:古欣
// AVR与虚拟仪器 [url]http://www.avrvi.com[/url]

//主机从1到255发一个数,收一个数。从机接收到任何数都返回。
//当主机收到的数为0x10时,从零开始发送,主机采用查询方式,从机采用中断方式

#include "config.h"

void main(void)
{
uint8 i=0,tmp=0;
//re-enable interrupts
DDRC=0X00;
PORTC=0x03; //使能内部上拉电阻
twi_master_init();

while(1)
{
i2c_maste_transt(0x50,i);
i++;
delay_1s();
tmp=i2c_maste_read(0x50); //读一个数
if(tmp==0x10) i=0;
} 
}


[Copy to clipboard]


从机主程序:


CODE:

// 作者:古欣
// AVR与虚拟仪器 [url]http://www.avrvi.com[/url]
// TWI 通讯从机,接受到数据回传给主机 
// 关键内容在 中断函数 void twi_isr(void)中


#include "config.h"

void main(void)
{
DDRC=0X00;
PORTC=0x03; //使能内部上拉电阻
DDRA=0xff;
twi_slave_init(0x50); //初始化为从机,地址0x01。
SEI();
while(1)
;
}

[Copy to clipboard]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -