最近看了網上有對AT24C32 來進行測試的
也找了塊片子測試了一下
測試成功發上來給用到的小伙伴
有錯誤一定吐草一個
好改正錯誤
共同學習
單片機源程序如下:
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "includes.h"
- #include "ds1307.h"
- #include "at24c32.h"
- char WIFI_DATE[20] = {0}; //WIFI 接收的數據
- //START 任務
- //設置任務優先級
- #define START_TASK_PRIO 10 ///開始任務的優先級為最低
- #define START_STK_SIZE 512 //設置任務堆棧大小
- OS_STK START_TASK_STK[START_STK_SIZE]; //任務任務堆棧
- void start_task(void *pdata); //任務函數
- //LED0任務
- #define LED0_TASK_PRIO 4 //設置任務優先級
- #define LED0_STK_SIZE 516 //設置任務堆棧大小
- OS_STK LED0_TASK_STK[LED0_STK_SIZE]; //任務堆棧
- void led0_task(void *pdata); //任務函數
- //LED1任務
- #define LED1_TASK_PRIO 5 //設置任務優先級
- #define LED1_STK_SIZE 256 //設置任務堆棧大小
- OS_STK LED1_TASK_STK[LED1_STK_SIZE]; //任務堆棧
- void led1_task(void *pdata); //任務函數
- int main(void)
- {
- delay_init(); //延時初始化
- //NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中斷分組配置
- uart_init(115200); //串口波特率設置
-
- OSInit(); //UCOS初始化
-
- OSTaskCreate( start_task,
- (void*)0,
- (OS_STK*)&START_TASK_STK[START_STK_SIZE-1],
- START_TASK_PRIO
- ); //創建開始任務
- OSStart(); //開始任務
- }
- //開始任務
- void start_task(void *pdata)
- {
- OS_CPU_SR cpu_sr=0;
- pdata=pdata;
- OSStatInit(); //開啟統計任務
-
- OS_ENTER_CRITICAL(); //進入臨界區(關閉中斷)
-
- OSTaskCreate(led0_task,(void*)0,(OS_STK*)&LED0_TASK_STK[LED0_STK_SIZE-1],LED0_TASK_PRIO);//創建LED0任務
- OSTaskCreate(led1_task,(void*)0,(OS_STK*)&LED1_TASK_STK[LED1_STK_SIZE-1],LED1_TASK_PRIO);//創建LED1任務
- OSTaskSuspend(START_TASK_PRIO);//掛起開始任務
- OS_EXIT_CRITICAL(); //退出臨界區(開中斷)
- }
-
- //LED0任務
- void led0_task(void *pdata)
- {
-
- OS_CPU_SR cpu_sr=0;
- OS_ENTER_CRITICAL(); //進入臨界區(關閉中斷)
- DS1307_GPIO_Init();
- OS_EXIT_CRITICAL(); //退出臨界區(開中斷)
- while(1)
- {
-
-
- DS1307_Read();
-
-
- OSTimeDlyHMSM(0,0,10,0); //時 分 秒 毫秒
- }
- }
- //LED1任務
- void led1_task(void *pdata)
- {
- OS_CPU_SR cpu_sr=0;
- unsigned char dat;
- OS_ENTER_CRITICAL(); //進入臨界區(關閉中斷)
- //AT24C32_Init();
- OS_EXIT_CRITICAL(); //退出臨界區(開中斷)
- while(1)
- {
-
-
-
- dat = at24cxx_Read_Data(0x0001);
-
- printf("%d\r\n",dat);
- printf("LED1 \r\n");
-
- OSTimeDlyHMSM(0,0,10,0); //時 分 秒 毫秒
- }
- }
復制代碼
所有資料51hei附件下載:
AT24C32代碼.7z
(289.8 KB, 下載次數: 29)
2023-4-5 05:30 上傳
點擊文件名下載附件
at24c32 下載積分: 黑幣 -5
|