资源简介
海思3531A芯片有四个串口uart单元,uart0是调试串口,默认打开。现添加uart1、uart2、uart3,测试验证成功。
代码片段和文件信息
/************************************************************************************************
*****Describe: This program is writen to operate HI35xx serial devices.
*************************************************************************************************/
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
//宏定义
#define HI_FALSE -1
#define HI_TRUE 0
#ifdef debugprintf
#define debugpri(mesg args...) fprintf(stderr “[HI Serial print:%s:%d:] “ mesg “\n“ __FILE__ __LINE__ ##args)
#else
#define debugpri(mesg args...)
#endif
int HiSerfd;
void HI_Serial_Close(int fd);
void Hi_sigsegv(int dummy)
{
if(HiSerfd > 0)
HI_Serial_Close(HiSerfd);
fprintf(stderr “Hi Serial Caught SIGSEGV Abort!\n“);
fclose(stderr);
abort();
}
void Hi_sigterm(int dummy)
{
if(HiSerfd > 0)
HI_Serial_Close(HiSerfd);
fprintf(stderr “Hi Serial Caught SIGTERM Abort!\n“);
fclose(stderr);
exit(0);
}
void Hi_init_signals(void)
{
struct sigaction sa;
sa.sa_flags = 0;
sigemptyset(&sa.sa_mask);
sigaddset(&sa.sa_mask SIGSEGV);
sigaddset(&sa.sa_mask SIGTERM);
sigaddset(&sa.sa_mask SIGPIPE);
sa.sa_handler = Hi_sigsegv;
sigaction(SIGSEGV &sa NULL);
sa.sa_handler = Hi_sigterm;
sigaction(SIGTERM &sa NULL);
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE &sa NULL);
}
int HI_Serial_Usage(void)
{
printf(“Usage:\n“);
printf(“\tmyhicom [-d] [-s] get netdeviece info [-rw] read or wite select\n“);
printf(“\tmyhicom [-h] for more usage\n“);
printf(“\tmyhicom [-v] the verson of the sofware\n“);
printf(“\tExample:\n\tmyhicom -d /dev/ttyAMA1 -s 115200 -w HelloWorld!!!\n“);
}
/*
*Function: HI_Serial_Open(int fdchar* ComDevice)
*Param: fd:file descirbe handle Serial Device: /dev/ttyAMA1 /dev/ttyAMA2
*Output: Ok or Fail
*/
int HI_Serial_Open(char* HiSerDevice)
{
int fd;
fd = open(HiSerDevice O_RDWR|O_NOCTTY|O_NDELAY);
if (HI_FALSE == fd)
{
perror(“HiSerial Can‘t Open Serial HiSerDevice“);
return(HI_FALSE);
}
//恢复串口为阻塞状态
if(fcntl(fd F_SETFL 0) < 0)
{
debugpri(“fcntl failed!\n“);
return(HI_FALSE);
}
else
{
debugpri(“fcntl=%d\n“fcntl(fd F_SETFL0));
}
//测试是否为终端设备
if(0 == isatty(STDIN_FILENO))
{
debugpri(“standard input is not a terminal device\n“);
return(HI_FALSE);
}
else
{
debugpri(“isatty success!\n“);
}
printf(“fd->open=%d\n“fd);
return fd;
}
/*
*Function: HI_Serial_Close(int fd)
*Param: fd:file descirbe handle
*Output: Null
*/
void
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 21185 2018-12-04 11:26 Hi3531A添加串口uart1-3\3.管脚复用寄存器.xlsx
文件 515219 2018-12-04 16:52 Hi3531A添加串口uart1-3\3531A设备添加测试UART1-3.docx
文件 11152 2018-12-04 16:25 Hi3531A添加串口uart1-3\com_test\hiserial.c
文件 144 2018-12-04 16:14 Hi3531A添加串口uart1-3\com_test\Makefile
文件 516648 2018-11-28 11:44 Hi3531A添加串口uart1-3\com_test\myhicom
文件 137 2018-12-04 16:23 Hi3531A添加串口uart1-3\com_test\readme.txt
文件 137334 2018-12-03 16:16 Hi3531A添加串口uart1-3\sp3232中文.docx
文件 451072 2017-05-26 23:38 Hi3531A添加串口uart1-3\sscom32\sscom5.13.1.exe
文件 5087 2018-12-04 14:31 Hi3531A添加串口uart1-3\sscom32\sscom51.ini
文件 1028 2018-11-30 16:29 Hi3531A添加串口uart1-3\uart-regconfig.sh
目录 0 2018-12-04 16:21 Hi3531A添加串口uart1-3\com_test
目录 0 2018-12-04 16:12 Hi3531A添加串口uart1-3\sscom32
目录 0 2018-12-04 16:55 Hi3531A添加串口uart1-3
----------- --------- ---------- ----- ----
1659006 13
- 上一篇:组态王6.53工程密码.rar
- 下一篇:基于FPGA的UART设计
相关资源
- cc2540串口透传源码
- STM32程序。多串口。DMA方式。C代码
- STM8程序,时钟配置,串口,定时器等
- modbus协议调试工具 支持TCP和串口
- pc蓝牙虚拟串口软件BlueSoleil 完美破解
- 数字温湿度传感器DHT11详解及例程利用
- stm32f4 dcmi连接OV2640串口发送
- 小草手把手教您labview上位机串口
- stm32+MPU6050+GPS+SD卡读写+ad采集+串口输
- STM32f103多串口程序 32单片机程序 亲测
- 基于STM32F103+ADS1292的心率实时显示串口
- 虚拟串口工具9.0 中文版 (支持win10)
- 虚拟串口破解版
- Labview串口通信开发(值得拥有).pd
- 欧姆龙USB转串口驱动
- YAT3串口通讯工具
- RT1052串口DMA接收不定长数据.zip
- PL2303_Prolific_DriverInstaller_v10518
- 串口通信+多线程+数据错乱自动恢复
- USB转串口驱动程序(CP2102)
- 友善串口助手 V2.5.8.0825 Serial Port Uti
- STM32F429ZITG6驱动OV2640串口图像助手显示
- Zigbee串口透传程序
- 可以自动保存文件,不添加换行符的
- stm32f103c8串口中断不定长接收基于cu
- STM8 模拟串口 IO口模拟
- Digi的XBee-wifi 串口转无线模块资料包
- STM32F407ADC采集信号通过DMA发送给内存
- 完整工程串口12、DHT11、BH1750、mh-z14
- gy906 90614 STM32F1读取温度lcd显示 串口和
评论
共有 条评论