打印

TM4C串口调试及连接问题,请指教

[复制链接]
4885|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sayato|  楼主 | 2014-11-4 11:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是我的程序:
#include"stdio.h"
#include<stdint.h>
#include<stdbool.h>
#include "inc/tm4c1233e6pm.h"//这个是我得芯片型号
#include "inc/hw_memmap.h"
#include "inc/hw_types.h"
#include "driverlib/pwm.h"
#include "driverlib/gpio.h"
#include "driverlib/sysctl.h"
#include "driverlib/pin_map.h"
#include "driverlib/uart.h"
#include "driverlib/interrupt.h"
#include "inc/hw_gpio.h"
#include "inc/hw_ints.h"
//********************UART_GPIO初始化************************
void UART0_init(void)
{
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);                     //复用功能时钟
GPIOPinTypeUART(GPIO_PORTA_BASE,GPIO_PIN_0|GPIO_PIN_1);         //配置PAO、PA1为UART1 的 RXD0,TXD0,
GPIOPinConfigure(GPIO_PA0_U0RX);
GPIOPinConfigure(GPIO_PA1_U0TX);
   //配置PA0 PA1为串口引脚
UARTConfigSetExpClk(UART0_BASE,SysCtlClockGet(), 9600,
                       (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
                         UART_CONFIG_PAR_NONE));
IntMasterEnable();                                              //全局中断使能
IntEnable(INT_UART0);                                           //使能串口0中断
UARTIntEnable(UART0_BASE, UART_INT_RX | UART_INT_RT);          //使能串口0接收中断和接收超时中断
UARTEnable(UART0_BASE);                                        //使能串口1(UARTO)发送和接收
    }

//*****************UART中断处理*****************************
void UART0_Handler(void)
{
    uint32_t ITStatus;
    ITStatus = UARTIntStatus(UART0_BASE, true);    //中断标志位
    UARTIntClear(UART0_BASE, ITStatus);            //清除中断标志
    while(UARTCharsAvail(UART0_BASE))             //确认接收 FIFO 中是否有数据
    {
        UARTCharPutNonBlocking(UART0_BASE,UARTCharGetNonBlocking(UART0_BASE));
    }
}
//*****************主函数调用*****************************
void main ()
{
UART0_init();
    while(1);
}



请问我得这个程序有问题吗?请教高手指教;





板子是我们自己做的,但是我都试了好几块了 ,
我是吧程序放到板子里,找了根DB9串口线连接 电脑和板子的 ,
原理图连接:板子上 芯片 管脚PA0和PA1 分别对应的RX 和TX,出来后接了个MAX3221cpw的Rout和Din,然后 我找了三根线 接在了MAX3221CPW的DOUT和Rin上,还有个GND 然后接到电脑上的;如图下:
,tx和rx我反复尝试过好几种接法,以防止接错线,结果每一种情况 都没用 ,都不能成功收数据
最后  我是用串口调试助手忘串口发数据,能发收不回来,,,还是就是 我吧图中的右边椭圆红色圈里面的2和3号口短接,打开调试助手就能发送和接受数据,至少说明 我电脑的串口和串口线是好的吧 现在的问题应该就在板子上了,一方面是不是程序的问题这个是我很关心的,硬件的可能性。我用的 是TM4C1233E6PM,用ccs编译的通过JATG下载程序。请教高手,我把 那个例程刷进去也没什么反应,而且我看网上有不少同志也反映说,不管怎么弄就是串口没反应,不知道为什么,请高手指教,

相关帖子

沙发
dirtwillfly| | 2014-11-5 21:02 | 只看该作者
:Q看不出有什么问题。
建议楼主业余看看《程序调试黑宝书》,希望对你有帮助。
https://bbs.21ic.com/icview-286228-1-1.html

使用特权

评论回复
板凳
dirtwillfly| | 2014-11-12 09:52 | 只看该作者
在隔壁论坛看到你的帖子,竟然是晶振接错了~~

使用特权

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

本版积分规则

13

主题

39

帖子

0

粉丝