[分享] 【STM32项目】开发板正反面实物图、电路介绍
626 查看
9 回复
 楼主 | 发布于 2019-10-10 | 只看楼主
分享到:

【STM32项目】开发板正反面实物图、电路介绍

一、说明




如图1-1所示为STM32F746G-DISCO开发板正反面实物图,我个人是第一次见过7系列的板子,非常遗憾说自己能力有限,所写相关测试项目都是基础硬件测试(可能还不全)。

这是一篇关于STM32F74G-DISCO开发板的介绍、同时还收入了一些收集整理的资料分享给大家。东西有点多,但展示和资料较全面,需要点时间一点点完善这篇帖子,也欢迎喜欢STM32的朋友给提点意见。

(0 ) (0 )
回复 举报

楼主 | 回复于 2019-10-10 沙发

开发板介绍





如图2-1所示,这张图直观的标注了板子上元件的位置和名称。这里主要只介绍几个核心设备,与之相关的手册请参考第6小节。开发板支持如下功能:

      [1]   STM32F746NGH6内部有1M的flash存储空间、340Kb的RAM存储空间、封装格式为BGA216(即216引脚)。

      
[1]   4.3寸TFT类型的彩色屏幕,分辨率为480x272 ,支持电容感应触摸。
[2]   • USB OTG HS FS
[3]   串行音频接口SAI ,支持音频解码。
[4]   ST-MEMS digital microphones
[5]   Quad-SPI 接口,128M的 Flash存储空间。
[6]   128M的SDRAM存储空间
[7]   供用户使用和复位摇杆按键各一个
[8]    板载接口:

– Camera接口
– 两个迷你USB接口
– 以太网RJ45接口
– SPDIF RCA input
– 外部扩展扬声器接口
– 迷你SD卡接口
– RF-EEPROM daughterboard
[1]   板载扩展接口:支持扩展Arduino ™ Uno V3
[2]    支持ST-Link下载、调试、仿真功能,多种供电方式。
[3]   支持STM32Cube 软件包,提供案例。
[4]   支持IAR ™ , Keil ® , GCC-based IDEs, ARM ® mbed ™多种编译器。

如图所示2-3,为开发板自带例程运行效果。


(0 )
评论 (0) 举报

楼主 | 回复于 2019-10-10 2#

基本性能测试

1GPIO-LED
(0 )
评论 (0) 举报

楼主 | 回复于 2019-10-10 3#




部分代码:
void LED_Init(void)
{         
      GPIO_InitTypeDef  GPIO_InitStruct;
      __GPIOI_CLK_ENABLE();
      GPIO_InitStruct.Pin = GPIO_PIN_1;              // 靠近边缘处LED
      GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
      GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
      GPIO_InitStruct.Pull = GPIO_PULLUP;
      HAL_GPIO_Init(GPIOI, &GPIO_InitStruct);
      HAL_GPIO_WritePin(GPIOI,GPIO_PIN_1,GPIO_PIN_RESET); }
void LED_Flash(void)
{   
      HAL_GPIO_TogglePin(GPIOI,GPIO_PIN_1);
      delay_ms(1000);
}
(0 )
评论 (0) 举报

楼主 | 回复于 2019-10-10 4#

2、GPIO-Button+LED

(0 )
评论 (0) 举报

楼主 | 回复于 2019-10-10 5#

部分代码:
void Key_Info_Init(void)
{
      Key_Info.Num = 0;
      Key_Info.State = Key_UP;
      Key_Info.Num_Last = 0;     
      Key_Info.Key_Delay_Cnt = 0;
}
void Key_Init(void)
{
      GPIO_InitTypeDef GPIO_InitStruct;
      __GPIOI_CLK_ENABLE();
GPIO_InitStruct.Pin = GPIO_PIN_11;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
HAL_GPIO_Init(GPIOI, &GPIO_InitStruct);
      Key_Info_Init();
}
void Key_Read(void)
{
      u8 Key_CurrNum;
      delay_ms(1);
      Key_CurrNum = 0;
      Key_CurrNum = Independent_Key_Scan();
      if((Key_Info.Shake_LastNum == Key_CurrNum)&&(Key_CurrNum != 0))
      {
           Key_Info.Key_Delay_Cnt++;
           if(Key_Info.Key_Delay_Cnt > KEY_SHAKE_DELAY)
           {
                 Key_Info.Key_Delay_Cnt = KEY_SHAKE_DELAY + 1;
                 Key_Info.State = Key_KEEP;
           }
           if(Key_Info.Key_Delay_Cnt == KEY_SHAKE_DELAY)
           {
                 Key_Info.Num = Key_Info.Shake_LastNum;
                 Key_Info.State = Key_DOWN;
           }
      }
      else
      {
           Key_Info.Key_Delay_Cnt = 0;
           Key_Info.Num = 0;
           Key_Info.State = Key_UP;
      }
      Key_Info.Shake_LastNum = Key_CurrNum;
}


3、外部中断部分代码

void GPIO_EXTI_ISR(uint16_t GPIO_Pin)
{
      if(GPIO_Pin == GPIO_PIN_11)
      {
           HAL_GPIO_TogglePin(GPIOI,GPIO_PIN_1);
      }
}
int main(void)
{
      System_Init();
      SysTick_Init(NULL);

      LED_Init();      
      Exti_Init(GPIO_EXTI_ISR);

      while(1)
      {

      }
}
void Exti_Init(void (*ISR)(uint16_t GPIO_Pin))
{
      GPIO_InitTypeDef GPIO_InitStruct;
      Exti_ISR.exti_isr = ISR;
      __GPIOI_CLK_ENABLE(); //使能GPIOI时钟
GPIO_InitStruct.Pin = GPIO_PIN_11;
          GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
          GPIO_InitStruct.Pull = GPIO_NOPULL;
          GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
    HAL_GPIO_Init(GPIOI, &GPIO_InitStruct);
          /* Enable and set Button EXTI Interrupt to the lowest priority */
    HAL_NVIC_SetPriority(EXTI15_10_IRQn , 0x0F, 0);
    HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);
}
void EXTI15_10_IRQHandler(void)
{
      HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_11);
}
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
      if(Exti_ISR.exti_isr != NULL) Exti_ISR.exti_isr(GPIO_Pin);
}
(0 )
评论 (0) 举报

回复于 2019-10-10 6#

感谢分享
(0 )
评论 (0) 举报

回复于 2019-10-10 7#

谢谢分享!!!!
(0 )
评论 (0) 举报

回复于 2019-10-19 8#

感谢分享!!!
(0 )
评论 (0) 举报

回复于 2019-10-19 9#

学习了
(0 )
评论 (0) 举报
  • 发表回复
    0/3000





    举报

    请选择举报类别

    • 广告垃圾
    • 违规内容
    • 恶意灌水
    • 重复发帖

    全部板块

    返回顶部