stm32能安装linux吗(的人可能还不知道OS环境下如何安装STM32CubeM)
stm32能安装linux吗(的人可能还不知道OS环境下如何安装STM32CubeM)导入离线的已经下载好的安装包)5、安装Libraryies,根据不同的系列,安装自己想要的Libraryies。这个的安装跟windows的一致(可以在线下载安装,也可以2、在安装os版的STM32CubeMX之前,首先还是需要像windows一样安装JAVA的虚拟环境。JAVA虚拟环境链接我安装的是如下红色方框中的这个版本:
好像STM32CubeMX在4.12后还是哪个版本以后就支持了OS X和Linux。想想windows的也用过,不知道其他两个系统下,这个STM32CubeMX到底感觉咋样呢?虽然实际中使用标准外设库多一些,但是这个STM32CubeMX还是需要慢慢熟悉的。
这几天朋友刚好过来,他带着mac pro,正好用他的机子来安装OS版的STM32CubeMX。同时也想看看OS下这个的界面,想一睹为快。所以就经过朋友的同意,在OS的系统下,安装STM32CubeMX,来带大家装装字母A与字母C之间的那个字母。
一、安装
1、安装首先要去ST官网下载STM32CubeMX的压缩包,并放在OS下进行解压。解压完成,文件如下:
2、在安装os版的STM32CubeMX之前,首先还是需要像windows一样安装JAVA的虚拟环境。
JAVA虚拟环境链接
我安装的是如下红色方框中的这个版本:
5、安装Libraryies,根据不同的系列,安装自己想要的Libraryies。这个的安装跟windows的一致(可以在线下载安装,也可以
导入离线的已经下载好的安装包)
二、使用
计划还是使用OS版本的STM32CubeMX来体验一下。手里有个Nucelo--32(STM32F042K6)的板子,用它来实现一个简单的uart1例程。
1、查看datasheet,看uart1对应哪个GPIO。查看后,发现是PA9(TX),PA10(RX)
2、查看原理图中PA9和PA10 是否有接其他外设,以免影响我这个uart1的例程。发现PA9和PA10直接由插针引出。
3、利用STM32CubeMX新建工程:
因为这个板子没有外部晶振,所以使用HSI。使用UART1(PA9和PA10)
使用HSI经过倍频至48Mhz,从而产生48Mhz的系统时钟。
UART1的配置:
GPIO的设置(不用再去设)
因为不知道OS系统上有什么IDE(至少没有os的iar和keil吧)可以编译这个STM32CubeMX产生的工程。所以先生成MDK5的工程。将工程文件目录拷贝到windows下,利用keil5进行处理。
4、在MDK5中添加相应的用户代码,并编译下载到板子。
a、添加打印相关的代码:
-
#pragma import(__use_no_semihosting)
-
struct __FILE
-
{
-
int handle;
-
/* Whatever you require here. If the only file you are using is */
-
/* standard output using printf() for debugging no file handling */
-
/* is required. */
-
};
-
/* FILE is typedef’ d in stdio.h. */
-
FILE __stdout;
-
void _sys_exit(int x)
-
{
-
x = x;
-
}
-
int fputc(int ch FILE *f)
-
{
-
while((USART1->ISR&0X40)==0);
-
USART1->TDR = (uint8_t) ch;
-
return ch;
-
}
复制代码
b、在main函数的while循环中,添加用户代码(打印系统时钟,打印一串字符)
-
while (1)
-
{
-
uint32_t SysClk;
-
/* USER CODE END WHILE */
-
/* USER CODE BEGIN 3 */
-
SysClk = HAL_RCC_GetSysClockFreq();
-
printf("System Clock is :%d\r\n" SysClk);
-
HAL_UART_Transmit(&huart1 "This is uart example for stm32cbueMX of IOS\r\n" sizeof("This is uart example for stm32cbueMX of IOS \r\n") 1000);
-
HAL_Delay(1000);
-
}
复制代码
5、使用OS的终端,运行简单的命令(这个命令是参考网上的),使终端打印出信息。(当然也可以用windows的串口调试助手,用终端就是想装装X)
a、安装OS版的驱动(因为使用的是PL2303的usb转TTL的串口线)
b、查看驱动是否安装成功:
c、实物连接:
d、运行终端命令:
-
cd /dev
-
ls tty.*
-
screen /dev/tty.usbserial 115200
复制代码
(如果这个命令报错,重新插拔USB转TTL的串口线即可)
终端打印的信息如下:
总体来说,OS版的STM32CubeMX除了安装跟Windows有点区别之外,好像其他暂时没有发现与windows有啥区别。
以上图文内容均是EEWORLD论坛网友:huaiqiao原创,在此感谢。
欢迎微博@EEWORLD
如果你也写过此类原创干货请关注EEWORLD(电子工程世界)回复“投稿”,也可将你的原创发至:bbs_service@eeworld.com.cn,一经入选,我们将帮你登上头条!
与更多行业内网友进行交流请登陆EEWORLD论坛。