导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[alone6230]请教关于MEGA16L和AT24C512



No.95124
作者:alone6230
邮件:alone6230@sina.com
ID:56102
登陆:1次
文章数:1篇
最后登陆IP:221.216.9.229
最后登陆:2006/6/30 13:19:33
注册:2006/6/28 14:21:16
财富:105
发帖时间:2006/6/28 14:32:11
发贴者IP:221.218.68.79
标题:alone6230:请教关于MEGA16L和AT24C512通信的问题
摘要:No.95124请教关于MEGA16L和AT24C512通信的问题 
我初学MEGA16 
一下代码运行到函数“stop()"的时候就出错了——估计是#define stop 0X30 有问题
可是我也不知道应该值是多少。

我的本意是向AT24C512写入数组 data[8], 再读入MEGA16,然后求数组的和;
写入前和为0 读出后和不为0. 

能否请高手帮忙看看问题出在什么地方!

#include   <mega16.h>  
#include   <iom16v.h>  
#include   <macros.h>  

#define START   0x08 
#define MT_SLA_ACK  0x18
#define MR_SLA_ACK  0x40
#define STOP    0x30

void  start_i()  //initialise Mega16  start
{
 
 while (!(TWCR & (1  <  <TWINT)))
 TWCR=(1  <  <TWINT)|(1  <  <TWSTA)|(1  <  <TWEN);
 if ((TWSR & 0XF8)!= START) ERROR_l();
}

//following function sends a "start" byte to AT24C512,
//including device address and a read state code(the last 1)
void read_a()  
{
 
     while (!(TWCR & (1  <  <TWINT)))
      {
      TWDR=0XA1;
      TWCR=(1  <  <TWINT)|(1  <  <TWEN);
      if ((TWSR &0XF8)!=MR_SLA_ACK ) ERROR_l();
      }
}

//following function read one bit and save it in data_r
int read_b ()
{   
int data_r=0;
 while (!(TWCR & (1  <  <TWINT)))
  {
    data_r=TWDR;
    TWCR=(1  <  <TWINT)|(1  <  <TWEN);
    if ((TWSR &0XF8)!=MR_SLA_ACK ) ERROR_l();
    return data_r;
    
  }
}  

//following function sends a "start" byte to AT24C512,
//including device address and a write state code(the last 0)
void write_d_a()
{
     while (!(TWCR & (1  <  <TWINT)))
      {
      TWDR=0XA0;
      TWCR=(1  <  <TWINT)|(1  <  <TWEN);
      if ((TWSR &0XF8)!=MT_SLA_ACK ) ERROR_l();
      }
}

void write_w_a(int a,int b)
{
   while (!(TWCR & ( ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:7276毫秒 查询6次