65

帖子

0

TA的资源

一粒金砂(中级)

21
 
正在学习中
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

22
 

过来学习下

向各位学习学习下
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

23
 

不懂不懂啊!

怎么发表帖子啊?
 
 
 

回复

11

帖子

0

TA的资源

一粒金砂(初级)

24
 
怎么找的到LED的论坛啊?
 
 
 

回复

17

帖子

0

TA的资源

一粒金砂(中级)

25
 
登陆ti教室 总是提示 填写信息不全 是怎么回事啊? 昨天还用来着
 
 
 

回复

110

帖子

0

TA的资源

一粒金砂(中级)

26
 
发帖  博客  话题  什么区别啊?
怎么我写的东西都没人看啊?

点评

I don\'t see your blog. pls show your blog\'s URL.  详情 回复 发表于 2013-1-16 09:16
没有看到你的帖子,或者博客呀,你发个链接看看  详情 回复 发表于 2013-1-16 08:32
 
 
 

回复

6066

帖子

92

TA的资源

裸片初长成(初级)

27
 

回复 26楼 lnhjsdf 的帖子

没有看到你的帖子,或者博客呀,你发个链接看看

点评

https://home.eeworld.com.cn/my/space-uid-423902-blogid-113383.html  详情 回复 发表于 2013-1-16 09:38
 
 
 

回复

227

帖子

2516

TA的资源

管理员

28
 

回复 26楼 lnhjsdf 的帖子

I don't see your blog. pls show your blog's URL.
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

点评

https://home.eeworld.com.cn/my/space-uid-423902-blogid-113383.html  详情 回复 发表于 2013-1-16 09:39
 
 
 

回复

110

帖子

0

TA的资源

一粒金砂(中级)

29
 
 
 

回复

110

帖子

0

TA的资源

一粒金砂(中级)

30
 
 
 

回复

396

帖子

5

TA的资源

纯净的硅(中级)

31
 

上传不了

管理员,为什么登陆论坛后网页是暗灰色?这样我上传东西的时候,插入附件那一栏在我的电脑上看不见。。有时候页面背景色是白色时就正常了,可以上传,咋回事啊?

点评

你有的什么浏览器呢? https://bbs.eeworld.com.cn/memcp.php?action=profile&typeid=5 这个界面风格设置,你是怎么设置的呢?  详情 回复 发表于 2013-1-26 13:46
 
 
 

回复

6066

帖子

92

TA的资源

裸片初长成(初级)

32
 

回复 31楼 jqh_111 的帖子

你有的什么浏览器呢?
https://bbs.eeworld.com.cn/memcp.php?action=profile&typeid=5
这个界面风格设置,你是怎么设置的呢?
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(中级)

33
 
一粒金砂无法回复吗?

点评

可以的哟!  详情 回复 发表于 2013-1-29 15:30
 
 
 

回复

6066

帖子

92

TA的资源

裸片初长成(初级)

34
 

回复 33楼 guocaigao 的帖子

可以的哟!
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

35
 

购买金币

可以购买金币吗?谁有多余的金币愿意出售,说个价格。

点评

你说的金币是E金币吗?你买来的用途呢:)  详情 回复 发表于 2013-3-5 17:01
 
 
 

回复

6066

帖子

92

TA的资源

裸片初长成(初级)

36
 

回复 35楼 xiamenzyx 的帖子

你说的金币是E金币吗?你买来的用途呢
 
 
 

回复

47

帖子

0

TA的资源

一粒金砂(高级)

37
 
可以交换下友情链接吗?
 
 
 

回复

117

帖子

0

TA的资源

一粒金砂(高级)

38
 
我忘记了密码,而且不知道是否设了安全提问,怎么办啊!只有这台笔记本上的IE保存了密码。。

点评

E金币能否兑换现金,多买会不会增加积分,一下子到版主?  详情 回复 发表于 2013-5-15 15:51
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

39
 

FPGA 采集CCD图像 Verilog程序代码

hello,every body。
请帮忙提供FPGA 采集CCD图像 Verilog程序代码,不胜感激!
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

40
 
#include "stm32f0xx.h"
GPIO_InitTypeDef GPIO_InitStruct;
unsigned char key=0;
#define SDA_1   GPIO_SetBits( GPIOB, GPIO_Pin_0);
#define SDA_0   GPIO_ResetBits( GPIOB, GPIO_Pin_0);
#define SCL_1   GPIO_SetBits( GPIOB, GPIO_Pin_1);
#define SCL_0   GPIO_ResetBits( GPIOB, GPIO_Pin_1);
void GPIO_Configuration(void);
void GPIO_Configuration(void)
{
  RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB,ENABLE);
  GPIO_InitStruct.GPIO_Pin=GPIO_Pin_0|GPIO_Pin_1;//0DIN 1dclk
  GPIO_InitStruct.GPIO_Mode =GPIO_Mode_OUT;
  GPIO_InitStruct.GPIO_Speed = GPIO_Speed_Level_3;
  GPIO_InitStruct.GPIO_OType=GPIO_OType_OD;
  GPIO_Init(GPIOB, &GPIO_InitStruct);
}
void EXTI_Configuration(void);
void EXTI_Configuration(void)
{
     GPIO_InitTypeDef  GPIO_InitStruct;  //端口  结构体  
     NVIC_InitTypeDef  NVIC_InitStruct;  //中断嵌套  结构体
     EXTI_InitTypeDef  EXTI_InitStruct;   //外部中断  结构体
     
     RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);//打开IO口的对应时钟
     RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);//系统配置控制器时钟使能,管理连接到GPIO口的外部中断
     
     GPIO_InitStruct.GPIO_Pin=GPIO_Pin_2;         
     GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN;  
     GPIO_InitStruct.GPIO_Speed=GPIO_Speed_Level_2;
     GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP ;
     GPIO_Init(GPIOB,&GPIO_InitStruct);
     
     SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOB , EXTI_PinSource2);//设置中断源
     
     EXTI_InitStruct.EXTI_Line=EXTI_Line2;  
     EXTI_InitStruct.EXTI_Mode=EXTI_Mode_Interrupt;   
     EXTI_InitStruct.EXTI_Trigger=EXTI_Trigger_Falling;
     EXTI_InitStruct.EXTI_LineCmd=ENABLE;   
     EXTI_Init(&EXTI_InitStruct);
     
     NVIC_InitStruct.NVIC_IRQChannel=EXTI2_3_IRQn;//中断频道配置4-15通道
     NVIC_InitStruct.NVIC_IRQChannelPriority=0;//优先级设为0
     NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;//使能通道
     NVIC_Init(&NVIC_InitStruct);
}

///////////////////////////////////////////
void I2CStart(void);
void I2CStart(void)
{
SDA_1;
delay_us(5);
SCL_1;
delay_us(5);
SDA_0;
delay_us(5);
SCL_0;
delay_us(5);
}
void I2CStop(void);
void I2CStop(void)
{
  SDA_0;
delay_us(5);
  SCL_1;
delay_us(5);
  SDA_1;
delay_us(5);
}
uint8_t I2CClock(void);
uint8_t I2CClock(void)
{
uint8_t I2C_bit;
SCL_1;
delay_us(4);

GPIO_InitStruct.GPIO_Pin=GPIO_Pin_0;         
GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN;  
GPIO_InitStruct.GPIO_Speed=GPIO_Speed_Level_2;
GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP;
GPIO_Init(GPIOB,&GPIO_InitStruct);

I2C_bit=GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_0);

GPIO_InitStruct.GPIO_Mode =GPIO_Mode_OUT;
GPIO_InitStruct.GPIO_OType=GPIO_OType_PP;
GPIO_Init(GPIOB, &GPIO_InitStruct);

SCL_0;
delay_us(4);
return (I2C_bit);
}
void I2CAck(void);
void I2CAck(void)
{
  SDA_0;
  I2CClock();
  SDA_1;
}
uint8_t I2CSend(unsigned char i2c_data);
uint8_t I2CSend(unsigned char i2c_data)
{
unsigned char i;
SCL_0;//SDA信号只能在SCL=0时改变,否则认为是控制信号
for(i=0;i<8;i++)
{  
  //---------数据建立----------
  if(i2c_data&0x80)
  {
   SDA_1;
  }
  else
  {
   SDA_0;
  }
i2c_data<<=1;
I2CClock();
}
SDA_1;//请求应答时保证SDA为高
return (~I2CClock());//若接收应答此时SDA为底
}
//////////////////////////////////////////////////////
unsigned char I2CReceive(void);
unsigned char I2CReceive(void)
{
unsigned char i,i2c_data=0;
for(i=1;i<8;i++)
{
if(I2CClock())//DCL为高电平期间SDA数据线的高低电平即为传送的数据位
i2c_data++;//若为1,则i2c_data加1
else
i2c_data=i2c_data<<1;//i2c_data左移一位依次接收发送的数据
}
return(i2c_data);
}
//////////////////////////////////////////
uint8_t Read_Data(uint16_t addr);
uint8_t Read_Data(uint16_t addr)
{
uint8_t data;
I2CStart();//发送开始信号
if(I2CSend(((uint8_t)(addr>>7))&0xfe|0x41))
{
data=I2CReceive();
I2CAck();
SDA_1;
I2CClock();
I2CStop();
return data;
}
else
     return 0;
}
////////////////////////////////////////////////////////////////
void Write_CH452(unsigned char addr,unsigned char data);
void Write_CH452(unsigned char addr,unsigned char data)
{
  I2CStart();//发送开始信号
  if(I2CSend(addr<<1|0x40)&&I2CSend(data))//字节地址和数据均发送成功
    {
      I2CStop();//写入每个字节后发送一个停止位
      delay_ms(10);  //延时5~10ms
     }
}
////////////////////////////////////////////
void Initial(void);
void Initial(void)
{
Write_CH452(0x07,0x00);//应答
Write_CH452(0x02,0x01);//复位
Write_CH452(0x07,0x00);//应答
Write_CH452(0x04,0x03);//开显示启用键盘扫描两线
Write_CH452(0x05,0x80);//译码极限3占空比10/16
}
void EXTI2_3_IRQHandler(void);
void main(void)
{
  delay_init(48);
  GPIO_Configuration();
  EXTI_Configuration();
  Initial();
  while(1)
  {
    Write_CH452(0x0F,0);
  }
}
void EXTI2_3_IRQHandler(void)
{
  //while(!GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_2)==RESET);
  key=Read_Data(0x0700);//读取按键代码
   switch(key)
     {
       case 0X56: Write_CH452(0x0F,0);break;//16
       case 0X76: Write_CH452(0x0E,1);break;//12
       case 0X6e: Write_CH452(0x0D,2);break;//8
       case 0X66: Write_CH452(0x0C,3);break;//4
       case 0X7f: Write_CH452(0x0B,4);break;//14
       case 0X77: Write_CH452(0x0A,5);break;//10
       case 0X6f: Write_CH452(0x09,6);break;//6
       case 0X67: Write_CH452(0x08,7);break;//2   
     }
EXTI_ClearITPendingBit(EXTI_Line2);
}
模拟I2C 从机CH452
哪位高手能帮我看看程序哪里错了??
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表