串口助手数据发送与接收(中断法)

简介: 串口助手数据发送与接收(中断法)宏定义初始化数据发送数据接收主函数中断


宏定义



#include<iocc2530.h>
#include<string.h>
#define uint unsigned int
#define uchar unsigned char
#define LED1 P1_0
#define LED2 P1_5


初始化


/**********************
*函数名称:Init_Led
*函数功能:初始化led引脚
*入口函数:
*出口函数:
**********************/
void Init_Led(void)
{
 P1SEL&=~0X39;
 P1DIR|=0X39;
 P1&=~0x39;
}


/**********************
*函数名称:Init_UART
*函数功能:初始化串口
*入口函数:
*出口函数:
**********************/
void Init_UART(void)
{
 PERCFG&=~0x01;
 CLKCONCMD&=0X80;
 U0CSR|=0X80;
 P0SEL|=0X0C;
 U0BAUD=216;
 U0GCR=10;
 U0CSR|=0X40; 
 UTX0IF=0;
}


数据发送


/**********************
*函数名称:Send_UART_String
*函数功能:数据发送
*入口函数:Receive_UART_String()
*出口函数:
**********************/
void Send_UART_String(char c)
{
     LED1=0;
     LED2=1;
     U0DBUF=c;
  while(UTX0IF==0);
     UTX0IF=0; 
}


数据接收


/**********************
*函数名称:Receive_UART_String()
*函数功能:数据接收
*入口函数:
*出口函数:
*返回类型:char
**********************/
char Receive_UART_String()
{
  char c;
  LED1=1;
  LED2=0;
  while(!URX0IF);
  URX0IF=0;
  c=U0DBUF;
  return c;
}


主函数


main()
{
  Init_Led();
  Init_UART();
  while(1)
  {
  }
}


中断


#pragma vector=URX0_VECTOR
__interrupt void URX0_ISR(void)
{
   char Data;
   Data=Receive_UART_String();
   Send_UART_String(Data);
   Data=~Data;
}


相关文章
|
1月前
|
监控
LabVIEW与串口通讯在运行一段时间后出现数据接收中断的问题
LabVIEW与串口通讯在运行一段时间后出现数据接收中断的问题
33 0
|
10月前
|
索引
串口助手(串口发送接收数据, 定时, 清空, hex显示)
串口助手(串口发送接收数据, 定时, 清空, hex显示)
455 0
I/O设备与主机信息传送的控制方式以及什么是中断
I/O设备与主机信息传送的控制方式以及什么是中断
205 0
|
C语言 芯片
STM32学习笔记(5) 串口通讯-接收与发送
一个码元就是一个脉冲信号,一个脉冲信号有可能携带1bit数据,也有可能携带2bit数据、4bit数据!你发送一个脉冲信号,如果就可以携带4bit数据,肯定发送速率更快啊!
354 0
|
Linux 芯片
stm32-HAL使用usart发送中断判断发送库的一个问题
stm32-HAL使用usart发送中断判断发送库的一个问题
192 0
stm32-HAL使用usart发送中断判断发送库的一个问题
|
移动开发 缓存 物联网
串口接收并处理数据流程|学习笔记
快速学习串口接收并处理数据流程
612 0
串口接收并处理数据流程|学习笔记
|
数据采集 异构计算
FPGA-串口通信的接收模块(发送接收模块)
FPGA-串口通信的接收模块(发送接收模块)
197 0
|
Ubuntu Linux C语言
用C写蓝牙通讯程序:扫描、读取、发送
在Linux下,通过bluez 蓝牙库可以用C语言轻松实现蓝牙通信。在ubuntu下可以用 apt-get install libbluetooth-dev 安装该库。下面是几个简单示例。
2072 0
串口助手数据发送与接收(查询法)
串口助手数据发送与接收(查询法) 宏定义 初始化 数据发送 数据接收 主函数
450 0
向PC端发送数据(中断方式)
向PC端发送数据(中断方式) 宏定义 初始化 延迟 数据 中断 主函数
131 0