打印

P24FJ256GB106单片机的串口程序

[复制链接]
1841|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
福州观沧海|  楼主 | 2011-8-30 09:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这款单片机因为有外设功能引脚映射功能,所以在使用串口功能时需配置RX、TX端映射到哪个引脚上。原本打算让TX引脚不断发送0x55数据到PC端,以检查串口程序是否正确,但TX脚没有动静。初始化如下:
U2STAbits.UTXEN = 0;    //发送禁止
_U2RXIP = 5; //中断优先级设置
U2BRG = 103;    //波特率9600      
U2MODE = 0x8000;  //控制寄存器配置           
U2STA = 0;     //串口2状态寄存器
_U2RXIE = 1; //接收中断使能
U2STAbits.UTXEN = 1;    //发送使能
RPINR19=0x0A11; //引脚映射  PIN32:RXD  PIN31:TXD
while(1)
{
     U2TXREG = 0x55; //写数据
}
沙发
兰天白云| | 2011-8-30 10:21 | 只看该作者
这款芯片没用,是否这个脚还有其他复用功能?如模拟输入,则必须把模拟改配位数字口,其他的自己对照数据手册看看,举一反三

使用特权

评论回复
板凳
headwolf_83| | 2011-8-30 12:39 | 只看该作者
八成引脚代码映射有错,给你看一个。

_RP17R = 5;             //U2TX是输出,先查到RF5为RP17,再查到U2TX功能号为5
    _U2RXR = 10;            //U2RX是输入,查到寄存器位为U2RXR,再查到RF4为RP10
       
    _LATF5 = 1;             //串口TX默认为高电平
    _TRISF4 = 1;            //U2RX输入
    _TRISF5 = 0;            //U2TX输入

使用特权

评论回复
地板
headwolf_83| | 2011-8-30 12:39 | 只看该作者
先映射,后配置。顺序反掉可能也不行。

使用特权

评论回复
5
yewuyi| | 2011-8-30 13:24 | 只看该作者
我就十分纳闷,一个简单的模块都搞不定吗?

哎呀,PIC的串口都差不多,自己在官方网站看看应用手册就可以了。

使用特权

评论回复
6
福州观沧海|  楼主 | 2011-8-30 17:58 | 只看该作者
多谢各位,现在才明白在串口初始化之前,需进行引脚映射设置。如下
RPINR19=0x000A; //PIN31(RP10)  RXD
RPOR5=0x0005;//PIN32(RP17)  TXD

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

311

帖子

1

粉丝