资源简介
单片机串口发送指令控制LED

代码片段和文件信息
#include “ioCC2530.h“
#include
#define D1 P1_4
#define D2 P1_5
#define D3 P1_6
#define D4 P1_7
typedef unsigned char uchar;
typedef unsigned int uint;
uchar str1[20]=“What is your name?“;
uchar str2[7]=“Hello “;
uchar Recdata[20];//存放串口接收数据的数组
uchar RXTXflag=1;//发送接收标志
uchar temp;//临时全局变量存放串口接收到的字符
uint datanumber = 0;//串口接收字符个数
//uint stringlen;
void Delay(int n)
{
int ij;
for(i=0;i for(j=0;j<10;j++);
}
void initUART(void)
{
CLKCONCMD &= ~0x40;
while(CLKCONSTA & 0x40);//循环等待
CLKCONCMD &= ~0x47;
PERCFG = 0x00;
P0SEL = 0x3C;
P2DIR &= ~0xC0;
U0CSR |= 0x80;
U0GCR |= 11;
U0BAUD |= 216;
UTX0IF =1;
U0CSR |= 0x40;//允许串口接收
IEN0 |= 0x84;//使能串口接收中断、总中断
}
void UartTX_Send_String(uchar *Dataint len)
{
int j;
for(j=0;j {
U0DBUF = *Data++;
while(UTX0IF==0);
UTX0IF = 0;
}
}
void main(void)
{
P1DIR |= 0xF0;
initUART();
UartTX_Send_String(str120);
while(1)
{
if (RXTXflag==1)//串口接收
{
if (temp!=0)
{
if ((temp!=‘#‘)&&(datanumber<20))
{
Recdata[datanumber++]=temp;
}
else//单片机串口接收完所有字符
{
RXTXflag=3;
//识别控制命令
switch(Recdata[0])
{
case ‘1‘:
if (Recdata[1]==‘1‘)
D1=0;
else
D1=1;
break;
case ‘2‘:
if (Recdata[1]==‘1‘)
D2=0;
else
D2=1;
break;
case ‘3‘:
if (Recdata[1]==‘1‘)
D3=0;
else
D3=1;
break;
case ‘4‘:
if (Recdata[1]==‘1‘)
D4=0;
else
D4=1;
break;
case ‘9‘:
if (Recdata[1]==‘1‘)
{
D1=D2=D3=D4=0;
}
else
{
D1=D2=D3=D4=1;
}
break;
}
}
temp=0;
}
}
if (RXTXflag==3)//串口发送
{
U0CSR &= ~0x40;
UartTX_Send_String(str26);
UartTX_Send_String(Recdatadatanumber);
U0CSR |= 0x40;
RXTXflag=1;//继续进行串口接收操作
datanumber=0;//串口接收数据的指针清零
}
}
}
//串口接收中断服务程序
#pragma vector=URX0_VECTOR
__interrupt void UART0_ISR(void)
{
URX0IF =0;
temp=U0DBUF;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 14042 2014-11-12 09:16 UARTLED\Debug\Exe\led.hex
文件 140 2014-11-12 09:16 UARTLED\Debug\Obj\led.pbd
文件 472 2014-11-12 09:28 UARTLED\Debug\Obj\led.pbi
文件 16741 2014-11-12 09:16 UARTLED\Debug\Obj\led.r51
文件 2618 2014-11-12 09:28 UARTLED\led.c
文件 2061 2014-11-12 09:28 UARTLED\led.dep
文件 34306 2014-09-28 14:27 UARTLED\led.ewd
文件 56223 2014-09-28 14:27 UARTLED\led.ewp
文件 157 2014-09-28 14:22 UARTLED\led.eww
文件 1436 2014-11-12 09:20 UARTLED\settings\led.cspy.bat
文件 5068 2014-11-11 14:55 UARTLED\settings\led.dbgdt
文件 871 2014-11-12 09:20 UARTLED\settings\led.dni
文件 2851 2014-11-12 09:16 UARTLED\settings\led.wsdt
目录 0 2014-09-28 14:49 UARTLED\Debug\Exe
目录 0 2014-09-28 14:22 UARTLED\Debug\List
目录 0 2014-11-12 09:28 UARTLED\Debug\Obj
目录 0 2014-09-28 14:49 UARTLED\Debug
目录 0 2014-09-28 14:49 UARTLED\settings
目录 0 2014-11-12 09:28 UARTLED
----------- --------- ---------- ----- ----
136986 19
- 上一篇:手机摄像头检测心率脉搏开源代码
- 下一篇:虚拟摄像头开发SDK及调用DEMO源代码
相关资源
- STM32蓝牙和串口程序
- LED灯串电路图说明
- stm32f103c8t6 4 oled.rar
- LCD显示温度+串口接收温度.rar
- WPF USB 网络 串口 通信软件
- DELPHI与西门子200PLC的串口通信实例
- Verilog FPGA UART串口控制器
- USB转串口驱动,FT232R驱动程序,最新
-
Cme
taFileDC的使用示例 - 光立方制作(原理图 源程序 LED搭接方
- PC -- 单片机的串口数据传输系统设计
- STM32F103 串口程序(完整版)
- stm32 ds18b20 温度传感器 测试通过
- PC 串口调试软件
- 使用OpenFileDialog打开文件对话框.rar
- [免费]基于stm32f103ze 的OLED驱动代码
- 51单片机读取温度数据存储到SD卡中并
- 单片机与PC机串口通讯仿真
- 串口调试助手V5.0
- 2410的led测试程序keil可以用
- 双串口调试助手 V4.0 _ 可同时调试两个
- 读取串口数据并画实时曲线的VC 程序
- 网络(UDP)转串口程序
- 串口绘制曲线 将收到的数据进行曲线
- 基于ARM蓝牙传输源程序
- JS操作本地网页串口源码
- LED背光的设计与优化
- AT89S ISP下载编程软件(串口)
- 串口操作类(justinio)
- 《Visual Basic 串口通信与测控应用技术
评论
共有 条评论