标题:
基于原子哥AT24C04修改 I2C STM32源程序
[打印本页]
作者:
QEQWE123
时间:
2019-7-26 10:41
标题:
基于原子哥AT24C04修改 I2C STM32源程序
1.png
(45.55 KB, 下载次数: 60)
下载附件
2019-7-26 22:33 上传
单片机源程序如下:
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "usmart.h"
#include "24cxx.h"
//要写入到24c02的字符串数组 const 则后面变量不可变
const unsigned char TEXT_Buffer[]={"Tomorrow"};
#define SIZE sizeof(TEXT_Buffer) //读取要写入芯片中的字节数。
const unsigned char text_Buffer[]={"Hello,World!!!"};
#define size sizeof(text_Buffer) //读取要写入芯片中的字节数。
void FMQ(void)
{
fmq=1;//叫
delay_ms(50);
fmq=0;//停
delay_ms(50);
}
int main(void)
{
u8 key;
u16 i=0;
unsigned char datatemp[SIZE];
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
uart_init(115200); //串口初始化为115200
LED_Init(); //初始化与LED连接的硬件接口
KEY_Init(); //按键初始化
AT24CXX_Init(); //IIC初始化
while(AT24CXX_Check())//检测不到24c02
{
printf("24C02 检测失败!\r\n");
delay_ms(500);
printf("请检查 24C02!\r\n");
delay_ms(500);
fmq=!fmq;//DS0闪烁
}
printf("24C02 准备就绪!\r\n");
FMQ();
while(1)
{
key=KEY_Scan(0);
if(key==KEY1_PRES) //KEY_UP按下,写入24C02
{
printf("Start 24C02....\r\n");
AT24CXX_Write(0,(u8*)TEXT_Buffer,SIZE);
printf("24C02 Write Finish!\r\n");
FMQ();
}
if(key==KEY2_PRES) //KEY_UP按下,写入24C02
{
printf("开始写入 24C02....\r\n");
AT24CXX_Write(0,(u8*)text_Buffer,size);
printf("24C02 写入完成!\r\n");
FMQ();
}
if(key==KEY0_PRES)//KEY1按下,读取字符串并显示
{
if(SIZE>size) //那个多读哪个
{
printf("开始读取 24C02.... \r\n");
AT24CXX_Read(0,datatemp,SIZE); //从第0 个开始读取SIZE 个字节到datatemp
printf("读取的数据是:%s\r\n ",datatemp);
FMQ();
}
else
{
printf("开始读取 24C02.... \r\n");
AT24CXX_Read(0,datatemp,size); //从第0 个开始读取SIZE 个字节到datatemp
printf("读取的数据是:%s\r\n ",datatemp);
FMQ();
}
}
i++;
delay_ms(10);
if(i==20)
{
LED1=!LED1;//提示系统正在运行
i=0;
}
}
}
复制代码
所有资料51hei提供下载:
(AT24C04 I2C实验 PB6 SCL PB7 SDA).7z
(222.06 KB, 下载次数: 111)
2019-7-27 00:34 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
plj213
时间:
2020-6-4 23:51
谢谢分享。。。
作者:
krainwb
时间:
2023-10-3 09:57
这个要把I2C的驱动合在一个文件就好了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1