p141592653 发表于 2012-8-12 19:33:09

为什么K60的串口发送都是乱码,都设置好了(已解决)

本帖最后由 FSL_TICS_ZJJ 于 2014-2-19 09:51 编辑

#include "uart.h"
#include "lptmr.h"
#include "gpio.h"
#define h 2
#define l 1

uint8 getphoto={{1},{2}};
void getp()
{
int i=0;
for(;i<h;i++)
{
    for(int j=0;j<l;j++)
      uart_putchar(UART1,getphoto);
    uart_putchar(UART1,'\n');
}
}

void main()
{
gpio_init(PORTE,0,GPO,HIGH);
uart_init(UART1,9600);
// getp();
uart_sendStr (UART1,"uart_str");
// printf("串口实验");

while(1)
{
    gpio_set(PORTE,0,LOW);
    time_delay_ms(50);
    gpio_set(PORTE,0,HIGH);
    time_delay_ms(50);
}

fire 发表于 2012-8-12 19:50:11

先用我们的例程测试一下是否硬件问题。另外,用支持中文显示的串口助手,例如单片机多功能调试助手PortHelper.exe

fire 发表于 2012-8-12 19:54:39

另外,我们默认的程序,在main函数前,已经设置了串口输出为URAT1,波特率为 19200,在k60_fire.h里修改……而在main函数前,我们会输出一下单片机信息,如果你的串口助手设置波特率为9600,会显示乱码……如果你是要用UART1,建议按照我们的教程说的去做,修改k60_fire.h,另外在main函数里不需要再初始化

p141592653 发表于 2012-8-12 20:09:50

fire 发表于 2012-8-12 19:54 static/image/common/back.gif
另外,我们默认的程序,在main函数前,已经设置了串口输出为URAT1,波特率为 19200,在k60_fire.h里修改… ...

#include "uart.h"
#include "lptmr.h"
#include "gpio.h"
#define h 2
#define l 1

uint8 getphoto={{1},{2}};
void getp()
{
int i=0;
for(;i<h;i++)
{
    for(int j=0;j<l;j++)
      uart_putchar(UART1,getphoto);
    uart_putchar(UART1,'\n');
}
}

void main()
{
gpio_init(PORTE,0,GPO,HIGH);
uart_init(UART1,19200);
uart_sendStr (UART1,"uart_str");

while(1)
{
    gpio_set(PORTE,0,LOW);
    time_delay_ms(50);
    gpio_set(PORTE,0,HIGH);
    time_delay_ms(50);
}
}
都改了,还是有很多乱码

~just_yy 发表于 2012-8-12 23:21:01

fire 发表于 2012-8-12 19:54 static/image/common/back.gif
另外,我们默认的程序,在main函数前,已经设置了串口输出为URAT1,波特率为 19200,在k60_fire.h里修改… ...

火哥 用你们的程序在飞思卡尔大赛上不会被禁赛吧……允许用你开发的库么?

fire 发表于 2012-8-13 00:11:41

~just_yy 发表于 2012-8-12 23:21 static/image/common/back.gif
火哥 用你们的程序在飞思卡尔大赛上不会被禁赛吧……允许用你开发的库么? ...

今年很多队伍都是用了野火的K60最小系统,用我们的库有啥问题啊,不会有问题的啊

~just_yy 发表于 2012-8-13 00:13:59

我看很多都要求自主的程序什么的 有点担心~

FSL_TICS_Robin 发表于 2013-11-7 16:38:35

的确如2楼所述,调试应该要把问题分开,否则根本不知道问题出在硬件还是软件。
建议你先单独测试下串口发送是否可行。
如果你有示波器也可以直接量下波特率是否准确

ping3335 发表于 2014-2-18 14:26:45

那请问默认设置是在哪个子文件里知道?

FSL_TICS_ZJJ 发表于 2014-2-18 14:48:55

ping3335 发表于 2014-2-18 14:26
那请问默认设置是在哪个子文件里知道?

不知道你所谓的默认设置是什么设置?
你指的是uart吗?
这个你可以去CPU文件夹下的sysinit.C中sysinit函数查看,具体波特率,可以查看相关头文件,上面野火也讲了。

ping3335 发表于 2014-2-19 11:03:56

好的,就是在sysinit.C里。

FSL_TICS_ZJJ 发表于 2014-2-19 12:42:03

ping3335 发表于 2014-2-19 11:03
好的,就是在sysinit.C里。

嗯,你可以好好看看start.c,那里讲解了整个的启动程序。
如果以后在使用的过程中遇到问题,欢迎发问题贴哦!
页: [1]
查看完整版本: 为什么K60的串口发送都是乱码,都设置好了(已解决)