lib_arm/board.c
static int init_baudrate (void)
{
char tmp[64]; /* long enough for environment variables */
int i = getenv_r ("baudrate", tmp, sizeof (tmp)); //看是否能是环境变量里找到它
gd->bd->bi_baudrate = gd->baudrate = (i > 0)
? (int) simple_strtoul (tmp, NULL, 10)
: CONFIG_BAUDRATE; //115200 环境变量里未找到,则直接赋115200
return (0);
}
|
这里主要是要取得波特率,把值存入bd_t结构体中,这个结构体保存板子的一些信息。(详见另一篇)
由上面的函数可以看到,获得波特率的值有两种方式
1. 在环境变量里,即 getenv_r ("baudrate", tmp, sizeof (tmp)) 看是否能够找到baudrate
对应项由于上一步env_init实际上是空的函数,所以到目前为止,并无环境变量,所以这里取不到
baudrate对应项的值,返回0
2. 没有取到环境变量,则默认加载宏定义的波特率值 115200
阅读(1126) | 评论(0) | 转发(0) |