打印

Proteus8.9 仿真STM32407ZGT6系列002_USART

[复制链接]
299|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一,    打开模板文件(可以随文下载放置在文档中打开)。(如下图1所示)

图1
二,另存工程文件,添加虚拟仿真USART。(如下图2,3所示)

图2

图3
三,点击Source Code标签。(如下图4所示)

图4
四,编辑main.c代码。Led.c, led.h 代码如Proteus8.9 仿真STM32407ZGT6系列001(如下图5所示)

图5
五,Main.c 代码:
#include "stm32f4xx_conf.h"
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#define Oppsit(A) (A!=0)?0:1
u8 i, t=0;
u8 str[6][17]={  "红灯亮!!!...\r\n",
                                        "红亮灭!!!...\r\n",
                                        "黄灯亮!!!...\r\n",
                                        "黄亮灭!!!...\r\n",
                                        "绿灯亮!!!...\r\n",
                                        "绿亮灭!!!...\r\n",
                   };
int main (void)
{
       NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
       delay_init(168);    //初始化延时函数
       uart_init(9600);     //串口初始化
       LED_Init();                           //初始化LED端口 if(USART_RX_STA&0x8000)
       while(1)
       {
                  for(i=0; i<6; i++){
                                   PCout((i/2+1))=Oppsit((i%2));
                                   for(t=0;t<16;t++){
                                          USART_SendData(USART1,(u16) str[ i][t]);
                                          while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
                                   }
                             delay_ms(500);
            }
       }
}
六,点击构建工程按钮,编译工程。(如下图6所示)

图6
七,点击窗口左下方仿真按钮,可见红黄绿灯每个0.5s跳闪仿真,USART虚拟串口仿真显示。(如下图7,8,9所示)

图7

图8

图9
八,选择release,点击构建工程按钮,编译工程生成Hex文件。(如下图10所示)

图10
九,笔者准备的是普中F407ZGT6的核心板,通过普中自动下载软件将Proteus VSM Studio生成的Hex文件下载到开发板上。可见开发板连接的红黄绿灯模块每个0.5s红黄绿灯跳闪,电脑串口将单片机红黄绿等亮灭情况打印显示。(如下图11,12,13,14所示)

图11

图12

图13

图14
.
附件Proteus8.9 仿真STM32407ZGT6系列基础模板t00在已安装Proteus8.9的计算机文件夹中打开即可。
需要进一步了解,请加入QQ群:976235464


使用特权

评论回复

相关帖子

沙发
52mcu| | 2021-10-18 21:31 | 只看该作者
我用keil mdk 生成程序仿真串口输出,波特率怎么弄都不对

使用特权

评论回复
发新帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

13

帖子

0

粉丝