STM32程序设计以及原理图绘制
STM32跑马灯程序设计及仿真1、创建新的项目2、选择stm32f103r63、主程序:4、led.c程序5、proteus电路图设计6、注意事项:6.1:选择Design6.2:选择power rail configuration6.3:将vss、vdda添加到右边6.4:退出界面后双击32单片机
7、添加HEX文件:8、运行结果:9、总结:
STM32原理图绘制1、下载安装AD软件2、进入AD软件3、新建项目:4、创建原理图5、创建原理图库6、添加STM32元件库6.1 选择AD界面右下角panels6.2选择components6.3点击右边三条横杠6.4将元件库复制到文件夹中6.5退出文件夹界面后添加、安装元件库
7、绘制原理图8、绘制小技巧:9、编译执行:9.1 run9.2编译成功
10、小总结:
STM32跑马灯程序设计及仿真
1、创建新的项目
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109215833159.png#pic_center)
2、选择stm32f103r6
选择r6的原因是新版proteus中自带r6的元件库,如果选择ZET6还需要另外在proteus安装库文件,具体可以去proteus官网搜索STM32库 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020110922011612.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
3、主程序:
#include "stm32f10x.h"
#include "led.h"
#include "stdio.h"
void Delay(u16 t)
{
u32 i;
while(t--)
for(i=1;i
GPIO_ResetBits(GPIOC,GPIO_Pin_0);//让PC_0口输出为低电平,从而使灯0亮
Delay(200);//延时500ms
GPIO_SetBits(GPIOC,GPIO_Pin_0);//灯0灭
GPIO_ResetBits(GPIOC,GPIO_Pin_1);//灯1亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_1);//灯1灭
GPIO_ResetBits(GPIOC,GPIO_Pin_2);//灯2亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_2);//灯2灭
GPIO_ResetBits(GPIOC,GPIO_Pin_3);//灯3亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_3);//灯3灭
GPIO_ResetBits(GPIOC,GPIO_Pin_4);//灯4亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_4);//灯4灭
GPIO_ResetBits(GPIOC,GPIO_Pin_5);//灯5亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_5);//灯5灭
GPIO_ResetBits(GPIOC,GPIO_Pin_6);//灯6亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_6);//灯6灭
GPIO_ResetBits(GPIOC,GPIO_Pin_7);//灯7亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_7);//灯7灭
Delay(200);
GPIO_ResetBits(GPIOC,GPIO_Pin_0|GPIO_Pin_1);//灯0、1亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_0|GPIO_Pin_1);//灯0、1灭
GPIO_ResetBits(GPIOC,GPIO_Pin_2|GPIO_Pin_3);//灯2、3亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_2|GPIO_Pin_3);//灯2、3灭
GPIO_ResetBits(GPIOC,GPIO_Pin_4|GPIO_Pin_5);//灯4、5亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_4|GPIO_Pin_5);//灯4、5灭
GPIO_ResetBits(GPIOC,GPIO_Pin_6|GPIO_Pin_7);//灯6、7亮
Delay(200);
GPIO_SetBits(GPIOC,GPIO_Pin_6|GPIO_Pin_7);//灯6、7灭
for(i=0;i
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_SetBits(GPIOC,GPIO_Pin_0 | GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);
}
目的:初始化IO口,使能IO口时钟,调整IO口输出频率,设置IO口输出方式,初始化IO口输出方式。 运行前记得点击魔法棒 选择output 选择创建HEX文件 然后运行,这样就可以生成proteus可以执行的文件。
5、proteus电路图设计
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109221253936.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6、注意事项:
6.1:选择Design
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020110922140086.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.2:选择power rail configuration
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109221451997.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.3:将vss、vdda添加到右边
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020110922155729.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.4:退出界面后双击32单片机
将所圈的地方改为72MHZ
7、添加HEX文件:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109221739975.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
8、运行结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109232213789.gif#pic_center)
9、总结:
STM32程序开发相对51来说更加的方便,很多程序在商家层面就将程序封装好了,很多只需要调用即可,通过这次程序设计,我收益颇多,感觉32的学习也还行,没有想象中的那么困难。
STM32原理图绘制
1、下载安装AD软件
因为我之前就安装好了,具体过程可以搜索阿虚同学,找到计算机常用软件,软件管家会告诉你安装过程 直接上链接: 点击我 阿虚同学还有更多丰富的资料。大家也可以多多去看看 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109222507951.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
2、进入AD软件
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109222554467.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
3、新建项目:
在文件里选择新的,然后选择新的项目 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020110922274766.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
4、创建原理图
同样在文件里选择新的,选择原理图
5、创建原理图库
同样咋文件里选择新的,选择库,在选择原理图库 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109224433457.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6、添加STM32元件库
6.1 选择AD界面右下角panels
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109224647201.png#pic_center)
6.2选择components
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109224755945.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.3点击右边三条横杠
步骤如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109224923504.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.4将元件库复制到文件夹中
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109225025577.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
6.5退出文件夹界面后添加、安装元件库
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109225124655.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
7、绘制原理图
元件在components中,相隔的线可以用直尺选项 作线。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109225312358.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
8、绘制小技巧:
1、先将所有元件找到并放入图中,最后连线。 2、一开始可以不用写元件号,最后一步添加,步骤如下 选择工具----->选择标注----->选择原理图标注 可以快速一件更新 3、封装可以将所有图画好后进行封装。
9、编译执行:
9.1 run
选择需要编译的原理图,然后点击run ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109230314715.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
9.2编译成功
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201109230436724.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ3MzQzNzI5,size_16,color_FFFFFF,t_70#pic_center)
10、小总结:
总的来说AD绘制原理图比较费时间,STM32最小系统板的原理图网上资源很多,但是具体原理还需要深入研究,还有PCB的绘制,这个比较费眼睛,但是学习这个过程充满了乐趣,当你编译成功的那一刻,真正感受到了喜悦,但是对于原理图,我还得线下需要花一些更多的时间去学习研究具体原理。
|