91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 41KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-08
  • 語言: 其他
  • 標簽: 4倍頻??串口輸出??

資源簡介

本程序經過高手大哥調試正確可用 下載就可直接使用 精度準確

資源截圖

代碼片段和文件信息


#include?“reg51.h“
#include?“intrins.h“

typedef?unsigned?char?BYTE;
typedef?unsigned?int?WORD;

#define?UART_IDLE ???0
#define?UART_SND_BUSY??1
#define?UART_RCV_BUSY??1
#define?FOSC?11059200L
//緩沖區大小
#define?RECV_BUFFER_SIZE?5

//sbit?bit9?=?P2^2;
bit?busy;

//接收緩沖數據結構
struct?RecvBuffer
{
BYTE?buffer[RECV_BUFFER_SIZE];//使用數組定義緩存大小
long?out;
long?in;
long?rbufCount;//緩存大小計數
};

struct?RecvBuffer?rbuf;

//--------------------------------------------------------
//發送程序
//--------------------------------------------------------

void?SendData(BYTE?dat)
{
while(busy?!=?UART_IDLE);
busy?=?UART_SND_BUSY;//清標志位
SBUF?=?dat;
}

?//--------------------------------------------------------
?//初始化發送的數據
?//--------------------------------------------------------
//發送字符串
void?SendString(char?*s)
{
while(*s)
{
SendData(*s++);
}
}
//---------------------------------------------------------
//接收緩存區定義
//--------------------------------------------------------- ??

//uart接收數據緩沖區
void?rbuf_init(struct?RecvBuffer?*?rbuf);
long?rbuf_conten_size(struct?RecvBuffer?*?rbuf);
void?rbuf_clear(struct?RecvBuffer?*?rbuf);
void?delay(long?count);
//-----------------------------------------------------
//-----------------------------------------------------

//uart接收緩沖?初始化
void?rbuf_init(struct?RecvBuffer?*?rbuf)
{
rbuf_clear(rbuf);
}

//uart接收緩沖?清空緩沖
void?rbuf_clear(struct?RecvBuffer?*?rbuf)
{
rbuf->rbufCount?=?rbuf->out?=?rbuf->in?=?0;
}

//清空串口數據
void?uartFlash()
{
rbuf_clear(&rbuf);
}

//--------------------------------------------------------
//--------------------------------------------------------

//uart接收緩沖?獲取數據大小
long?rbuf_conten_size(struct?RecvBuffer?*?rbuf)
{

return?rbuf->rbufCount;
}

//----------------------------------------------------------------
//uart接收緩沖?從緩沖讀取
//----------------------------------------------------------------

long?rbuf_write_to_buf(struct?RecvBuffer?*?rbufBYTE?*?bufferlong?count)
{
//計算COPY的大小
long?i;
long?rbufCount?=?rbuf_conten_size(rbuf);//-----?
long?cpyCount;
?//rbuf沒有數據
?if(rbufCount?==?0)
?{
? return?0;
?}

?//不拷貝數據
?if(count?==?0)//count沒有賦初值?
?{
? return?0;
?}

//保證要拷貝的大小,不超過緩沖區
cpyCount?=?rbufCount?>?count??count?:?rbufCount;

for(i?=?0?;?i? {
//COPY?串口數據更新rbuf
buffer[i]?=?rbuf->buffer[rbuf->out];
? ++rbuf->out;
rbuf->out?=?rbuf->out?%??RECV_BUFFER_SIZE;

}

//
while(busy?==?UART_RCV_BUSY);
ES?=?0;
rbuf->rbufCount?-=?cpyCount;
ES?=?1;

return?cpyCount;
}
//---------------------------------------------------------
//串口初始化
//---------------------------------------------------------

void?uartInit(long?baud)
{
TMOD=?0x20;//定時器工作方式選擇
SCON=0x50;//串口工作方式選擇
TH1=?TL1?=?-(FOSC/12/32/baud);//裝載計數初值
TR1?=?1;//開啟定時器1
ES?=?1;
EA?=?1;

rbuf_init(&rbuf);
}

//----------------------------------------------------------
//接收

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????4231??2012-11-24?19:02??光電編碼\51uart.c

?????文件????????604??2012-11-26?13:16??光電編碼\51uart.h

?????文件???????8878??2012-11-28?21:15??光電編碼\51uart.LST

?????文件??????10270??2012-11-28?21:15??光電編碼\51uart.OBJ

????.......?????50521??2012-11-24?17:10??光電編碼\guangdian.uvopt

????.......?????????0??2012-11-24?17:09??光電編碼\guangdian_uvproj.bak

?????文件???????3954??2012-11-28?21:15??光電編碼\HXA.c

?????文件??????16253??2012-11-28?21:15??光電編碼\光電編碼

?????文件???????3253??2012-11-28?20:56??光電編碼\光電編碼.c

?????文件???????5970??2012-11-28?21:15??光電編碼\光電編碼.hex

?????文件?????????48??2012-11-28?21:15??光電編碼\光電編碼.lnp

?????文件??????10417??2012-11-28?21:15??光電編碼\光電編碼.LST

?????文件??????20408??2012-11-28?21:15??光電編碼\光電編碼.M51

?????文件???????7674??2012-11-28?21:15??光電編碼\光電編碼.OBJ

?????文件????????169??2012-11-28?21:16??光電編碼\光電編碼.plg

????.......?????57310??2012-11-28?21:16??光電編碼\光電編碼.uvopt

????.......?????13413??2012-11-24?19:08??光電編碼\光電編碼.uvproj

????.......?????57306??2012-11-28?21:15??光電編碼\光電編碼_uvopt.bak

????.......?????13247??2012-11-24?17:09??光電編碼\光電編碼_uvproj.bak

?????目錄??????????0??2012-11-28?21:16??光電編碼

-----------?---------??----------?-----??----

???????????????283926????????????????????20


評論

共有 條評論