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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32單片機at24c32調試代碼實現

[復制鏈接]
跳轉到指定樓層
樓主
ID:7209 發表于 2023-4-4 21:23 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
最近看了網上有對AT24C32 來進行測試的
也找了塊片子測試了一下
測試成功發上來給用到的小伙伴
有錯誤一定吐草一個
好改正錯誤
共同學習

單片機源程序如下:

  1. #include "delay.h"
  2. #include "sys.h"
  3. #include "usart.h"
  4. #include "includes.h"
  5. #include "ds1307.h"
  6. #include "at24c32.h"



  7. char WIFI_DATE[20] = {0}; //WIFI 接收的數據




  8. //START 任務
  9. //設置任務優先級
  10. #define START_TASK_PRIO                        10           ///開始任務的優先級為最低
  11. #define START_STK_SIZE                        512          //設置任務堆棧大小
  12. OS_STK START_TASK_STK[START_STK_SIZE];   //任務任務堆棧
  13. void start_task(void *pdata);            //任務函數




  14. //LED0任務
  15. #define LED0_TASK_PRIO                        4            //設置任務優先級
  16. #define LED0_STK_SIZE                        516             //設置任務堆棧大小
  17. OS_STK LED0_TASK_STK[LED0_STK_SIZE];     //任務堆棧
  18. void led0_task(void *pdata);             //任務函數




  19. //LED1任務
  20. #define LED1_TASK_PRIO                        5            //設置任務優先級
  21. #define LED1_STK_SIZE                        256            //設置任務堆棧大小
  22. OS_STK LED1_TASK_STK[LED1_STK_SIZE];     //任務堆棧
  23. void led1_task(void *pdata);             //任務函數












  24. int main(void)
  25. {
  26.         delay_init();                     //延時初始化
  27.         //NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中斷分組配置
  28.         uart_init(115200);                //串口波特率設置
  29.   
  30.         OSInit();                                      //UCOS初始化
  31.                
  32.         OSTaskCreate(  start_task,
  33.                        (void*)0,
  34.                                                                  (OS_STK*)&START_TASK_STK[START_STK_SIZE-1],
  35.                                                                   START_TASK_PRIO
  36.                                                          );                   //創建開始任務
  37.         OSStart();                               //開始任務
  38. }

  39. //開始任務
  40. void start_task(void *pdata)
  41. {
  42.         OS_CPU_SR cpu_sr=0;
  43.         pdata=pdata;
  44.         OSStatInit();  //開啟統計任務
  45.         
  46.         OS_ENTER_CRITICAL();  //進入臨界區(關閉中斷)
  47.         
  48.         OSTaskCreate(led0_task,(void*)0,(OS_STK*)&LED0_TASK_STK[LED0_STK_SIZE-1],LED0_TASK_PRIO);//創建LED0任務
  49.         OSTaskCreate(led1_task,(void*)0,(OS_STK*)&LED1_TASK_STK[LED1_STK_SIZE-1],LED1_TASK_PRIO);//創建LED1任務

  50.         OSTaskSuspend(START_TASK_PRIO);//掛起開始任務
  51.         OS_EXIT_CRITICAL();  //退出臨界區(開中斷)
  52. }










  53. //LED0任務
  54. void led0_task(void *pdata)
  55. {        
  56.         
  57.         OS_CPU_SR cpu_sr=0;
  58.         OS_ENTER_CRITICAL();        //進入臨界區(關閉中斷)
  59.   DS1307_GPIO_Init();
  60.         OS_EXIT_CRITICAL();                //退出臨界區(開中斷)
  61.         while(1)
  62.         {
  63.                

  64.          

  65.            DS1307_Read();
  66.                
  67.                
  68.                 OSTimeDlyHMSM(0,0,10,0); //時 分 秒 毫秒
  69.         }
  70. }

  71. //LED1任務
  72. void led1_task(void *pdata)
  73. {
  74.                 OS_CPU_SR cpu_sr=0;
  75.   unsigned char dat;
  76.           OS_ENTER_CRITICAL();        //進入臨界區(關閉中斷)
  77.         //AT24C32_Init();
  78.                 OS_EXIT_CRITICAL();                //退出臨界區(開中斷)
  79.         while(1)
  80.         {
  81.                
  82.         
  83.          
  84.                 dat = at24cxx_Read_Data(0x0001);
  85.                                 
  86.                 printf("%d\r\n",dat);
  87.                 printf("LED1 \r\n");

  88.         

  89.                 OSTimeDlyHMSM(0,0,10,0); //時 分 秒 毫秒
  90.         }
  91. }
復制代碼

所有資料51hei附件下載:
AT24C32代碼.7z (289.8 KB, 下載次數: 29)




評分

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

查看全部評分

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

使用道具 舉報

沙發
ID:319585 發表于 2023-4-5 06:31 來自手機 | 只看該作者
這個代碼寫的很不錯的,以后我的代碼也用os重寫。
回復

使用道具 舉報

板凳
ID:291668 發表于 2023-4-5 09:18 | 只看該作者
是用ucosiii么,跟傳統的寄存器版本不一樣啊?
回復

使用道具 舉報

地板
ID:7209 發表于 2023-4-5 20:39 | 只看該作者
li64331218 發表于 2023-4-5 09:18
是用ucosiii么,跟傳統的寄存器版本不一樣啊?

一樣,沒啥區別,單獨拿出來 .c   .h文件,一樣用裸機
沒區別
ucos 不建議 學習了,
直接上Linux 把
回復

使用道具 舉報

5#
ID:291668 發表于 2023-4-8 11:29 | 只看該作者
wxs732 發表于 2023-4-5 20:39
一樣,沒啥區別,單獨拿出來 .c   .h文件,一樣用裸機
沒區別
ucos 不建議 學習了,

stm32 不能用Linux吧?資源不夠吧?現在ucosIII倒是挺火的。
回復

使用道具 舉報

6#
ID:7209 發表于 2023-4-9 12:57 | 只看該作者
應該是 我表達的不夠清楚

stm32 確實不夠上linux   ,
我想說,ucos ii 這樣的系統不要過多糾結 , 還是直接學習linux   
II  或 iii  都不錯 , 都值得學習
回復

使用道具 舉報

7#
ID:291668 發表于 2023-4-9 15:11 | 只看該作者
wxs732 發表于 2023-4-9 12:57
應該是 我表達的不夠清楚

stm32 確實不夠上linux   ,

謝謝建議!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品乱码久久久久久按摩观 | 亚洲乱码国产乱码精品精98午夜 | 在线欧美一区 | 亚洲综合久久精品 | 99成人免费视频 | 精品无码久久久久久国产 | 亚洲色图第一页 | 成人精品一区二区户外勾搭野战 | 精品久久久久国产 | 97伦理| 97超碰人人 | 成人国产精品 | 黄在线免费观看 | 亚洲性视频网站 | 国产精品无码专区在线观看 | 日韩在线视频免费观看 | 欧美精品一级 | 福利视频一区二区三区 | 国产高清视频一区二区 | 一级高清免费毛片 | 国产成人综合在线 | 亚洲综合大片69999 | 香蕉大人久久国产成人av | 中文字幕成人av | 久久久久久黄 | 免费在线观看成年人视频 | 暴草美女| 精品一级 | 免费日韩av | 天堂色区 | www.久| 亚洲精品乱码久久久久久蜜桃 | 中文字幕成人 | www久久久| 亚洲精品久久久久久久久久久久久 | 久久精品国产精品青草 | 亚洲精品久久久久久久不卡四虎 | 成人精品鲁一区一区二区 | 日韩一区二区三区在线 | 欧美αv| 亚洲午夜三级 |