2.2. emWin与ucGUI、STemWin的关系¶
在国内的嵌入式行业中,由于uC/OS系统的名气,大家比较熟悉的嵌入式图形软件库是uC/GUI,但大部分人不知道,
其实uC/GUI是Segger公司为Micrium公司(制作uC/OS的公司)定制的图形软件库,说是定制,但其实它跟emWin的区别并不大,
以致于本人并不知道它们在功能上究竟差别在何处。比较确定的是旧版本uC/GUI在网上还可以找到开源的代码,
而当前新版本的emWin及uC/GUI只对用户提供了库文件,是不开源的。
另外,Segger公司还向ST公司出售了emWin的版权,从而ST公司也得到了定制版的emWin,然后改了名字叫STemWin。
当用户在STM32芯片上使用emWin软件库时,是不需要向Segger或ST付费的。
总而言之,uC/GUI和STemWin都是Segger公司的emWin产品,而且它们的版本编号是统一的,
如uC/GUI目前最新版本命名为uC-GUI V5.48.00,STemWin最新版本命名为STemWin V5.44a,
emWin最新版本则为emWinV5.48,所以,要比较这三个软件库功能上的区别,只需要看它们的版本号就可以了。
虽然功能上没有区别,但因为版权付费问题,在实际使用时就需要根据自己的平台来选择。由于我们使用的是STM32开发平台,
自然我们选择的是STemWin。因为如果我们选择的是emWin或uC/GUI使用到STM32产品上,同样是需要向Segger或Micrium公司购买版权的,
而使用STemWin就不存在这个问题。在STemWin里有一个检测机制确定代码所运行的平台,若是STM32芯片,则运行正常,若非STM32芯片,就不能正常使用了。
在本教程后续的讲解中,无特殊说明,不再区分emWin和STemWin。