|
0.png (447.11 KB, 下載次數: 121)
下載附件
2016-11-15 12:57 上傳
工程文件和項目源碼如下:
(終結版不覆銅)STM32F103VET6 藍牙 2.0寸TFT.rar
(275.97 KB, 下載次數: 328)
2016-11-15 12:58 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
智能手表源碼.7z
(11.29 MB, 下載次數: 308)
2023-4-18 19:40 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
基于STM32F103VET6的智能手表,開放源代碼,電路原理圖,系統采用STM32F103VET6(主控芯片)+uCOS(操作系統)-III+emwin5.24(圖形界面)+MPU6050(三軸加速度傳感器)+BC04(藍牙模塊)+GPRS+DS18B20。
濕度那個就沒做啦
現在簡單介紹一下它的功能。功能簡介:
1.具有手表功能,可以查看當前日期、時間、以及環境的溫度和濕度。
2.可以對當前的使用者運動的情況進行檢測,檢測運動的步數,運動時間以及運動過程中所消耗的體內能量情況。
3.可以檢測當前使用者是否發生摔倒的情況,若摔倒則會以手機短信的形式發送到另一臺固定的手機號碼上。
4.可以進行家電控制的功能,控制空調的開關,溫度以及模式,控制大燈,房間,廚房燈的開關和亮度。
5.可以設置當前整個手表系統的環境,設置日期、時間、計步的靈敏度、藍牙開關、報警開關、以及屏幕的背光亮度,背光時長。
廢話不多說,現在先上幾張作品圖。
1.發個外觀圖,這個是時間界面,首先先要說明,我在這里發某一個寶鏈接并不是打廣告,只是方便讓大家做的時候更容易找到所需要的元器件。這個屏幕選用,ili9342。2.0寸,320*240的液晶屏。
GPRS模塊,它具有基站定位的功能。
2.計步界面(對應上面功能敘述2,下面同)
114759z49gfj92j08feppw.jpg.thumb.jpg (15.49 KB, 下載次數: 83)
下載附件
2016-11-15 13:02 上傳
3.報警界面
114801ai1b0juvscscle26.jpg.thumb.jpg (15 KB, 下載次數: 130)
下載附件
2016-11-15 13:02 上傳
4.藍牙控制家電界面
0.png (437.96 KB, 下載次數: 116)
下載附件
2016-11-15 12:55 上傳
5.系統設置界面
0.png (419.57 KB, 下載次數: 110)
下載附件
2016-11-15 12:55 上傳
界面設計的挺人性化的,想必大家一看界面就知道是怎么操作的啦。
接下來就是系統的原理圖,這里的圖片看不清楚,大家有興趣的話可以下載PDF文件來看看。
0.png (240.91 KB, 下載次數: 145)
下載附件
2016-11-15 12:55 上傳
主程序預覽:
- #include "include.h"
- FATFS fs[2];
- int main(void)
- {
- OS_ERR err;
- GUI_Init();
- GUI_Clear();
- BUTTON_SetDefaultSkin (BUTTON_SKIN_FLEX);
- PROGBAR_SetDefaultSkin (PROGBAR_SKIN_FLEX);
- SCROLLBAR_SetDefaultSkin (SCROLLBAR_SKIN_FLEX);
- SLIDER_SetDefaultSkin (SLIDER_SKIN_FLEX);
- HEADER_SetDefaultSkin (HEADER_SKIN_FLEX);
-
- // delay_init();
- // DS18B20_Init();
- // disk_initialize(0);
- // f_mount(0, &fs[0]);
- // BMP_Decode(0,0,BACKPICUTE);
- Rtc_Init();
- Touch_Init();
- TIM2_InitConfiguration(1000);
- TIM6_InitConfiguration(0);
- delay_init(1);
- Bluetooth_Init();
- GPRS_Init();
- OSInit(&err);
- OSTaskCreate((OS_TCB *)&AppTaskStart_TCB, /* Create the start task */
- (CPU_CHAR *)"App Task Start",
- (OS_TASK_PTR )AppTaskStart,
- (void *)0,
- (OS_PRIO )APP_TASK_START_PRIO,
- (CPU_STK *)&AppTaskStart_Stk[0],
- (CPU_STK_SIZE)APP_TASK_START_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_TASK_START_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
- OSTaskCreate((OS_TCB *)&App_INIT_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"Peripheral_Init_TASK",
- (OS_TASK_PTR )Peripheral_Init_TASK,
- (void *)0,
- (OS_PRIO )APP_INIT_PRIO,
- (CPU_STK *)&App_INIT_TASK_Stk[0],
- (CPU_STK_SIZE)APP_INIT_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_INIT_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
- OSTaskCreate((OS_TCB *)&App_Touch_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"Touch_TASK",
- (OS_TASK_PTR )Touch_TASK,
- (void *)0,
- (OS_PRIO )APP_Touch_PRIO,
- (CPU_STK *)&App_Touch_TASK_Stk[0],
- (CPU_STK_SIZE)APP_Touch_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_Touch_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
-
-
- OSTaskCreate((OS_TCB *)&App_MPU6050_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"MPU6050_TASK",
- (OS_TASK_PTR )MPU6050_TASK,
- (void *)0,
- (OS_PRIO )APP_MPU6050_PRIO,
- (CPU_STK *)&App_MPU6050_TASK_Stk[0],
- (CPU_STK_SIZE)APP_MPU6050_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_MPU6050_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
-
- OSTaskCreate((OS_TCB *)&App_Display_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"Display_TASK",
- (OS_TASK_PTR )Display_TASK,
- (void *)0,
- (OS_PRIO )APP_Display_PRIO,
- (CPU_STK *)&App_Display_TASK_Stk[0],
- (CPU_STK_SIZE)APP_Display_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_Display_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
- OSTaskCreate((OS_TCB *)&App_GPRS_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"GPRS_TASK",
- (OS_TASK_PTR )GPRS_TASK,
- (void *)0,
- (OS_PRIO )APP_GPRS_PRIO,
- (CPU_STK *)&App_GPRS_TASK_Stk[0],
- (CPU_STK_SIZE)APP_GPRS_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_GPRS_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
- OSTaskCreate((OS_TCB *)&App_Backlight_TASK_TCB, /* Create the start task */
- (CPU_CHAR *)"Backlight_TASK",
- (OS_TASK_PTR )Backlight_TASK,
- (void *)0,
- (OS_PRIO )APP_Backlight_PRIO,
- (CPU_STK *)&App_Backlight_TASK_Stk[0],
- (CPU_STK_SIZE)APP_Backlight_TASK_STK_SIZE / 10,
- (CPU_STK_SIZE)APP_Backlight_TASK_STK_SIZE,
- (OS_MSG_QTY )0,
- (OS_TICK )0,
- (void *)0,
- (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
- (OS_ERR *)&err);
-
- OSStart(&err);
- while(1);
- }
- int fputc(int ch, FILE *f)
- {
- USART_SendData(USART3,(u8) ch);
- while(USART_GetFlagStatus(USART3,USART_FLAG_TC)==RESET);
- return ch;
- }
復制代碼
|
評分
-
查看全部評分
|