STM32嵌入式应用系统设计

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拉线,用复制提高效率。

放置网络编号

重复上述步骤,完成这个原理图的绘制。
结果展示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值