MTK:串口学习和代码调试
MTK之UART串口收发数据
(必看)
https://blog.csdn.net/ivy_reny/article/details/51192110
MTK串口调试方法|MTK串口工具
MTK串口调试方法:
1. 对串口的设置:
1) uart.c 中UART_HWInit 完成对各串口的波特率、数据位等之类初始化设置。默认为115200。若需调整波特率则可在此处设置。也可调用U_SetBaudRate进行设置。
2) trace口的波特率设置如下在NVRAM_EF_PORT_SETTING_DEFAULT。
2. 串口的切换:
1) trace口的切换:
nvram_common_config.c 中
static kal_uint8 const NVRAM_EF_PORT_SETTING_DEFAULT[] =
{
#if defined(__ONLY_ONE_UART__)
0x63, 0x00, /* TST uses uart_port2(value is 1) */
0x00, 0x00, /* APP uses uart_port1 */
#else
0x00, 0x00, /* TST uses uart_port2(value is 1) */表示哪个串口作输出 Trace口, 0x01, 0x00, /* APP uses uart_port1 */表示哪个串口用于AT。
#endif
/*设置为 0x00则表示串口1设置为 Trace模式, 0x01表示串口2设置为Trace , 0x63表示不用Trace*/
#if defined(EMPTY_MMI)
0x00, 0x10, 0x0E, 0x00, /* tst default baud rate base = 921600 = 0x000E1000 */
#else
0x00, 0xC2, 0x01, 0x00, /* tst default baud rate base = 115200 = 0x0001C200 */
#endif
设置trace串口的波特率
#if defined (__GPRS_MODE__)
0x00, 0xC2, 0x01, 0x00, /* ps default baud rate base = 115200 = 0x0001C200 */
#else
0x00, 0xE1, 0x00, 0x00, /* ps default baud rate base = 57600 = 0x0000E100 */
#endif
设置at串口的波特率
0x00, /* High SpeedSIM */
0x00, /* SWDBG */
0x03, 0x63, /* uart power setting, plus 1-byte padding */
0x00, 0x00,0x00, 0x00 /* CTI baud rate */
};
0x03 -- 串口1、2 powner on
0x07-- 串口1、2 、3 powner on
这些设置也可在暗码“*#3646633#”中设置。
2) AT与普通串口的切换:
串口默认是为AT模式,默认都是被L4层控制的。
在初始化或使用串口前时设置UART_SetOwner(uart_port2,MOD_CUSTOM2);
即可将串口的at模式切换为普通串口。UART_SetOwner作用:相当于将串口同任务(task)绑定。 串口的收发处理均有此任务实现。
有数据来时,底层会发送MSG_ID_UART_READY_TO_READ_IND消息上来。用UART_GetBytes来读取串口接到的数据。用UART_PutBytes来发送数据。
3. 在plutommi里新添加文件,须在custom里调用。
1) 在make\plutommi里的
plutommi.inc 添加 头文件所在的目录
plutommi.pth 添加 源文件所在的目录
plutommi.lis 添加源文件的路径。
2) D16_GPRS.mak 添加
CUSTOM_COMMINC += plutommi\mmi\StarComm\Zigbee\ZigbeeInc
此处未添加,则在custom1_create.c里无法调用头文件,提示wouldn’t open *.h错误
4. 模块的休眠模式
在makefile文件里,如D16_GPRS.mak.
mtk_SLEEP_ENABLE = FALSE # Sleep Mode Support
置MTK_SLEEP_ENABLE为FALSE :彻底关闭休眠模式。
置MTK_SLEEP_ENABLE为TRUE :开启休眠模式的使能。
代码中调用L1SM_SleepDisable 、L1SM_SleepEnable 对休眠模式进行设置。
5. 现象:
串口收发正常,接上zigbee小板后,可监控到模块有往zigbee发的数据,但zigbee没有回应。 但在初次上电的时候,zigbee有回应数据至模块。(在下载模块程序时,zigbee有一直往模块发送数据)。
解决:
Zigbee小板上的重启接口被程序置为低电平(in),导致一直被重启。
MTK串口工具:
http://bbs.16rd.com/forum.php?mod=viewthread&tid=453286&fromuid=28165
MTK:串口学习和代码调试相关推荐
- APM飞控学习之路:5 串口概述与收发调试
"云中谁寄锦书来,雁字回时,月满西楼".当无人机在空中飞翔时,从APM飞控到飞手之间有几条看不见的"风筝线"--(1)2.4GHz的遥控:(2)433/915M ...
- Python语言学习:python语言代码调试—异常处理之详细攻略
Python语言学习:python语言代码调试-异常处理之详细攻略 目录 python语言代码调试-异常处理 异常捕捉可以使用 try/except 语句 相关文章 Python3 错误和异常 | 菜 ...
- MTK:串口调试方法|MTK串口工具
1. 对串口的设置: 1) uart.c 中UART_HWInit 完成对各串口的波特率.数据位等之类初始化设置.默认为115200.若需调整波特率则可在此处设置.也可调用U_Se ...
- C语言学习|bug和调试优化代码
目录 调试 基本概念 bug 调试(debug) 调试步骤 Debug和Release VS是集成开发环境(IDE) 调试的快捷键 调试窗口 监视 减少程序的错误 assert(表达式) const ...
- python学习笔记Day4 面向对象编程,文件操作,os模块,代码调试
一.traceback模块 错误日志可能用到 import tracebackwhile 1: # 捕获异常的顺序按照先父类后子类try:n1 = int(input('请输入一个被除数'))n2 = ...
- 【VS实践】代码调试与错误处理
程序员的装逼技能:调试,错误处理和快捷键 学计算机3年,只知道一些基础的理论知识,写代码和调试很差,基本不会什么吧! 花时间了解一下关于这块的东西!以前觉得调试就是代码写出来一运行,有问题了分析那里出 ...
- .NET Core快速入门教程 5、使用VS Code进行C#代码调试的技巧
.NET Core 快速入门教程 .NET Core 快速学习.入门系列教程.这个入门系列教程主要跟大家聊聊.NET Core的前世今生,以及Windows.Linux(CentOS.Ubuntu)基 ...
- python 除数不能为零的报错有哪些_【社区精选40】Python错误处理及代码调试方法(文末赠书中奖名单)...
本文整理自爱数据学院中的问答 更多精彩问答,进入下方社区网站查看 http://www.lovedata.cn/invitation 社区精选话题 第40期 Python错误处理及代码调试方法 一次写 ...
- Android学习系列--App调试的几个命令实践
2019独角兽企业重金招聘Python工程师标准>>> 在Android的应用开发中,我们会用到各种代码调试:其实在Android的开发之后,我们可能会碰到一些随机的问题,如cpu过 ...
最新文章
- vuecli 编译后部署_基于vue-cli 打包时抽离项目相关配置文件详解
- 运行jar应用程序引用其他jar包的四种方法
- YARN/MRv2 Resource Manager深入剖析—RM总体架构
- Dapr微服务应用开发系列5:发布订阅构建块
- Python+tkinter实现任意多层级关系的组合框
- 深度学习自学(二十六):人脸数据集
- [转]非模态对话框的特点与使用
- IE7 - 千呼万唤始出来
- maven install报The forked VM terminated without saying properly goodbye. VM crash or System.exit call
- attempted an unsupported operation 、an unsupported operation was attempted [尝试不支持的操作]错误的三种解决方案
- java微信小程序接口openid过期_Java微信小程序登录接口获取openid
- Python实现检测字符串是否全为汉字(含生僻字)
- FPGA驱动RGB灯带WS2812B
- 信息流推荐在凤凰新闻的业务实践
- cannot open file /storage/emulated/0/DCIM/Camera/yinpin.mp4 (Permission denied)
- 单核处理器、多核处理器、多处理器与多线程编程
- LTE:3GPP向4G发展的核心技术
- Python_00000
- 基于SVM的数字手势识别模型
- 计算机考试网页模板,计算机基础期末考试模板A卷(2页)-原创力文档
热门文章
- 2019.7.5刷题统计
- Military Problem CodeForces 1006E (dfs序)
- application/x-www-form-urlencoded接口响应报文中文乱码
- web前端基础之JS
- 第三百九十一节,Django+Xadmin打造上线标准的在线教育平台—404,403,500页面配置...
- c语言中的scanf在java中应该怎么表达,Scanner类。
- 免费HTTP数据抓包Fiddler2[4.6.1.2]以及显示中文包内容的方法
- java hibernate4 学习心得
- 计算机系统结构计算题
- postgreSQL数据库里面导入数据