📄 main.c
字号:
#include <msp430x16x.h>
#include "i2c_host.h"
int time_count;
int time_flag;
extern int mode;
void main(void)
{
volatile unsigned char Data[6];
char temp;
//停止看门狗
WDTCTL = WDTPW+WDTHOLD;
//初始化端口
Init_Port();
//初始化时钟
Init_CLK();
//I2C初始化
InitI2C();
//初始化定时器
Init_TimerA();
time_count = 0;
//打开中断
_EINT();
for(;;)
{
if(time_flag == 1)
{
//主机模式下发送数据
master_Write(0x02,11);
if(mode != 0)
{
//没有总线竞争
master_AckPolling();
temp = master_Read(0x02);
}
time_flag = 0;
}
if(mode == 0)
{
//从机模式
//接收数据
temp = slave_Read();
//发送数据
slave_Write(temp);
}
}
}
#if __VER__ < 200
interrupt [TIMERA0_VECTOR] void TimerA_ISR(void)
#else
#pragma vector=TIMERA0_VECTOR
__interrupt void TimerA_ISR(void)
#endif
{
time_count += 1;
if(time_count >= 1000)
{
time_count = 0;
time_flag = 1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -