📄 uartirdasend.c
字号:
/****************************************Copyright (c)****************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File Name: UARTIrDASend.c
** Last modified Date: 2007.09.25
** Last Version: v1.0
** Description: Stellaris系列单片机IrDA发送程序
**
**--------------------------------------------------------------------------------------------------------
** Created By: Ni Likao
** Created date: 2007.09.25
** Version: v1.0
** Descriptions: 采用UART的IrDA模式进行通信,通信协议与UART一样,只是通过红外接口来发送数据,
** IrDA模式下,串口TXD输出的信号将被调制.
**
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
*********************************************************************************************************/
#include "hw_ints.h"
#include "hw_memmap.h"
#include "hw_types.h"
#include "hw_uart.h"
#include "gpio.h"
#include "sysctl.h"
#include "uart.h"
#define UART0_PIN GPIO_PIN_0 | GPIO_PIN_1 /* 定义UART0的功能管脚 */
/*********************************************************************************************************
** Function name: main
** Descriptions: 该范例程序演示了通过串口IrDA模式发送数据,UART将被配置为 9600
** 波特率,8-n-1模式持续发送数据。
** input parameters: 无
** output parameters: 无
** Returned value: 无
** Created By: Ni Likao
** Created date: 2007.09.17
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**--------------------------------------------------------------------------------------------------------
*********************************************************************************************************/
int main (void)
{
unsigned char i = 0;
unsigned int j = 0;
SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC |
SYSCTL_OSC_MAIN | SYSCTL_XTAL_6MHZ); /* 设定晶振为时钟源 */
SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0); /* 使能UART0外设 */
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); /* 使能GPIOA外设 */
GPIOPinTypeUART(GPIO_PORTA_BASE, UART0_PIN); /* 配置UART0的功能管脚 */
HWREG(UART0_BASE + UART_O_CTL) |= UART_CTL_SIREN; /* 配置UART0为IrDA模式 */
UARTConfigSet(UART0_BASE, 9600, (UART_CONFIG_WLEN_8 |
UART_CONFIG_STOP_ONE |
UART_CONFIG_PAR_NONE)); /* 配置UART0的波特率及端口参数 */
while (1) {
for (i = 0; i < 50; i++) {
UARTCharPut(UART0_BASE, i); /* 发送数据0x00~0x31 */
for (j = 8000; j > 0; j--);
}
}
}
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -