此前玩STM32都是做一些操作控制类的应用,虽然知道emWin给ST授权了UI设计,但也一直没有尝试过用STM32做UI设计,所以借此次试用的机会,学习下STemwin,活到老学到老~ 在STM32刚开始流行那会,大家学习完STM32的外设后,都会尝试移植ucOS这个操作系统,作为一款操作系统,总要有一个操作界面,ucOS的操作UI那时候叫ucUI,而emwin的前身正是ucUI,后来独立出来成为emwin,另外说一句,ucOS和emwin现在的维护者就是SEGGER,那个做Jlink的厂商。emwin将UI的设计授权给了ST,产生了STemwin,作为ST上的UI,STemwin只能够用在ST的单片机上,没办法用在其他单片机(其他单片机当然也可以用emwin,只要得到SEGGER的授权,那就不叫STemwin了,PS:不知道国产的GD32能不能用,哈哈~)
在阿波罗板上烧录STemwin的demo历程:
打开正点原子的例程——扩展例程——emwin扩展例程——EMWIN实验1 STemWin无操作系统移植,打开USER中的KEIL project文件。
由于我是使用Jlink调试下载程序的,正点原子的例程默认使用的是STlink,这里需要修改一下:
我们看下正点原子例程的main源码:
需要注意的是:由于STemwin是授权使用的产品,所以在使用时一定要开启STM32的CRC外设,这个外设用于验证STemwin,如果不开,则STemwin是使用不了的。
编译后点击烧录,将程序烧录进开发板,点击复位,可以看到开始演示emwin的功能,本版本用的是emwin5.30,并有ST的logo。
需要注意的是快速打点测试的结果,用STM32F7在正点原子4.3寸屏上的打点结果是19300000点每秒,4.3寸屏的分辨率是800*480,按照这个结果,则19300000/800/480=50.26,每秒钟可刷新该4.3寸屏50帧(这个结果比4.3寸屏说明的78.9帧少好多,可能是程序的优化问题,有待确认。)
demo程序之后,就是STemwin的控件学习了~
此前玩STM32都是做一些操作控制类的应用,虽然知道emWin给ST授权了UI设计,但也一直没有尝试过用STM32做UI设计,所以借此次试用的机会,学习下STemwin,活到老学到老~ 在STM32刚开始流行那会,大家学习完STM32的外设后,都会尝试移植ucOS这个操作系统,作为一款操作系统,总要有一个操作界面,ucOS的操作UI那时候叫ucUI,而emwin的前身正是ucUI,后来独立出来成为emwin,另外说一句,ucOS和emwin现在的维护者就是SEGGER,那个做Jlink的厂商。emwin将UI的设计授权给了ST,产生了STemwin,作为ST上的UI,STemwin只能够用在ST的单片机上,没办法用在其他单片机(其他单片机当然也可以用emwin,只要得到SEGGER的授权,那就不叫STemwin了,PS:不知道国产的GD32能不能用,哈哈~)
在阿波罗板上烧录STemwin的demo历程:
打开正点原子的例程——扩展例程——emwin扩展例程——EMWIN实验1 STemWin无操作系统移植,打开USER中的KEIL project文件。
由于我是使用Jlink调试下载程序的,正点原子的例程默认使用的是STlink,这里需要修改一下:
我们看下正点原子例程的main源码:
需要注意的是:由于STemwin是授权使用的产品,所以在使用时一定要开启STM32的CRC外设,这个外设用于验证STemwin,如果不开,则STemwin是使用不了的。
编译后点击烧录,将程序烧录进开发板,点击复位,可以看到开始演示emwin的功能,本版本用的是emwin5.30,并有ST的logo。
需要注意的是快速打点测试的结果,用STM32F7在正点原子4.3寸屏上的打点结果是19300000点每秒,4.3寸屏的分辨率是800*480,按照这个结果,则19300000/800/480=50.26,每秒钟可刷新该4.3寸屏50帧(这个结果比4.3寸屏说明的78.9帧少好多,可能是程序的优化问题,有待确认。)
demo程序之后,就是STemwin的控件学习了~