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

標題: STM32單片機at24c32調試代碼實現 [打印本頁]

作者: wxs732    時間: 2023-4-4 21:23
標題: STM32單片機at24c32調試代碼實現
最近看了網上有對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)





作者: liesnake    時間: 2023-4-5 06:31
這個代碼寫的很不錯的,以后我的代碼也用os重寫。
作者: li64331218    時間: 2023-4-5 09:18
是用ucosiii么,跟傳統的寄存器版本不一樣啊?
作者: wxs732    時間: 2023-4-5 20:39
li64331218 發表于 2023-4-5 09:18
是用ucosiii么,跟傳統的寄存器版本不一樣啊?

一樣,沒啥區別,單獨拿出來 .c   .h文件,一樣用裸機
沒區別
ucos 不建議 學習了,
直接上Linux 把
作者: li64331218    時間: 2023-4-8 11:29
wxs732 發表于 2023-4-5 20:39
一樣,沒啥區別,單獨拿出來 .c   .h文件,一樣用裸機
沒區別
ucos 不建議 學習了,

stm32 不能用Linux吧?資源不夠吧?現在ucosIII倒是挺火的。
作者: wxs732    時間: 2023-4-9 12:57
應該是 我表達的不夠清楚

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

作者: li64331218    時間: 2023-4-9 15:11
wxs732 發表于 2023-4-9 12:57
應該是 我表達的不夠清楚

stm32 確實不夠上linux   ,

謝謝建議!




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产一级片av | 国产一区二区三区四区在线观看 | a免费观看 | 成人在线视频一区 | 国产精品a久久久久 | 久久久久久久久久久91 | 精品国产一区二区久久 | 国产探花在线精品一区二区 | 国产精品久久久久久久久久 | 国产成人在线观看免费 | 国产在线精品一区二区三区 | 久久亚洲一区二区三区四区 | 水蜜桃亚洲一二三四在线 | 成人国产精品久久久 | 99综合网| 欧美中文字幕在线 | 免费一区 | 国产成人99久久亚洲综合精品 | 麻豆久久久久 | 久久久免费毛片 | 久久99精品久久久久久国产越南 | 日韩1区 | av中文字幕在线 | 国产成人高清 | 欧美日韩国产高清视频 | 成人在线播放网站 | 国产精品久久久久久久久久久久 | 日本免费在线 | 久久一及片 | 亚洲免费人成在线视频观看 | 午夜免费网 | 国产精品亚洲一区二区三区在线观看 | 亚洲午夜精品一区二区三区 | 美女黄频 | 91中文字幕在线观看 | 午夜精品一区 | 久久久91精品国产一区二区精品 | 欧美视频三区 | 精精国产xxxx视频在线野外 | 日韩欧美专区 | 欧美精品首页 |