找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4279|回復(fù): 0
收起左側(cè)

emWin STM32源碼工程模板 一款智能手表程序

[復(fù)制鏈接]
ID:431315 發(fā)表于 2018-11-22 17:03 | 顯示全部樓層 |閱讀模式
一款帶oled屏幕的智能手表程序

藍(lán)牙通信數(shù)據(jù)協(xié)議

Bluetooth_Table[32]

00:      0xAA(固定)
01:   0x55(固定)
02: 0xcc(固定)
03:控制指令(等于1時(shí)為手機(jī)同步校時(shí)指令,等于2時(shí)為手機(jī)發(fā)送定位指令,等于3時(shí)為手機(jī)摔倒標(biāo)志指令,等于4時(shí)為空調(diào)控制指令,等于5時(shí)大廳控制指令,等于6時(shí)房間控制指令,等于7時(shí)廚房控制指令)
04:年的高兩位(僅當(dāng)03字節(jié)=1時(shí)有效)
05:年的低兩位(僅當(dāng)03字節(jié)=1時(shí)有效)
06:月(1-12)(僅當(dāng)03字節(jié)=1時(shí)有效)
07:日(1-31)(僅當(dāng)03字節(jié)=1時(shí)有效)
08:時(shí)(0-23)(僅當(dāng)03字節(jié)=1時(shí)有效)
09:分(0-59)(僅當(dāng)03字節(jié)=1時(shí)有效)
10:秒(0-59)(僅當(dāng)03字節(jié)=1時(shí)有效)
11:空調(diào)開(kāi)關(guān)標(biāo)志位(1為關(guān),2為開(kāi),僅當(dāng)03字節(jié)=4時(shí)有效)
12:空調(diào)模式標(biāo)志位(1為自動(dòng),2為制冷,3為抽濕,僅當(dāng)03字節(jié)=4時(shí)有效)
13:空調(diào)溫度控制,調(diào)節(jié)當(dāng)前溫度(17-30)(僅當(dāng)03字節(jié)=4時(shí)有效)
14:大廳燈開(kāi)關(guān)標(biāo)志位(1為關(guān),2為開(kāi),,僅當(dāng)03字節(jié)=5時(shí)有效)
15:大廳燈亮度值(0-255,僅當(dāng)03字節(jié)=5時(shí)有效)
16:房間燈開(kāi)關(guān)標(biāo)志位(1為關(guān),2為開(kāi),,僅當(dāng)03字節(jié)=5時(shí)有效)
17:房間燈亮度值(0-255,僅當(dāng)03字節(jié)=5時(shí)有效)
18:廚房燈開(kāi)關(guān)標(biāo)志位(1為關(guān),2為開(kāi),,僅當(dāng)03字節(jié)=5時(shí)有效)
19:廚房燈亮度值(0-255,僅當(dāng)03字節(jié)=5時(shí)有效)
20:
21:(預(yù)留)
22:(預(yù)留)
23:(預(yù)留)
24:(預(yù)留)
25:(預(yù)留)
26:(預(yù)留)
27:(預(yù)留)
28:(預(yù)留)
29:(預(yù)留)
30:(預(yù)留)
31:(預(yù)留)

0.png

單片機(jī)源程序如下:
  1. #include "include.h"
  2. FATFS fs[2];


  3. int main(void)
  4. {

  5.         OS_ERR err;        
  6.         GUI_Init();        
  7.         GUI_Clear();
  8.         BUTTON_SetDefaultSkin    (BUTTON_SKIN_FLEX);
  9.         PROGBAR_SetDefaultSkin   (PROGBAR_SKIN_FLEX);
  10.         SCROLLBAR_SetDefaultSkin (SCROLLBAR_SKIN_FLEX);
  11.     SLIDER_SetDefaultSkin    (SLIDER_SKIN_FLEX);
  12.         HEADER_SetDefaultSkin    (HEADER_SKIN_FLEX);
  13.         
  14.                                                         //        delay_init();
  15.                                                         //        DS18B20_Init();
  16.                                                         //        disk_initialize(0);
  17.                                                         //        f_mount(0, &fs[0]);
  18.                                                         //        BMP_Decode(0,0,BACKPICUTE);
  19.         Rtc_Init();
  20.         Touch_Init();
  21.         TIM2_InitConfiguration(1000);
  22.         TIM6_InitConfiguration(0);
  23.         delay_init(1);
  24.         Bluetooth_Init();
  25.         GPRS_Init();
  26.         OSInit(&err);
  27.     OSTaskCreate((OS_TCB     *)&AppTaskStart_TCB,               /* Create the start task                                */
  28.                  (CPU_CHAR   *)"App Task Start",
  29.                  (OS_TASK_PTR )AppTaskStart,
  30.                  (void       *)0,
  31.                  (OS_PRIO     )APP_TASK_START_PRIO,
  32.                  (CPU_STK    *)&AppTaskStart_Stk[0],
  33.                  (CPU_STK_SIZE)APP_TASK_START_STK_SIZE / 10,
  34.                  (CPU_STK_SIZE)APP_TASK_START_STK_SIZE,
  35.                  (OS_MSG_QTY  )0,
  36.                  (OS_TICK     )0,
  37.                  (void       *)0,
  38.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  39.                  (OS_ERR     *)&err);
  40.         OSTaskCreate((OS_TCB     *)&App_INIT_TASK_TCB,               /* Create the start task                                */
  41.                  (CPU_CHAR   *)"Peripheral_Init_TASK",
  42.                  (OS_TASK_PTR )Peripheral_Init_TASK,
  43.                  (void       *)0,
  44.                  (OS_PRIO     )APP_INIT_PRIO,
  45.                  (CPU_STK    *)&App_INIT_TASK_Stk[0],
  46.                  (CPU_STK_SIZE)APP_INIT_TASK_STK_SIZE / 10,
  47.                  (CPU_STK_SIZE)APP_INIT_TASK_STK_SIZE,
  48.                  (OS_MSG_QTY  )0,
  49.                  (OS_TICK     )0,
  50.                  (void       *)0,
  51.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  52.                  (OS_ERR     *)&err);
  53.         OSTaskCreate((OS_TCB     *)&App_Touch_TASK_TCB,               /* Create the start task                                */
  54.                  (CPU_CHAR   *)"Touch_TASK",
  55.                  (OS_TASK_PTR )Touch_TASK,
  56.                  (void       *)0,
  57.                  (OS_PRIO     )APP_Touch_PRIO,
  58.                  (CPU_STK    *)&App_Touch_TASK_Stk[0],
  59.                  (CPU_STK_SIZE)APP_Touch_TASK_STK_SIZE / 10,
  60.                  (CPU_STK_SIZE)APP_Touch_TASK_STK_SIZE,
  61.                  (OS_MSG_QTY  )0,
  62.                  (OS_TICK     )0,
  63.                  (void       *)0,
  64.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  65.                  (OS_ERR     *)&err);        
  66.                                  
  67.                                  
  68.         OSTaskCreate((OS_TCB     *)&App_MPU6050_TASK_TCB,               /* Create the start task                                */
  69.                  (CPU_CHAR   *)"MPU6050_TASK",
  70.                  (OS_TASK_PTR )MPU6050_TASK,
  71.                  (void       *)0,
  72.                  (OS_PRIO     )APP_MPU6050_PRIO,
  73.                  (CPU_STK    *)&App_MPU6050_TASK_Stk[0],
  74.                  (CPU_STK_SIZE)APP_MPU6050_TASK_STK_SIZE / 10,
  75.                  (CPU_STK_SIZE)APP_MPU6050_TASK_STK_SIZE,
  76.                  (OS_MSG_QTY  )0,
  77.                  (OS_TICK     )0,
  78.                  (void       *)0,
  79.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  80.                  (OS_ERR     *)&err);
  81.         
  82.         OSTaskCreate((OS_TCB     *)&App_Display_TASK_TCB,               /* Create the start task                                */
  83.                  (CPU_CHAR   *)"Display_TASK",
  84.                  (OS_TASK_PTR )Display_TASK,
  85.                  (void       *)0,
  86.                  (OS_PRIO     )APP_Display_PRIO,
  87.                  (CPU_STK    *)&App_Display_TASK_Stk[0],
  88.                  (CPU_STK_SIZE)APP_Display_TASK_STK_SIZE / 10,
  89.                  (CPU_STK_SIZE)APP_Display_TASK_STK_SIZE,
  90.                  (OS_MSG_QTY  )0,
  91.                  (OS_TICK     )0,
  92.                  (void       *)0,
  93.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  94.                  (OS_ERR     *)&err);        
  95.         OSTaskCreate((OS_TCB     *)&App_GPRS_TASK_TCB,               /* Create the start task                                */
  96.                  (CPU_CHAR   *)"GPRS_TASK",
  97.                  (OS_TASK_PTR )GPRS_TASK,
  98.                  (void       *)0,
  99.                  (OS_PRIO     )APP_GPRS_PRIO,
  100.                  (CPU_STK    *)&App_GPRS_TASK_Stk[0],
  101.                  (CPU_STK_SIZE)APP_GPRS_TASK_STK_SIZE / 10,
  102.                  (CPU_STK_SIZE)APP_GPRS_TASK_STK_SIZE,
  103.                  (OS_MSG_QTY  )0,
  104.                  (OS_TICK     )0,
  105.                  (void       *)0,
  106.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  107.                  (OS_ERR     *)&err);        

  108.         OSTaskCreate((OS_TCB     *)&App_Backlight_TASK_TCB,               /* Create the start task                                */
  109.                  (CPU_CHAR   *)"Backlight_TASK",
  110.                  (OS_TASK_PTR )Backlight_TASK,
  111.                  (void       *)0,
  112.                  (OS_PRIO     )APP_Backlight_PRIO,
  113.                  (CPU_STK    *)&App_Backlight_TASK_Stk[0],
  114.                  (CPU_STK_SIZE)APP_Backlight_TASK_STK_SIZE / 10,
  115.                  (CPU_STK_SIZE)APP_Backlight_TASK_STK_SIZE,
  116.                  (OS_MSG_QTY  )0,
  117.                  (OS_TICK     )0,
  118.                  (void       *)0,
  119.                  (OS_OPT      )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
  120.                  (OS_ERR     *)&err);        

  121.                                  
  122.         OSStart(&err);
  123.         while(1);
  124. }

  125. int fputc(int ch, FILE *f)
  126. {
  127.         USART_SendData(USART3,(u8) ch);
  128.         while(USART_GetFlagStatus(USART3,USART_FLAG_TC)==RESET);
  129.         return ch;
  130. }
復(fù)制代碼

所有資料51hei提供下載:
emWin模板(2014-9-6).rar (14.59 MB, 下載次數(shù): 56)



回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表