标题: STM32+Proteus仿真实现计时程序 [打印本页]

作者: yzl0213    时间: 2021-12-24 14:07
标题: STM32+Proteus仿真实现计时程序
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include "stm32f10x.h"
  2. #include "stm32f10x_gpio.h"
  3. #include "stm32f10x_rcc.h"
  4. #include "LCD.h"
  5. #include "stm32f10x_exti.h"
  6. #include "misc.h"
  7. #include "core_cm3.h"
  8. #include "stm32f10x_it.h"
  9. #include "sysclk.h"
  10. #include "I2C1.h"
  11. //   signed short   seg_table[]={0xc000,0xf900,0xa400,0xb000,0x9900,0x9200,0x8200,0xf800,0x8000,0x9000,0x8800,0x8300,
  12. //                                                  0xc600,0xa100,0x8600,0x8e00}; //共阳极
  13. //   int com_table[]={0x4000,0x8000}; //位号
  14. void nvic_config()
  15. {
  16.     NVIC_InitTypeDef NVIC_Initstrct ;
  17.     NVIC_PriorityGroupConfig( NVIC_PriorityGroup_1);

  18.         NVIC_Initstrct.NVIC_IRQChannel =EXTI15_10_IRQn;
  19.         NVIC_Initstrct.NVIC_IRQChannelPreemptionPriority =0;
  20.         NVIC_Initstrct.NVIC_IRQChannelSubPriority =0;
  21.         NVIC_Initstrct.NVIC_IRQChannelCmd=ENABLE;
  22.     NVIC_Init(&NVIC_Initstrct);
  23. }

  24. void gpio_init()
  25. {
  26.          GPIO_InitTypeDef GPIO_initstrct;
  27.         // EXTI_InitTypeDef EXTI_initstrct;
  28.      RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO, ENABLE);
  29.        
  30.          //nvic_config();//优先级配置

  31.          GPIO_initstrct.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_14|GPIO_Pin_15;
  32.          GPIO_initstrct.GPIO_Speed=GPIO_Speed_50MHz;
  33.          GPIO_initstrct.GPIO_Mode=GPIO_Mode_Out_PP;
  34.      GPIO_Init(GPIOA, &GPIO_initstrct);

  35.         // GPIO_initstrct.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;
  36.          GPIO_initstrct.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;
  37.          GPIO_initstrct.GPIO_Speed=GPIO_Speed_50MHz;
  38.          GPIO_initstrct.GPIO_Mode=GPIO_Mode_Out_PP;
  39.      GPIO_Init(GPIOB, &GPIO_initstrct);

  40. }



  41. int  main(void)
  42. {  

  43.   gpio_init();
  44.   sysclk_init();

  45.     while(1)
  46.   {
  47.           display();
  48.   }
  49. }
复制代码

Keil代码与Proteus仿真下载:
proteus_pro.7z (251.24 KB, 下载次数: 101)





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1