智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1447|回复: 1
打印 上一主题 下一主题

[软件类] mma7455怎么用spi编程

[复制链接]

7

主题

51

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1290
威望
694
贡献
362
兑换币
235
注册时间
2012-6-29
在线时间
117 小时
跳转到指定楼层
1#
发表于 2013-8-12 22:32:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10贡献
void SPI0_Init() {
  SPI0BR=0x55;      //波特率2048
  SPI0CR1=0x5e;     //模块使能,主机模块
  SPI0CR2=0x10;
}
void SPI0_Send_Data(){
  cs=0;
  SPI0DR=0x08;
  while(!(SPI0SR_SPTEF));     //等待SPTEF 为0
   
  
  
  cs=1;
  
}
SPI0_Receive_Data(){
  cs=0;
  LCD_set_XY(1,1);
  LCD_write_char_my(font6x8[16]);
  while(!(SPI0SR_SPIF));
  
  return SPI0DR;
  cs=1;

  
  
}


void main() {
  Pll_Init();
   
   
  DDRA=0xff;
  DDRP=0xff;
  
  LCD_init();
  LCD_clear();

  
DDRM=0x2f;
MODRR_MODRR4=1;
  SPI0_Init();
      
   

  EnableInterrupts;

  
  for(;;){
   
    //cs=0;
    //PTM_PTM3=0;
   
    SPI0_Send_Data();
    a=SPI0_Receive_Data();
   
    LCD_set_XY(0,0);
    LCD_write_char_my(font6x8[a/100+16]);
    LCD_set_XY(6,0);
    LCD_write_char_my(font6x8[a/10%10+16]);
    LCD_set_XY(12,0);
    LCD_write_char_my(font6x8[a%10+16]);
    delayms(3000);
    //cs=1;
    //PTM_PTM3=1;
      
  
  }   
}
用示波器读sdi波型是0x08  为什么出来的数据总是0  求大神啊·······

0

主题

77

帖子

0

精华

高级会员

Rank: 4

积分
642
威望
350
贡献
204
兑换币
241
注册时间
2013-10-21
在线时间
44 小时
2#
发表于 2013-11-8 12:40:54 | 只看该作者
我用51模拟iic模式  读出来的也都是0   无语了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-11 05:40 , Processed in 0.039484 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表