myowl 发表于 2014-8-3 22:49:10

【STM32F429开发日志】基于rt-thread1.2.1+邮箱

拿到板子挺长时间的了,工作较忙,周末把前段时间的关于stm32f429的做的一些实验梳理了一下。
本次开发日志,主要涉及以下几个方面:
1、rt-thread1.2.1基于stm32f429的移植;
2、建立两个线程,线程1使LD3与LD4依次点亮并同时熄灭,并把两个LED状态实时显示在液晶屏上;
3、邮箱的建立,把两个LED的状态传递给线程2,并打印输出。
一、            rt-thread1.2.1基于stm32f429的移植
rt-thread1.2.1基于stm32f429的移植的基础是rt-thread 1.2.1 bsp文件夹下的stm32f40x,在bsp文件夹下,把“stm32f40x”这个文件夹复制一份,并命名为“stm32f429”。
1.        把STM32F429I-Discovery_FW_V1.0.1\Libraries目录下的所有文件夹复制到stm32f429\Libraries文件夹下,并替换相应的文件。
2.  进入文件夹,打开名为“project.uvproj”的工程文件,将device修改为STM32F429ZI,如图1所示:

3.        设置一些预定义:

4.        按图3所示设置器件的flash:

5.        把stm32f4xx.h文件中的如下语句中的晶振由原来的25000000修改为8000000,如下所示:
#if !defined  (HSE_VALUE)
  #define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
 
#endif /* HSE_VALUE */
6.        修改sdram和串口相关参数:
#define STM32_SRAM_SIZE         192
#define STM32_SRAM_END          (0x20000000 + STM32_SRAM_SIZE * 1024)
 
//#define RT_USING_UART1
#define RT_USING_UART1
//#define RT_USING_UART3
 
//Console on USART:no console USART 1 USART 2USART 3
//   <i>Default: 1
#define STM32_CONSOLE_USART        1
 
编译后排除相应的错误。
二、            建立两个线程,线程1使LD3与LD4依次点亮并同时熄灭,并把两个LED状态实时显示在液晶屏上
1.        把STM32F429I-Discovery_FW_V1.0.1\Utilities\文件夹下的common文件夹复制到stm32f429文件夹下,并把STM32F429I-Discovery_FW_V1.0.1\Utilities\STM32F429I-Discovery文件夹下的stm32f429i_discovery_lcd.c、stm32f429i_discovery_lcd.h、stm32f429i_discovery_sdram.c和stm32f429i_discovery_sdram.h等四个文件复制到stm32f429\drivers这个文件夹下,并在MDK中把这四个文件中的两个c文件添加到相应的group下。
2.        打开“application.c”,建立两个线程,线程1使LD3和LD4依次点亮,并在1秒钟同时熄灭,线程2从邮箱接收邮件,并把邮件内容通过串口1打印输出。
三、            邮箱的建立,把两个LED的状态传递给线程2,并打印输出。
 
邮箱设置为先进先出的方式,线程1在每次点亮或熄灭相应的LED灯时都通过邮箱把LED灯的状态发送出去,线程2一直在等待邮件的到来,在没有邮件是线程2是被阻塞的,直到线程1发送新的邮件。
相应的工程文件见附件。
 
串口打印数据,如下图所示:

 
在液晶屏上显示,如下面三张图所示:
 



 
这三张图片,其实是视频截图,视频已经上传至youku了,目前正在审核,审核通过后,会再将视频放上来。
更新视频:
 
player.youku.com/player.php/sid/XNzUwNDcwMDc2/v.swf
 





myowl 发表于 2014-8-5 08:20:11

RE:【STM32F429开发日志】基于rt-thread1.2.1+邮箱

我的第一次作业完成。

ap0405209 发表于 2015-2-12 17:28:51

请问你的这个工程是否支持429的浮点处理??

党国特派员 发表于 2015-2-13 10:15:21

学习。。。

myowl 发表于 2015-2-28 09:22:05

ap0405209 发表于 2015-2-12 17:28
请问你的这个工程是否支持429的浮点处理??

未加入浮点运算

wambob 发表于 2015-2-28 14:26:23

带屏的就是高富帅

stary666 发表于 2015-4-7 10:15:41

学习。。。。。。。。。。

拼命三郎 发表于 2015-4-7 11:44:13

拼命三郎 发表于 2015-4-7 11:47:53

冏冏有神 发表于 2018-11-26 16:56:45

很强:lol
页: [1]
查看完整版本: 【STM32F429开发日志】基于rt-thread1.2.1+邮箱