STM32嵌入式应用系统设计
安装vscode
1.安装vscode
在软件中心中,搜索Visual Studio Code,点击安装。
2.在vscode中安装C++的插件
按ctrl+p调出命令行,输入ext install cpptools出现下图。
安装C++的插件
3.配置调试和编译文件
在vscode打开一个包含.c文件的文件夹
打开C文件
点击左边三角形的图标进行运行,然后生成一个.json文件
配置launch.json和task.json文件
调试源代码文件需要创建或者生成tasks.json和launch.json文件。tasks.json文件帮助我们自动在终端中输入gcc指令,编译输出可运行文件,而launch.json文件启动gdb程序进行调试。
1.创建文件夹并进入该文件夹内部
2.创建并编写test8.c
代码参考以往作业
#include <stdio.h>
void ShowRevertNum(int iNum)
{
while (iNum > 10)
{
printf("%d", iNum % 10);
iNum = iNum / 10;
}
printf("%d\n", iNum);
}
int main(void)
{
int iNum;
printf("Please input a number :");
scanf("%d", &iNum);
printf("After revert : ");
ShowRevertNum(iNum);
return 0;
}
3.选择C++(GDB/LLDB)插件后根据提示选择“g++ -生成和调试活动文件”,运行结束后VSCode会自动生成适用于gcc编译的launch.json文件。
4.点击工具栏上的Terminal(终端),选择Configure Tasks(配置任务) -> C/C++:gcc build active file,VSCode会自动生成适用于gcc编译的tasks.json文件,保存后继续进行编译,并且在第九行后添加语句:
"${fileDirname}/test8.c",
编译调试C++程序
配置好后在test.c文件界面先按ctrl+shift+B编译再按上方调试工具栏的图标绿色箭头
发现输入为“100”时,原则上应该输出“001”但现在输出“010”,说明代码出现问题。设置断点开始调试。
调试后发现当iNum=10时程序会跳出循环,将循环条件改为
while (iNum >= 10)
重新进行调试,并再次输入100
得到正确结果,编译成功。
Proteus仿真运行stm32程序
1.创建proteus新工程文件
1.点击创建新工程,输入工程名、安装路径
2.选择从选中的模板中创建原理图(DEFAULT)。
3.选择不创建PCB布版设计。
4.选择创建固件项目,其中:系列选择Cortex-M3,Controller选择STM32F103R6,点击下一步,创建成功。
2.配置实验所需原件
1.创建项目完成后就如下图所示,显示自己所选的型号,STM32F103R6,系统并以配置好电源。
2.添加实验所需灯,点击左边P,在关键字中输入LED-YELLOW,并点击确认选中。
3.添加实验所需电阻,点击左边P,在关键字中输入RES,并点击确认选中。
4.添加完灯和电阻后屏幕会如下图所示。
5.设置电阻值为50
6.链接器件,如图
3.keil5中编写程序
进入keil 5中选择Option for Target,然后勾选Create HEX file,生成hex文件。
4.导入hex文件进入stm32芯片中
配置Crystal Frequency改成8M(设置晶振为8M)。
5.开始仿真
该程序是8个led灯依次闪烁,然后全部闪烁一次,再全部熄灭,重复上述现象。
Altium_Designer设计stm32最小电路原理图
安装软件
画STM32最小系统
1.首先建立一个工程
2.添加原理图工程
3.保存工程
4.下载并安装库文件
连线元件,创建原理图
左键双击所需元件放在图上
按ctrl+w拉线,用复制提高效率。
放置网络编号
重复上述步骤,完成这个原理图的绘制。
结果展示