嵌入式系统驱动开发流程(二)

本文介绍PPC8247平台串口轮询输出的实现方法,包括串口初始化接口sysSerialHwInit及轮询输出接口printk_debug_outchar,并通过printk_init挂接到printk,实现系统运行状态的输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       在上一节中,已经对bsp层的最开头,也就是start.s进行了分析。然后就要开始系统驱动开发的下一个环节了,在任何外设的适配中,我们都离不开调试,那么我们就需要“一张告诉我们看板卡程序运行状态的嘴巴”,所谓“嘴巴”就是我们常用的打印(printk或printf)。在我们的系统中,在中断配置成功之前,我们需要的嘴巴是“printk”。该函数是通过将调试串口轮询打通,然后再与上层库结合而成,如此printk才可以通过控制台告诉我们程序当前状态了。

       结合以上背景,在我们目前驱动开发过程,应当现实调试串口的轮询输出。不同平台中有不同的串口轮询输出的代码,我们这里代码适用于ppc8247。

        此处串口初始化接口为:sysSerialHwInit();

        轮询输出接口为:printk_debug_outchar(char c);

        将串口轮询输出挂接到printk上的接口为:printk_init(printk_debug_outchar);

串口初始化代码需要多多参考MPC8272RM手册,对各个寄存器参数进行配置,来调试代码,其中的具体内容就不进行分析了。

串口初始化完成后调试轮询接口,使得该接口可以使用,接下来将轮询接口通过printk_init进行挂接,使得printk可以使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值