久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4745|回復: 2
打印 上一主題 下一主題
收起左側

基于原子哥AT24C04修改 I2C STM32源程序

[復制鏈接]
跳轉到指定樓層
樓主


單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "lcd.h"
  6. #include "usart.h"
  7. #include "usmart.h"         
  8. #include "24cxx.h"         

  9.                                 
  10. //要寫入到24c02的字符串數組  const 則后面變量不可變
  11. const unsigned char TEXT_Buffer[]={"Tomorrow"};
  12. #define SIZE sizeof(TEXT_Buffer)        //讀取要寫入芯片中的字節數。


  13. const unsigned char text_Buffer[]={"Hello,World!!!"};
  14. #define size sizeof(text_Buffer)        //讀取要寫入芯片中的字節數。


  15. void FMQ(void)
  16. {
  17.         fmq=1;//叫
  18.         delay_ms(50);
  19.         fmq=0;//停
  20.         delay_ms(50);
  21. }
  22. int main(void)
  23. {       
  24.         u8 key;
  25.         u16 i=0;
  26.         unsigned char datatemp[SIZE];
  27.         delay_init();                     //延時函數初始化          
  28.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置中斷優先級分組為組2:2位搶占優先級,2位響應優先級
  29.         uart_init(115200);                 //串口初始化為115200
  30.         LED_Init();                                  //初始化與LED連接的硬件接口
  31.         KEY_Init();                                //按鍵初始化                                 
  32.         AT24CXX_Init();                        //IIC初始化

  33.        
  34.         while(AT24CXX_Check())//檢測不到24c02
  35.         {
  36.                 printf("24C02 檢測失敗!\r\n");
  37.                 delay_ms(500);
  38.                 printf("請檢查 24C02!\r\n");
  39.                 delay_ms(500);
  40.                 fmq=!fmq;//DS0閃爍
  41.         }
  42.                 printf("24C02 準備就緒!\r\n");
  43.                 FMQ();
  44.         while(1)
  45.         {
  46.                 key=KEY_Scan(0);
  47.                
  48.                 if(key==KEY1_PRES)                                //KEY_UP按下,寫入24C02
  49.                 {
  50.                         printf("Start 24C02....\r\n");
  51.                         AT24CXX_Write(0,(u8*)TEXT_Buffer,SIZE);
  52.                         printf("24C02 Write Finish!\r\n");
  53.                         FMQ();
  54.                 }
  55.                
  56.                 if(key==KEY2_PRES)                                //KEY_UP按下,寫入24C02
  57.                 {
  58.                         printf("開始寫入 24C02....\r\n");
  59.                         AT24CXX_Write(0,(u8*)text_Buffer,size);
  60.                         printf("24C02 寫入完成!\r\n");
  61.                         FMQ();
  62.                 }
  63.        
  64.                
  65.                 if(key==KEY0_PRES)//KEY1按下,讀取字符串并顯示
  66.                 {       
  67.                         if(SIZE>size)                        //那個多讀哪個
  68.                         {
  69.                                 printf("開始讀取 24C02.... \r\n");
  70.                                 AT24CXX_Read(0,datatemp,SIZE);                          //從第0 個開始讀取SIZE 個字節到datatemp
  71.                                 printf("讀取的數據是:%s\r\n ",datatemp);
  72.                                 FMQ();
  73.                         }
  74.                         else
  75.                         {
  76.                                 printf("開始讀取 24C02.... \r\n");
  77.                                 AT24CXX_Read(0,datatemp,size);                          //從第0 個開始讀取SIZE 個字節到datatemp
  78.                                 printf("讀取的數據是:%s\r\n ",datatemp);
  79.                                 FMQ();
  80.                         }
  81.                        
  82.                 }
  83.                
  84.                 i++;
  85.                 delay_ms(10);
  86.                 if(i==20)
  87.                 {
  88.                         LED1=!LED1;//提示系統正在運行       
  89.                         i=0;
  90.                 }                  
  91.         }
  92. }
復制代碼

所有資料51hei提供下載:
(AT24C04 I2C實驗 PB6 SCL PB7 SDA).7z (222.06 KB, 下載次數: 111)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:138247 發表于 2020-6-4 23:51 | 只看該作者

謝謝分享。。。
回復

使用道具 舉報

板凳
ID:495316 發表于 2023-10-3 09:57 | 只看該作者
這個要把I2C的驅動合在一個文件就好了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩av一区在线观看 | 99久9 | 久久久av| 亚洲综合字幕 | 成人免费淫片aa视频免费 | av网站在线免费观看 | 久久亚洲一区 | 国产精品久久久久久婷婷天堂 | 亚洲欧洲成人 | 人人性人人性碰国产 | 欧美精品一区二区三区一线天视频 | 精品一二三区在线观看 | 欧美一区二区三区四区视频 | 久久久久国产一区二区三区 | 国产在线精品一区二区三区 | 99精品欧美一区二区三区综合在线 | 日韩av免费在线电影 | 国产精品精品视频一区二区三区 | 国产真实精品久久二三区 | 日韩欧美中文 | 在线成人免费视频 | 神马久久久久久久久久 | 久久免费精品 | 亚洲国产一区二区三区在线观看 | 男女羞羞免费视频 | 成人免费在线视频 | 亚洲国产精品视频一区 | 亚洲精品视频在线看 | 国产精品二区三区 | 人人做人人澡人人爽欧美 | 日韩精品免费视频 | 久久9精品 | 国产一区二 | 国产a一区二区 | 一区二区三区成人 | 亚洲一级av毛片 | 亚洲天堂影院 | h在线看| 欧美一级欧美三级在线观看 | 999免费观看视频 | 黄色在线免费观看 |