1,新建的.c文件记得在makefile里添加;
2,在irq_jn516x.S文件中设置中断优先级
/*

  • test_uart.c

//
/
Include files /
/
/

#include <jendefs.h>
#include “AppHardwareApi.h”
#include “AppHardwareApi_JN516x.h”
#include “dbg.h”
#include “MicroSpecific_ba.h”
#include “uart.h”
#include “ZQueue.h”
#include “test_uart.h”
#include “app_main.h”

//
/
Macro Definitions /
/
/

#ifndef TRACE_UART
#define TRACE_UART TRUE
#endif
//#define UART E_AHI_UART_0
/* default to uart 0 */
#ifndef UART
#define UART E_AHI_UART_0
#endif

#if (UART != E_AHI_UART_0 && UART != E_AHI_UART_1)
#error UART must be either 0 or 1
#endif

/* default BAUD rate 9600 */
#ifndef UART_BAUD_RATE
#define UART_BAUD_RATE 115200
#endif

#define UART_LCR_OFFSET 0x0C
#define UART_DLM_OFFSET 0x04

#if JENNIC_CHIP_FAMILY == JN513x

#if (UART == E_AHI_UART_0)
#define UART_START_ADR 0x30000000UL
#elif (UART == E_AHI_UART_1)
#define UART_START_ADR 0x40000000UL
#endif

#elif JENNIC_CHIP_FAMILY == JN514x

#if (UART == E_AHI_UART_0)
#define UART_START_ADR 0x02003000UL
#elif (UART == E_AHI_UART_1)
#define UART_START_ADR 0x02004000UL
#endif
#elif JENNIC_CHIP_FAMILY == JN516x
#if (UART == E_AHI_UART_0)
#define UART_START_ADR 0x02003000UL
#elif (UART == E_AHI_UART_1)
#define UART_START_ADR 0x02004000UL
#endif
#elif JENNIC_CHIP_FAMILY == JN517x
#if (UART == E_AHI_UART_0)
#define UART_START_ADR 0x40004000UL
#elif (UART == E_AHI_UART_1)
#define UART_START_ADR 0x40005000UL
#endif
#endif

//
/
Local Function Prototypes /
/
/
PUBLIC void uart_interrupt(uint32 u32DeviceId,uint32 u32ItemBitmap);

//
/
Exported Functions /
/
/
PUBLIC uint8 u8TxBuf[500] = {};
PUBLIC uint8 u8RxBuf[500] = {};

//
/
Local Functions /
/
/
PUBLIC void test_uart(void)
{

/*释放RTS,CTS*/
vAHI_UartSetRTSCTS(UART,FALSE);vAHI_UartReset(UART, TRUE, TRUE);
vAHI_UartReset(UART, FALSE, FALSE);bAHI_UartEnable(UART,u8TxBuf,500,u8RxBuf,500);
//设置波特率
UART_vSetBaudRate(UART_BAUD_RATE);vAHI_UartSetControl(UART, E_AHI_UART_EVEN_PARITY, E_AHI_UART_PARITY_DISABLE, E_AHI_UART_WORD_LEN_8, E_AHI_UART_1_STOP_BIT, E_AHI_UART_RTS_LOW);
vAHI_UartSetInterrupt(UART, FALSE, FALSE, FALSE, TRUE, E_AHI_UART_FIFO_LEVEL_1);
//中断优先级配置
vAHI_InterruptSetPriority(MICRO_ISR_MASK_UART0,13);//当初第一个参数写错了
//注册回调函数
vAHI_Uart0RegisterCallback(uart_interrupt);

}

/****************************************************************************
*

  • NAME: uart_interrupt
  • DESCRIPTION: Handle interrupts from test_uart

***************************************************************************/
PUBLIC void uart_interrupt(uint32 u32Device, uint32 u32ItemBitmap)
{
/

uint8 Rec=0;
do
{
Rec=u8AHI_UartReadData(E_AHI_UART_0);
vAHI_UartWriteData(E_AHI_UART_0,Rec);

 }while(u16AHI_UartReadRxFifoLevel(E_AHI_UART_0));//Maybe the actual hardware only with the memory 2 bytes.

*/

uint8  data[8]={};u16AHI_UartBlockReadData(UART,data,8);
u16AHI_UartBlockWriteData(UART,data,8);//write a block of data bytes to the Transmit FIFO
/*do{//uint16 Txwordbit =u16AHI_UartReadTxFifoLevel(UART);//获取当前FIFO中的字符数do{//发送数据u16AHI_UartBlockWriteData(UART,data,8);//write a block of data bytes to the Transmit FIFODBG_vPrintf(TRUE, "\n 此循环为发送数据:%d",u16AHI_UartBlockWriteData(UART,data,8));}while(u16AHI_UartReadTxFifoLevel(UART));DBG_vPrintf(TRUE, "\n 此循环为接收数据:%d",u16UartBlockReadData);}while(u16AHI_UartReadRxFifoLevel(UART));*/

}

//
/
END OF FILE /
/
/

JN516x串口测试相关推荐

  1. Beaglebone Back学习七(URAT串口测试)

    URAT串口测试 转载于:https://www.cnblogs.com/gjianw217/p/3754050.html

  2. C# 串口测试 ASCII

    串口测试 ASCII using System; using System.Collections.Generic; using System.ComponentModel; using System ...

  3. Linux串口测试工具

    Linux串口测试工具 Windows 下的串口工具非常多,Linux下的串口工具相对较少,有时候要调试给定串口通信可靠性,则需要搜索一圈才能找到易用方便且满足自己的需求的工具. 无意中发现 linu ...

  4. Linux 串口测试 操作说明

    1. 工控机的串口文件 & 测试工具cutecom介绍 linux 中的串口文件 $ ls /dev/ttyS* /dev/ttyS0 /dev/ttyS1 /dev/ttyS2 /dev/t ...

  5. Arduino mega 2560 上传项目总是出错最全解决方案以及串口测试教程

    一:串口识别和驱动安装需要保证准确无误 1.运行arduino mega 2560 首先需要安装串口驱动,这样我们用USB将板子和我们计算机连接的时候,使得我们的计算机能够识别连接的串口并且能够连接上 ...

  6. Android 通过串口获取设备号 android串口测试工具 完整解析

    前言 android 工业平板RK3399-all 调试有关串口的设备 如何获取对应的串口设备及串口名字 先来一张图说明 获取串口 SerialPortFinder mSerialPortFinder ...

  7. PM2.5检测 -- PMS7003 串口测试

    最近在搞 PM2.5 检测.用的是 PMS7003 传感器.BUT,之前没有接触过.需要一步一步的来.先测试其串口是否通信.上一篇文章,讲了 UART 回环测试,不是目的.主要是为了今天的测试. 一. ...

  8. 485串口测试工具软件下载_串口调试助手详细讲解(结合实操),通讯问题不再是问题...

    经常会有学员问我,老师老师,我的plc和变频器通讯不上了,不知道什么原因,您能帮我看看么. 其实吧,这个一般远程是帮不上你什么的,还是要你自己去测试,找出问题,那么怎么测试呢,今天就给大家做一个详细的 ...

  9. 485串口测试工具软件_(案例)电脑和仪表之间485通讯的奇怪现象及解决方案

    最近网友遇到一个奇怪的现象: 台式电脑通过USB-485转换模块和管道上的一个仪表进行通讯,前面6套都很正常,第7套无法通讯.已经更换了转换模块.台式电脑,无法解决.但是用笔记本电脑就可以通讯. 台式 ...

最新文章

  1. Nacos源码系列——第三章(全网最经典的Nacos集群源码主线剖析)
  2. Linux soft lockup分析
  3. 强化学习笔记:Q-learning :temporal difference 方法
  4. 硬计算、软计算与混合计算
  5. leetcode 208 python3
  6. 【报告分享】2020-2021视频号发展现状与趋势.pdf(附下载链接)
  7. C语言例题9:冒泡排序
  8. 主板声卡坏了会不会有电流声_ITX小钢炮 微星B550I刀锋主板评测
  9. 计算机接口技术 实验箱,微机原理及接口技术实验箱.doc
  10. dx11 将纹理保存到dds
  11. 液晶电视面板的类型、等级及鉴别方法
  12. 数据清洗中的缺失值处理
  13. jupyter中markdown模式编辑文本格式
  14. mysql订单迁移es_京东到家订单中心系统mysql到es的转化之路
  15. java安全架构____MD5加密原理和简介
  16. java实现以液晶字体显示当前时间
  17. java项目总结范文_第一次java项目个人总结
  18. c语言程序设计试卷分析,《c语言程序设计》 试卷分析.doc
  19. Excel 多列变一列(亲自实践)
  20. 太原科技大学计算机网络期末考试,太原科技大学IPv6校园网建设启动

热门文章

  1. 百度地图框选标注坐标返回标注信息
  2. C++常见的三种中文内码转换代码
  3. 图解Go语言内存分配 https://juejin.im/post/5c888a79e51d456ed11955a8
  4. 奥数-------i3*6528=3i*8256 让我们猜猜i的值
  5. Android开发之百度地图定位打卡
  6. IBM3650系列服务器前故障诊断面板灯显示含义
  7. 全球及中国集成电路产业战略规划与运营前景调研报告2022版
  8. python学习 | web开发(一)前端引入和HTML标签
  9. Java 环境下使用 AES 加密的特殊问题处理
  10. 转:mbedtls学习3.mbedtls_API分析