找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 15586|回復(fù): 0
收起左側(cè)

Proteus8.9 VSM Studio GCCl編譯器仿真STM32F407ZGT6系列012_lcd1602一線屏

[復(fù)制鏈接]
ID:371233 發(fā)表于 2020-5-21 20:41 | 顯示全部樓層 |閱讀模式
一,打開文件(可以隨文下載放置在文檔中打開)。(如下圖1所示)
1.png
圖1

二,調(diào)整原理圖大小,適合可視,另存工程文件。(如下圖2,3,4所示)
2.png
圖2

3.png
圖3

4.png
圖4

三,點(diǎn)擊Source Code標(biāo)簽。(如下圖5所示)
5.png
圖5

四,編輯main.c 代碼如Proteus8.9 VSM Studio GCCl編譯器仿真STM32F407ZGT6系列012_lcd1602一線屏(如下圖6所示)
6.png
圖6

五,Main.c 代碼:

//* Main.c file generated by New Project wizard
* Author:   Ziegler Yin
* Created:   周四 一月 16 2020
* Processor: STM32F407ZGT6ZGT6
* Compiler:  GCC for ARM
*/

#include "mfuncs.h"
#include "delay.h"
#include "usart.h"
#include "comds.h"

u8 l;

int main(void)
{
        delay_init(84);  //初始化延時(shí)函數(shù)
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級分組2
        uart_init(9600);//初始化串口波特率為115200
       
               
   while(1) //實(shí)現(xiàn)比較值從0-300遞增,到300后從300-0遞減,循環(huán)
        {
               
                init();
                uprint(" Kaillen WorkWork\r\n");
                wrt_lin(1);
                uprint(" Wellcom YOU!\r\n");
                 for(l=0; l<255; l++) delay_ms(15);

                init();
                uprint(" Code Made\r\n");
                wrt_lin(1);
                uprint("  ---Ziegler Yin\r\n");
                 for(l=0; l<100; l++) delay_ms(15);
        }
}

stm32f4xx_conf.h:

/**
  ******************************************************************************
  * @file    Project/STM32F4xx_StdPeriph_Templates/stm32f4xx_conf.h  
  * @author  MCD Application Team
  * @version V1.8.0
  * @date    04-November-2016
  * @brief   Library configuration file.
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; COPYRIGHT 2016 STMicroelectronics</center></h2>
  *
  * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
  * You may not use this file except in compliance with the License.
  * You may obtain a copy of the License at:
  *
  *        http://www.st.com/software_license_agreement_liberty_v2
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  *
  ******************************************************************************
  */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __STM32F4xx_CONF_H
#define __STM32F4xx_CONF_H

/* Includes ------------------------------------------------------------------*/
/* Uncomment the line below to enable peripheral header file inclusion */

//#include "stm32f4xx_adc.h"
//#include "stm32f4xx_crc.h"
#include "stm32f4xx_dbgmcu.h"
//#include "stm32f4xx_dma.h"
#include "stm32f4xx_exti.h"
//#include "stm32f4xx_flash.h"
#include "stm32f4xx_gpio.h"
//#include "stm32f4xx_i2c.h"
//#include "stm32f4xx_iwdg.h"
#include "stm32f4xx_pwr.h"
#include "stm32f4xx_rcc.h"
//#include "stm32f4xx_rtc.h"
//#include "stm32f4xx_sdio.h"
//#include "stm32f4xx_spi.h"
#include "stm32f4xx_syscfg.h"
#include "stm32f4xx_tim.h"
#include "stm32f4xx_usart.h"
//#include "stm32f4xx_wwdg.h"
#include "misc.h"
/* High level functions for NVIC and SysTick (add-on to CMSIS functions) */



#if defined(STM32F40_41xxx)
//#include "stm32f4xx_cryp.h"
//#include "stm32f4xx_hash.h"
//#include "stm32f4xx_rng.h"
//#include "stm32f4xx_can.h"
#include "stm32f4xx_dac.h"
//#include "stm32f4xx_dcmi.h"
//#include "stm32f4xx_fsmc.h"
#endif /* STM32F40_41xxx */




/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/

/* If an external clock source is used, then the value of the following define
   should be set to the value of the external clock source, else, if no external
   clock is used, keep this define commented */
/*#define I2S_EXTERNAL_CLOCK_VAL   12288000 */ /* Value of the external clock in Hz */


/* Uncomment the line below to expanse the "assert_param" macro in the
   Standard Peripheral Library drivers code */
/* #define USE_FULL_ASSERT    1 */

/* Exported macro ------------------------------------------------------------*/
#ifdef  USE_FULL_ASSERT

/**
  * @brief  The assert_param macro is used for function's parameters check.
  * @param  expr: If expr is false, it calls assert_failed function
  *   which reports the name of the source file and the source
  *   line number of the call that failed.
  *   If expr is true, it returns no value.
  * @retval None
  */
  #define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))
/* Exported functions ------------------------------------------------------- */
  void assert_failed(uint8_t* file, uint32_t line);
#else
  #define assert_param(expr) ((void)0)
#endif /* USE_FULL_ASSERT */

#endif /* __STM32F4xx_CONF_H */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/


六,點(diǎn)擊構(gòu)建工程按鈕,編譯工程。(如下圖7所示)
7.png
圖7

七,點(diǎn)擊窗口左下方仿真按鈕,可見lcd1602一線屏和虛擬串口的信息顯示在屏。 (如下圖8,9,10所示)
8.png
圖8

9.png
圖9
10.png
圖10


八,選擇release,點(diǎn)擊構(gòu)建工程按鈕,編譯工程生成Hex文件。(如下圖11所示)
11.png
圖11


附件Proteus8.9 VSM Studio GCCl編譯器仿真STM32F407ZGT6系列012_lcd1602一線屏在已安裝Proteus8.9的計(jì)算機(jī)文件夾中打開即可
需要進(jìn)一步了解,請加入QQ群:976235464


012_LCD1602一線屏_02pt.rar

364.41 KB, 下載次數(shù): 18, 下載積分: 黑幣 -5

已安裝Proteus8.9的計(jì)算機(jī)文件夾中打開即可

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表