您的位置:首页 > 其它

STM32学习计划

2014-07-05 10:16 134 查看
STM32学习计划
计划

1 了解一下处理器的内核

Cortex-M3权威指南,这本书不错.但里面用的是汇编.不过用来了解Cortex-M3内核还是最佳这选的.

2 学会建工程

常用的软件有Keil与IAR等,用Keil的人多一点.但IAR对程序的优化好像好一点.本人用的是Keil.因为从单片机开始就用它了.所以在开发STM32的程序时,还是用它.个人STM32的学习过程对于建工程是用官方库还是直接操作寄存器?这个就看个人的喜好咯.不过我还是觉得用官方的库好一点.不要担心这样会让系统运行得慢,你想一相这个处理器的运行速度有多大?72MHz啊.在学会建工程的同时,顺便点亮一下板上的LED灯.

3 让板上的LED灯闪出花样来

这个只是熟悉一下STM32的基本操作.就像我们刚学51单片机那样,第一个就是点亮流水灯,然后就是花样流水灯.

4 学会用STM32的串口

这一点很重要,凡是经过51走上来的人,应该都有过用串口调试程序的经历.用串口调试程序真的是很方便.有时候要看一下程序内部一些变量的在某些时候的值,就可以通过串口输出到PC上来.所以学好串口是很重要的.在使用串口的时候还得重定义一下,是对于使用C语言的库函数printf()来说是必须的.对于怎样重定义,百度一下.也可以参考下面和程序:

#pragma import(__use_no_semihosting)

struct __FILE

{

int handle;

};

FILE __stdout;

/// <summary>

/// 定义_sys_exit()以避免使用半主机模式

/// </summary>

/// <param name="x"></param>

/// <returns></returns>

_sys_exit(int x)

{

x = x;

}

int fputc(int ch, FILE *f)

{

//USART_SendData(USART1, (u8) ch);

USART1->DR = (u8) ch;

while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET)

{

}

return ch;

}

当然,只做串口的发送还不能理解STM32的串口.还得字符与字符串的收接.一般板上都有LED灯.所以可以通过指令来使LED灯按顺序亮灭.或跑出花样来.最好是用里面的定时器做一个时钟,每一秒打印一次到PC的串口软件上来.用滴嗒时钟做更好,这样对以后跑系统有一定的帮助.

5 好了,现在可以着手学习SD卡触摸屏.还有STM32的其它接口的通讯.这个要视个人的具体情况而定啦.

6 到了这里可以学习它的USB通讯了,这个学不学都可以,到现在我都还不会呢.如果有单片机基础的朋友,相信走到这里还是很轻松的.个人STM32的学习过程

7 跑系统,STM32是个轻量级的处理器,所以就不能像ARM9,ARM11那样跑Linux,WinCE 这样大型的系统.但可以跑,像ucos ii,FreeRTOS等.第一个是要钱的,第二个是免费的.自己看着办啦

8 到这里就应该学习TCP/IP协议啦.

经过上面的5步,相信你已经能轻松地控制STM32了.可以说得上是一个裸机的高手啦.走到第8步,你已经可以独挡一面了.在学习的过程中应该做一些小项目.不能做板卡级的高手。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: