你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

开箱转盘中奖礼物,跑个“代码❤️”先!

[复制链接]
A0dy 提问时间:2025-12-21 22:30 / 未解决

硬件介绍

转盘抽奖中的(STM32随机开发板),官网显示的是蓝色版本的,收到的这款是绿色的;开发板有TFT屏幕,还有板载陀螺仪等,而且引出的引脚数量也很多,连接其他外设也足够了;不过连接的USB接口是Mini_USB


硬件介绍

STM32F429I-DISC1开发板,是基于STM32F429ZIT6U的MCU,具有Arm Cortex-M4内核,配备2.4英寸QVGA TFT LCD、64-Mbit SDRAM、ST-MEMS陀螺仪(I3G4250D)、USB OTG接口(Micro-USB)、6个LED灯 和 2个按键(User / Reset),带有ST-LINK/V2-B,支持Mbed,同时具有虚拟串口和U盘功能。

image-20251220233906681.png

上电默认运行自带Demo的一些演示效果;

image-20251220234346639.png

image-20250429221945922.png

image-20250427233652040.png


陀螺仪MEMS(ST-MEMS I3G4250D)

I3G4250D 是一款低功耗、三轴角速率传感器;I3G4250D 具有 ±245 / ±500 / ±2000 dps 的满量程,并且能够以用户可选择的带宽测量速率。STM32F429ZIT6 通过 SPI_5接口控制此运动传感器。


TFT_LCD屏幕

2.4英寸显示屏、具有262K色彩、QVGA(240 x 320);使用RGB协议驱动。

包括ILI9341_LCD控制器,STMPE811QTR 触摸屏控制器;


64Mbit SDRAM(1 Mbit x 16 位 x 4 组)

IS42S16400J 是一种高速同步动态随机存储器(SDRAM),64Mb的存储容量,采用4个bank,每个bank大小为16Mb,总线宽度为16位,工作电压为3.3V;

读 / 写:80Mhz


环境搭建

开发环境使用的是STM32CubeMX、Keil两款软件;

1、打开STM32CubeMX软件安装所需的F4系列芯片支持包,如图所示:

image-20250427215301856.png

2、选择所需芯片【STM32F429ZIT6】开发环境,如图所示:

image-20250427221908340.png

3、创建图形配置开发界面

image-20250427222635665.png


STM32CubeMX配置

1、开启****外部高速时钟****

image-20250428003645986.png

2、配置****串口功能****

根据原理图,ST_LINK的串口功能连接F4的USART1(**PA10、PA9)**

image-20250429214530727.png

3、配置****时钟树****

8MHz晶振倍频到100MHz作为 SYSCLK;

image-20250502150159077.png


代码编写

打开keil编写相关代码;

1、将printf重定向到串口1上,代码编写:


main.c:
    
/* USER CODE BEGIN 0 */
#define BUFF_SIZE 125
uint8_t Tx_Buffer[BUFF_SIZE];  // 发送区
volatile static uint16_t buf_pos = 0; 

//重定向prinf 用于发送数据    
int fputc(int ch, FILE *f) {        
    if (buf_pos >= BUFF_SIZE || ch == '\n') {     
        if (HAL_UART_GetState(&huart1) != HAL_UART_STATE_BUSY_TX) {
            HAL_UART_Transmit(&huart1, Tx_Buffer, buf_pos,HAL_MAX_DELAY);
            buf_pos = 0; // 重置位置
        }
    }
    
    // 写入发送区(如果未满)
    if (buf_pos < BUFF_SIZE) {
        Tx_Buffer[buf_pos++] = (uint8_t)ch;
    }
    return ch;
}    

/* USER CODE END 0 */    

2、printf输出相关内容,代码编写:

main.c:

int main(void)
{
  /* USER CODE BEGIN 1 */
  /* USER CODE END 1 */
  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
      
      printf("STM32 随机开发板 X1\r\n");
      printf("希望下次能继续中奖哦!!\r\n");
      printf("感谢ST管理员!!!\r\n");
      HAL_Delay(500);
      
    /* USER CODE END WHILE */
      
    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

烧录

使用Mini_USB数据线连接开发板标有ST-LINK的USB口;


效果

打开串口助手,输出相关内容;

F4_Code.gif

收藏 评论1 发布时间:2025-12-21 22:30

举报

1个回答
HyunYong 回答时间:1 小时前

这么快到货了么

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版