如何使用P1端口进行CC2530串口调试

huanying99 2011-08-21 07:00:43
下面是TI给的串口通信的样例,使用的是位置1(P0端口),使用串口调试工具运行正常

* 函数名称:initUART
*
* 功能描述:CC2530串口初始化
*
* 参 数:无
*
* 返 回 值:无
**************************************************************************************************/
void initUART(void)
{

PERCFG = 0x00; //位置1 P0口
P0SEL = 0x3c; //P0用作串口

U0CSR |= 0x80; //UART方式
U0GCR |= 11; //baud_e = 11;
U0BAUD |= 216; //波特率设为115200
UTX0IF = 1;

U0CSR |= 0X40; //允许接收
IEN0 |= 0x84;
}
因为现在P0端口已经有其他作用,所以想要改成使用位置2,也就是P1进行通信,以下是我改的:

PERCFG |= 0x01;//位置2 P1口

P1SEL |= 0x30;//使用P1_4,P1_5

但是串口调试不能接收到字符串。
...全文
891 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
langtou2006 2012-12-10
  • 打赏
  • 举报
回复
LZ。我也碰到和你类似问题,p0口没用,tx和rx是从p1.4和p1.5引出来的。 按照: PERCFG |= 0x01;//位置2 P1口 P1SEL |= 0x30;//使用P1_4,P1_5 U0CSR |= 0x80; //UART方式 U0GCR |= 11; //baud_e = 11; U0BAUD |= 216; //波特率设为115200 UTX0IF = 1; U0CSR |= 0X40; //允许接收 IEN0 |= 0x84; 进行初始化,还是没反应,求问如何初始化。多谢,本人初学。
爆板流 2012-08-01
  • 打赏
  • 举报
回复
嗯 好
有才啊 哈哈
huanying99 2011-08-22
  • 打赏
  • 举报
回复
经过查看手册得到的结果是UART0可用位置1(即P0_2,P0_3)和位置2(即P1_4,P1_5),现在由于我的P0被全部用于IO,所以打算采用位置2,但是TI的智能主板上的P1_4,P1_5被用于lcd控制,所以放弃使用位置2,于是把P0_2,P0_3置换到P1_2,P1_3,得到想要的结果!

3,846

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 无线
社区管理员
  • 无线
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧