znFATWord文档下载推荐.docx
- 文档编号:16845783
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:85
- 大小:43.80KB
znFATWord文档下载推荐.docx
《znFATWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《znFATWord文档下载推荐.docx(85页珍藏版)》请在冰豆网上搜索。
//将一个字符串转为32位的变量
#include<
reg51.h>
string.h>
#include"
uart.h"
myfun.h"
/**
|振南电子原创程序模块STC51串口操作|
**************************/
/**************************************************************************
-功能描述:
51单片机的串口初始化
-隶属模块:
STC51串口操作
-函数属性:
外部,使用户使用
-参数说明:
无
-返回说明:
-注:
振南的很多产品均采用串口来进行操作,所以正确的初始化串口十分重要
**************************************************************************/
voidUART_Init()
{
PCON|=0x80;
//PCON的最高位SMOD=1时波特率加倍
TMOD=0x20;
//时器1为方式2初值自动装入产生波特率
TH1=0xfd;
//定时器初始为0XFd,晶振为22.1184MHz,本函数实际产生的波特率为38400bps
TL1=0xfd;
//同上
SCON=0x50;
//串口设置为方式1,REN=1,允许接收
TR1=1;
//启动定时器1
ES=1;
//使能串口接收中断,
EA=1;
//打开所有中断
}
51单片机的串口中断处理函数
外部,使用户使用(在此中断函数中常用来处理从串口收到的数据)
振南的很多产品,都是配合“超级终端”来进行演示的,在“超级终端”中
敲入的命令就是从计算机的串口发出,由单片机从串口接收,接收到的串口
数据就在此中断函数中进行处理,完成命令接收及处理、命令解析等工作。
voidsio_int()interrupt4using3//串口中断函数
ES=0;
//串口中断处理
/*
if(RI)
{
if(SBUF!
=0x08)//如果接收到的是退格(ASCII码为0x08)
cmd_buf[counter++]=SBUF;
else
counter--;
RI=0;
}
if(SBUF==0x0d)
cmd_buf[counter-1]=0;
counter=0;
flag=1;
*/
51单片机的串口发送字节的函数
mydata:
要发送的一个字节
发送一个字节,是串口发送的基础操作
voidUART_Send_Byte(unsignedcharmydata)
TI=0;
SBUF=mydata;
while(!
TI);
51单片机的串口发送0d0a,即回车换行
此函数就是发送0d0a这两个字节,在“超级终端”上会有回车换行的效果
voidUART_Send_Enter()
UART_Send_Byte(0x0d);
UART_Send_Byte(0x0a);
51单片机的串口发送字符串
s:
指向字符串的指针
如果在字符串中有'
\n'
,则会发送一个回车换行
voidUART_Send_Str(char*s)
intlen=strlen(s)-1;
inti;
for(i=0;
i<
len;
i++)
UART_Send_Byte(s[i]);
if(s[i]=='
)
UART_Send_Enter();
51单片机的串口发送数值
dat:
要发送的数值
函数中会将数值转为相应的字符串,发送出去。
比如4567转为"
4567"
voidUART_Put_Num(unsignedlongdat)
chartemp[20];
u32tostr(dat,temp);
UART_Send_Str(temp);
51单片机的串口发送调试信息
inf:
指向提示信息字符串的指针
dat:
一个数值,前面的提示信息就是在说明这个数值的意义
此函数在振南的工程中会经常看到,是方便调试用的
voidUART_Put_Inf(char*inf,unsignedlongdat)
UART_Send_Str(inf);
UART_Put_Num(dat);
UART_Send_Str("
\n"
);
/*
voidbinary(unsignedchardat)
unsignedchari;
unsignedchara[17];
8;
a[i]=((dat<
<
i)&
0x80)?
'
o'
:
'
;
a[i]=0;
strlen(a);
UART_Send_Byte(a[i]);
UART_Send_Byte('
*/
UART.c
/*******************************************************
+-----------------------------------------+
此源码版权属振南全权享有,如欲引用,敬请署名并告知
严禁随意用于商业目的,违者必究,后果自负
振南电子
->
产品网站
产品论坛
产品网店
产品咨询QQ:
987582714MSN:
yzn07@
WW:
yzn07
********************************************************/
#ifndef_MYTYPE_H_
#define_MYTYPE_H_
#defineUINT8Xunsignedcharxdata
#defineUINT8unsignedchar
#defineUINT16Xunsignedintxdata
#defineUINT16unsignedint
#defineUINT32Xunsginedlongxdata
#defineUINT32unsignedlong
#defineINT8Xcharxdata
#defineINT8char
#defineINT16Xintxdata
#defineINT16int
#defineINT32Xlongxdata
#defineINT32long
#ifndef__ZNFAT_H__
#define__ZNFAT_H__
mytype.h"
//类型重定义
|振南电子原创程序模块znFAT文件系统5.18|
//znFAT的裁减宏---------------------------------------------------------
//#defineZNFAT_ENTER_DIR//有此宏,函数znFAT_Enter_Dir()参与编译
//#defineZNFAT_OPEN_FILE//有此宏,函数znFAT_Open_File()参与编译
//#defineZNFAT_SEEK_FILE//有此宏,函数znFAT_Seek_File()参与编译
//#defineZNFAT_READ_FILE//有此宏,函数znFAT_Read_File()参与编译
//#defineZNFAT_READ_FILEX//有此宏,函数znFAT_Read_FileX()参与编译
//#defineZNFAT_ADD_DAT//有此宏,函数znFAT_Add_Dat()参与编译
//#defineZNFAT_CREATE_DIR//有此宏,函数znFAT_Create_Dir()参与编译
//#defineZNFAT_CREATE_FILE//有此宏,函数znFAT_Create_File()参与编译
//#defineZNFAT_DEL_FILE//有此宏,函数znFAT_Del_File()参与编译
//#defineZNFAT_XCOPY_FILE//有此宏,函数znFAT_XCopy_File()参与编译
//#defineZNFAT_RENAME_FILE//有此宏,函数znFAT_Rename_File()参与编译
//#defineZNFAT_GET_TOTAL_SIZE//有此宏,函数znFAT_Get_Total_Size()参与编译
//#defineznFAT_GET_REMAIN_CAP//有此宏,函数znFAT_Get_Remain_Cap()参与编译
cj.h"
//----------------------------------------------------------------------
#def
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- znFAT