学习PIC心得体会(MPLAB)----如何使用串口发送,并解决串口接收数据不对的问题

 打开MCC,在Device Resources一栏找到你要使用的EUSART点击加号添加

使用串口的前提是你的系统时钟必须配置正确,否则会影响串口的波特率,导致有传输但是接收端的数据不对,比如我要发 1,接收到的却是其他数据

选择Peripherals里的EUSART模块对串口进行设置

点击生成代码

关闭MCC返回代码界面,编写代码,实现不停发送0x12

    //发送服务函数
    void TxIsr(void)
    {

         TX1REG = 0x12;

    }


    //代码初始化
    EUSART_SetTxInterruptHandler(TxIsr);//打开串口中断,并调用TxIsr函数

    
    INTERRUPT_GlobalInterruptEnable();// 使能全局中断


    INTERRUPT_PeripheralInterruptEnable();//使能所有外设模块中断

    PIE1bits.TXIE = 1;//等于1时开始发送,等于0时停止发送,这是发送中断标志位

但是后面发现个问题,波特率设置的情况下,为啥单片机给电脑发送的数据是不对的。求解!-------已解决,系统时钟不对也会导致最终的波特率不对

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值