#include<stdio.h>

unsigned int UART0_ADDR = 0x20080000;

unsigned int retu=0;

int i=0;

void delay_x(unsigned short cycles)

{    

    unsigned short t;

    t = cycles;

    while ( --t != 0 );

}

int  main()

{

///////////初始化部分////////////////////////////////////////////////////

    retu = *(unsigned int *)(UART0_ADDR  + 0X30);//uart_cr

    *(unsigned int *)(UART0_ADDR  + 0X30) = 0x300;

  //  retu = *(unsigned int *)(UART0_ADDR  + 0X24);//ibrd

  //  retu = *(unsigned int *)(UART0_ADDR  + 0X28);//fbrd

   *(unsigned int *)(UART0_ADDR  + 0X24) = 1;

   *(unsigned int *)(UART0_ADDR  + 0X28) = 40;

   *(unsigned int *)(UART0_ADDR  + 0X30) = 0x300;

  

   *(unsigned int *)(UART0_ADDR  + 0X2c) = 0x60;//UART_LCR_H

   *(unsigned int *)(UART0_ADDR  + 0X34) = 0x12; //UART_IFLS

   *(unsigned int *)(UART0_ADDR  + 0X38) = 0x0;//UART_IMSC

  

  

    retu = *(unsigned int *)(UART0_ADDR  + 0X30);//uart_cr

   

    *(unsigned int *)(UART0_ADDR  + 0X30) = retu | 0x01;//使能串口

//////////////////////////////////////////////////////////   

    while(1)

    {

   // retu = *(unsigned int *)(UART0_ADDR  + 0X18);

  //  retu = retu&0x40;

    if(((*(unsigned int *)(UART0_ADDR  + 0X18))&0x40)==0x40)

    {

        retu = *(unsigned int *)(UART0_ADDR  + 0X00);

        retu = retu&0xff;

        *(unsigned int *)(UART0_ADDR  + 0X00) = retu;

    }

    retu = 0;

    delay_x(0X7000);

    }

    return 0;

}

HI3531串口测试程序(arm)的更多相关文章

  1. vxworks下的串口测试程序

    VXWORKS串口设置说明: 一般有这么几步: 打开串口 设置串口raw模式,清空输入输出的缓冲区 设置波特率,数据位,停止位,校验方式 便可以开始读和写 打开串口: fd = open(" ...

  2. linux下串口测试程序

    通过简单的参数配置,执行文件+串口号+波特率 #include <stdio.h> #include <stdlib.h> #include <unistd.h> ...

  3. hi3531串口波特率计算

    波特率配置 通过配置寄存器UART_IBRD 和UART_FBRD 可以设置UART 工作的波特率,波特率 计算公式为: 当前波特率=UART 参考时钟频率(1/2 总线时钟频率)/(16 x 分频系 ...

  4. Yocto开发笔记之《串口驱动调试》(QQ交流群:519230208)

    QQ群:519230208,为避免广告骚扰,申请时请注明 “开发者” 字样 ======================================================== 串口驱动各 ...

  5. 怎样在超级终端和PC之间通过串口传输文件

    Windows环境下,通过SecureCRT软件,用串口向ARM开发板发送文件: 输入命令 rz,可以看到如下图所示: 选择路径点击上传即可. 如果是想从Arm开发板中把文件Down下来,则可以按照下 ...

  6. Uart串口

    title: Uart串口 tags: ARM date: 2018-10-20 16:38:28 --- Uart串口 和单片机的应用没什么区别,首先设置IO复用,设置波特率和数据位,以及中断相关的 ...

  7. stm32-arduino-f103

    希望给工作中偶尔要用的一些辅助板卡(例如运行信息现场记录)找一个快速开发的手段,Arduino作为流行的开源嵌入硬件框架,组件丰富,资料众多,所以想以Arduino作为平台.但是Arduino板子基本 ...

  8. .net core跨平台应用研究-ubuntu core下配置.net core运行时

    引言 年初研究了一阵子.net core跨平台应用,先后发表了几篇应用研究的文章.因工作原因,忙于项目上线,有一阵子没来博客园写文章了.最近项目基本收尾,抽空翻了下自己的博客,廖廖几篇文章,真让人汗颜 ...

  9. <转>[WinForm] VS2010发布、打包安装程序(超全超详细)

    1. 在vs2010 选择“新建项目”→“ 其他项目类型”→“ Visual Studio Installer→“安装项目”: 命名为:Setup1 . 这是在VS2010中将有三个文件夹, 1.“应 ...

随机推荐

  1. Power shell 重启IIS

    最近根据项目需要写了一段power shell的代码 ,主要功能是批量重启IIS 具体的 Power shell 服务如下: write-output 'Restarting IIS servers ...

  2. Install MongoDB on Linux Systems 速记

    下载mongodb最新版本: 下载链接:http://pan.baidu.com/s/1kTDnkyz curl -O http://downloads.mongodb.org/linux/mongo ...

  3. CentOS7安装MySQL的方法之通用二进制格式

      CentOS7安装MySQL的方法之通用二进制格式          

  4. Python基础篇(三)

    元组是序列的一种,与列表的区别是,元组是不能修改的. 元组一般是用圆括号括起来进行定义,如下: >>> (1,2,3)[1:2]     (2,) 如果元组中只有一个元素,元组的表示 ...

  5. document.activeElement 过滤选择文件弹窗导致的页面失焦

    在线考试页面,常常需要检测用户是否作弊. 一般是监听页面是否失焦的方式,而失焦的方式有很多种,比如QQ弹窗,切换页面,切换程序,input文件上传选择文件等 选择文件是正常情况,这种情况下需要过滤 本 ...

  6. ES6,Array.fill()函数的用法

    ES6为Array增加了fill()函数,使用制定的元素填充数组,其实就是用默认内容初始化数组. 该函数有三个参数. arr.fill(value, start, end) value:填充值. st ...

  7. LeetCode - 657. Judge Route Circle

    Initially, there is a Robot at position (0, 0). Given a sequence of its moves, judge if this robot m ...

  8. javascript函数大全

    JavaScript函数大全 1.document.write(""); 输出语句2.JS中的注释为//3.传统的HTML文档顺序是:document->html->( ...

  9. CentOS 7 NetworkManager Keeps Overwriting /etc/resolv.conf

    In CentOS or Red Hat Enterprise Linux (RHEL) 7, you can find your /etc/resolv.conf file, which holds ...

  10. Head First C 笔记

    嗨翻c语言 1. 入门 为什么字符从零开始编号? 字符的索引数值表示的是一个偏移量,它表示的是当前所引用的字符与第一个字符之间差多少个字符. 单双引号的区别? 单引号 一个字符,双- 字符串 字符串字 ...