4141|0

1万

帖子

16

TA的资源

版主

楼主
 

beaglebone心得九:Hello eeworld!!! [复制链接]

今天上午没事,在这调通了UART0,正好板子上的虚拟串口也用的是UART0.

虽然调通了,但费我很长一段时间,为什么呢?

原因是am335X的库太复杂:

除了包含正确的H文件之外还要把相关的C复制到当前的工程中。

比如,这个UART工程中

cpu.c
在\sysem_config\armV7a\cgt\

gpio_v2.c

在\drivers

gpio.c

在\platfom\beaglebone

下面的截图是工程的包含路径:



程序如下:

#include "uart_irda_cir.h"
#include "soc_AM335x.h"
#include "interrupt.h"
#include "beaglebone.h"
#include "hw_types.h"
/******************************************************************************
**              INTERNAL MACRO DEFINITIONS
******************************************************************************/
#define BAUD_RATE_115200          (115200)
#define UART_MODULE_INPUT_CLK     (48000000)
/******************************************************************************
**              INTERNAL FUNCTION PROTOTYPES
******************************************************************************/
static void UartInterruptEnable(void);
static void UART0AINTCConfigure(void);
static void UartFIFOConfigure(void);
static void UartBaudRateSet(void);
static void UARTIsr(void);
/******************************************************************************
**              GLOBAL VARIABLE DEFINITIONS
******************************************************************************/
unsigned char txArray[] = "Hello eewold !!!Thank you very much!!!Good luck!!!\r\n";
unsigned char i;
/******************************************************************************
**              FUNCTION DEFINITIONS
******************************************************************************/
int main()
{
    /* Configuring the system clocks for UART0 instance. */
    UART0ModuleClkConfig();
    /* Performing the Pin Multiplexing for UART0 instance. */
    UARTPinMuxSetup(0);
    /* Performing a module reset. */
    UARTModuleReset(SOC_UART_0_REGS);
    /* Performing FIFO configurations. */
    UartFIFOConfigure();
    /* Performing Baud Rate settings. */
    UartBaudRateSet();
    /* Switching to Configuration Mode B. */
    UARTRegConfigModeEnable(SOC_UART_0_REGS, UART_REG_CONFIG_MODE_B);
    /* Programming the Line Characteristics. */
    UARTLineCharacConfig(SOC_UART_0_REGS,
                         (UART_FRAME_WORD_LENGTH_8 | UART_FRAME_NUM_STB_1),
                         UART_PARITY_NONE);
    /* Disabling write access to Divisor Latches. */
    UARTDivisorLatchDisable(SOC_UART_0_REGS);
    /* Disabling Break Control. */
    UARTBreakCtl(SOC_UART_0_REGS, UART_BREAK_COND_DISABLE);
    /* Switching to UART16x operating mode. */
    UARTOperatingModeSelect(SOC_UART_0_REGS, UART16x_OPER_MODE);
    /* Performing Interrupt configurations. */
    UartInterruptEnable();
    for(i=0;i     UARTCharPut(SOC_UART_0_REGS, txArray);
    while(1);
}

下面截图为运行效果图



下面是仿真时的截图:


[ 本帖最后由 ddllxxrr 于 2012-10-28 16:11 编辑 ]

hello3.JPG (98.46 KB, 下载次数: 0)

hello3.JPG

hello2.JPG (46.2 KB, 下载次数: 0)

hello2.JPG

hello.JPG (153.37 KB, 下载次数: 0)

hello.JPG
点赞 关注
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表