我们都听说过微信小程序,但是你听说过用单片机开发的小程序吗?
世界上没有什么不可以做,只是你没想到。。。。。。见图,所见即所得:
图中的手机可不是一般的手机,其内部包含了stm32单片机,我们叫它智能屏,这里讲的智能屏其实就是手机模块与单片机结合开发的智能屏。我们可以利用上层软件平台给单片机提供的API,在单片机上用C语言开发小程序。
此屏可不一样,对,我们不一样!!!
说多没有用,详细情况可以了解我在公司论坛上发的一篇帖子,帖子里有demo,代码+视频演示:
利用雨滴智能屏(手机模块+单片机方案)和我们提供的软件API,我们可以在单片机上用C语言开发“小程序”。
下面有一demo展示给大家。
视频效果
目前我们采用stm32系列单片机,在keil开发环境下编写实现视频中效果的代码menu.c
- #include "gui.h"
- #include "menu.h"
- #include "delay.h"
- void InitWindows(void)
- {
- System.Window.InitWindow(&App.Menu.PictureWindow);
- App.Menu.PictureWindow.Id = "pictureWin";
- App.Menu.PictureWindow.Width = "100%";
- App.Menu.PictureWindow.Height = "100%";
- App.Menu.PictureWindow.Display = "1";
- App.Menu.PictureWindow.BackgroundColor = "#0968F7";
- }
- void InitPictureWindow(void)
- {
- Slide * tempSlide = NULL;
- Slide showPicture;
- Slide logo;
- System.Window.CreateWindow(&App.Menu.PictureWindow);
- tempSlide = &showPicture;
- System.Window.Slide.InitSlide(tempSlide);
- tempSlide->Id = "showPic";
- tempSlide->Path = "/Download/h5os_lib/picture/";
- tempSlide->FileName = "raindi.png,banner1.jpg,banner2.jpg,banner3.jpg";
- tempSlide->Delay = "3000";
- tempSlide->Speed = "2000";
- tempSlide->Isloop = "false";
- tempSlide->Top = "0";
- tempSlide->Left = "0";
- tempSlide->Width = "100%";
- tempSlide->Height = "100%";
- System.Window.Slide.AddSlide(&App.Menu.PictureWindow, tempSlide);
- tempSlide = &logo;
- System.Window.Slide.InitSlide(tempSlide);
- tempSlide->Id = "showPic";
- tempSlide->Path = "/Download/h5os_lib/picture/";
- tempSlide->FileName = "logo.png";
- tempSlide->Top = "0";
- tempSlide->Left = "0";
- tempSlide->Width = "30%";
- tempSlide->Height = "14%";
- System.Window.Slide.AddSlide(&App.Menu.PictureWindow, tempSlide);
- }
- void InitMenu(void)
- {
- InitWindows();
- InitPictureWindow();
- }
图片控件,一个是视频中雨滴智能屏左上角悬空的logo控件,这两个控件都有共同的属性,
即都是图片,只是展示方式不同而已,有静态动态两种,因此可以用slide创建它们。
这只是一个简单的demo,我们还可以通过调用很多我们提供的API实现更加复杂的“小程序”。
比如下面的另一个demo的演示视频,这个视频是通过录屏软件录制。
更加全面的有关雨滴智能屏的功能展示有待后期更新,多谢关注!