亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? st7565P,nt7534液晶控制芯片在128X64點陣下的51環境液晶驅動程序
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <reg931.h>
#include <intrins.h>

#define uchar unsigned char
#define uint  unsigned int
#define FALSE 0
//-------------------------------------------------------------------------------------------------------
typedef unsigned char       BOOL;

// Data
typedef unsigned char       BYTE;
typedef unsigned short      WORD;
typedef unsigned long       DWORD;
/*******************************************************************************************/
/*////////////////////	LCD12864	\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*\
/********************************************************************************************/
//LCD 引腳定義
sbit SCLK 	= P0^1;
sbit SID  	= P2^0;
sbit A0   	= P0^0;
sbit CS1  	= P1^7;
sbit RES  	= P2^1;

uchar code ComTable[]={3,2,1,0,7,6,5,4,};

#define DISPLAY_ON()           Write_Instruction(0xaf)   // Display on
#define DISPLAY_OFF()          Write_Instruction(0xae)   // Display off
#define SET_ADC()              Write_Instruction(0xa1)   // Reverse disrect (SEG131-SEG0)
#define CLEAR_ADC()            Write_Instruction(0xa0)   // Normal disrect (SEG0-SEG131)
#define REVERSE_DISPLAY_ON()   Write_Instruction(0xa7)   // Reverse display : 0 illuminated
#define REVERSE_DISPLAY_OFF()  Write_Instruction(0xa6)   // Normal display : 1 illuminated
#define ENTIRE_DISPLAY_ON()    Write_Instruction(0xa5)   // Entire dislay   Force whole LCD point
#define ENTIRE_DISPLAY_OFF()   Write_Instruction(0xa4)   // Normal display
#define SET_BIAS()             Write_Instruction(0xa3)   // bias 1
#define CLEAR_BIAS()           Write_Instruction(0xa2)   // bias 0
#define SET_MODIFY_READ()      Write_Instruction(0xe0)   // Stop automatic increment of the column address by the read instruction 
#define RESET_MODIFY_READ()    Write_Instruction(0xee)   // Cancel Modify_read, column address return to its initial value just before the Set Modify Read instruction is started
#define RESET()                Write_Instruction(0xe2)
#define SET_SHL()              Write_Instruction(0xc8)   // SHL 1,COM63-COM0
#define CLEAR_SHL()            Write_Instruction(0xc0)   // SHL 0,COM0-COM63

/*******************************************************************************************/
/*////////////////////	CC2500	\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*\
/********************************************************************************************/
sbit SPI_CS 	= P0^2;
sbit SPI_SI 	= P0^5;
sbit SPI_SO 	= P0^3;
sbit SPI_SCK	= P0^4;
//sbit SPI_GDO0	= P1^6;

//#define REPORT_LEN		8
#define PACKAGE_LEN		64

xdata uchar rxBuffer[PACKAGE_LEN];
// CC2500 狀態
//#define CCxxx0_Ready()		SO
#define CRC_OK              0x80  
#define BYTES_IN_RXFIFO     0x7F 	//突發訪問TX FIFO
#define STATE_IDLE			0x01
#define RSSI                0
#define LQI                 1

// Definitions to support burst/single access:
#define WRITE_BURST     0x40
#define READ_SINGLE     0x80
#define READ_BURST      0xC0

//CC2500配置寄存器位于SPI地址從0x00到0x2F之間
#define CCxxx0_IOCFG2       0x00        // GDO2 輸出腳配置
#define CCxxx0_IOCFG1       0x01        // GDO1 輸出腳配置
#define CCxxx0_IOCFG0       0x02        // GDO0 輸出腳配置
#define CCxxx0_FIFOTHR      0x03        // RX FIFO and TX FIFO 門限
#define CCxxx0_SYNC1        0x04        // 同步詞匯,高字節
#define CCxxx0_SYNC0        0x05        // 同步詞匯,低字節
#define CCxxx0_PKTLEN       0x06        // 數據包長度
#define CCxxx0_PKTCTRL1     0x07        // 數據包自動控制
#define CCxxx0_PKTCTRL0     0x08        // 數據包自動控制
#define CCxxx0_ADDR         0x09        // 設備地址
#define CCxxx0_CHANNR       0x0A        // 信道數
#define CCxxx0_FSCTRL1      0x0B        // 頻率合成器控制
#define CCxxx0_FSCTRL0      0x0C        // 頻率合成器控制
#define CCxxx0_FREQ2        0x0D        // 頻率控制詞匯,高字節
#define CCxxx0_FREQ1        0x0E        // 頻率控制詞匯,中間字節
#define CCxxx0_FREQ0        0x0F        // 頻率控制詞匯,低字節
#define CCxxx0_MDMCFG4      0x10        // 調制器配置
#define CCxxx0_MDMCFG3      0x11        // 調制器配置
#define CCxxx0_MDMCFG2      0x12        // 調制器配置
#define CCxxx0_MDMCFG1      0x13        // 調制器配置
#define CCxxx0_MDMCFG0      0x14        // 調制器配置
#define CCxxx0_DEVIATN      0x15        // 調制器背離設置
#define CCxxx0_MCSM2        0x16        // 主通信控制狀態機配置
#define CCxxx0_MCSM1        0x17        // 主通信控制狀態機配置
#define CCxxx0_MCSM0        0x18        // 主通信控制狀態機配置
#define CCxxx0_FOCCFG       0x19        // 頻率偏移補償配置
#define CCxxx0_BSCFG        0x1A        // 位同步配置
#define CCxxx0_AGCCTRL2     0x1B        // AGC控制
#define CCxxx0_AGCCTRL1     0x1C        // AGC控制
#define CCxxx0_AGCCTRL0     0x1D        // AGC控制
#define CCxxx0_WOREVT1      0x1E        // 高字節時間0暫停
#define CCxxx0_WOREVT0      0x1F        // 低字節時間0暫停
#define CCxxx0_WORCTRL      0x20        // 電磁波激活控制
#define CCxxx0_FREND1       0x21        // 前末端RX配置
#define CCxxx0_FREND0       0x22        // 前末端TX配置
#define CCxxx0_FSCAL3       0x23        // 頻率合成器校準
#define CCxxx0_FSCAL2       0x24        // 頻率合成器校準
#define CCxxx0_FSCAL1       0x25        // 頻率合成器校準
#define CCxxx0_FSCAL0       0x26        // 頻率合成器校準
#define CCxxx0_RCCTRL1      0x27        // RC振蕩器配置
#define CCxxx0_RCCTRL0      0x28        // RC振蕩器配置
#define CCxxx0_FSTEST       0x29        // 頻率合成器校準控制
#define CCxxx0_PTEST        0x2A        // 產品測試
#define CCxxx0_AGCTEST      0x2B        // AGC 測試
#define CCxxx0_TEST2        0x2C        // 不同的測試設置
#define CCxxx0_TEST1        0x2D        // 不同的測試設置
#define CCxxx0_TEST0        0x2E        // 不同的測試設置


//對0x30-0x3D間的地址來說,突發位用以在狀態寄存器和命令濾波之間選擇(如下)。
//狀態寄存器只讀。突發讀取對狀態寄存器是不可取的,故它們每次只能被讀一個。

//命令濾波  這些命令用來關閉晶體振蕩器,開啟傳輸模式和電磁波激活等
#define CCxxx0_SRES         0x30        // 重啟芯片
#define CCxxx0_SFSTXON      0x31        // 開啟和校準頻率合成器(若MCSM0.FS_AUTOCAL=1)
#define CCxxx0_SXOFF        0x32        // 關閉晶體振蕩器
#define CCxxx0_SCAL         0x33        // 校準頻率合成器并關斷(開啟快速啟動)
#define CCxxx0_SRX          0x34        // 啟用RX。若上一狀態為空閑且MCSM0.FS_AUTOCAL=1則首先運行校準。
#define CCxxx0_STX          0x35        // 空閑狀態:啟用TX。若MCSM0.FS_AUTOCAL=1首先運行校準。
										// 在RX狀態且CCA啟用:若信道為空則進入TX
#define CCxxx0_SIDLE        0x36        // 離開RX/TX,關斷頻率合成器并離開電磁波激活模式若可用
#define CCxxx0_SAFC         0x37        // 運行頻率合成器的AFC調節
#define CCxxx0_SWOR         0x38        // 運行自動RX選舉序列(電磁波激活)
#define CCxxx0_SPWD         0x39        // 當CSn為高時進入功率降低模式。
#define CCxxx0_SFRX         0x3A        // 沖洗RX FIFO緩沖
#define CCxxx0_SFTX         0x3B        // 沖洗TX FIFO緩沖
#define CCxxx0_SWORRST      0x3C        // 重新設置真實時間時鐘
#define CCxxx0_SNOP         0x3D        // 無操作. 可能用來為更簡單的軟件將濾波命令變為2字節。

//狀態寄存器
#define CCxxx0_PARTNUM          0x30	//CC2550的組成部分數目
#define CCxxx0_VERSION          0x31	//當前版本數
#define CCxxx0_FREQEST          0x32	//頻率偏移估計
#define CCxxx0_LQI              0x33	//連接質量的解調器估計
#define CCxxx0_RSSI             0x34	//接收信號強度指示
#define CCxxx0_MARCSTATE        0x35	//控制狀態機狀態
#define CCxxx0_WORTIME1         0x36	//WOR計時器高字節
#define CCxxx0_WORTIME0         0x37	//WOR計時器低字節
#define CCxxx0_PKTSTATUS        0x38	//當前GDOx狀態和數據包狀態
#define CCxxx0_VCO_VC_DAC       0x39	//PLL校準模塊的當前設定
#define CCxxx0_TXBYTES          0x3A	//TX FIFO中的下溢和比特數
#define CCxxx0_RXBYTES          0x3B	//RX FIFO中的下溢和比特數
#define CCxxx0_RCCTRL1_STATUS   0x3C	//RC振蕩器狀態
#define CCxxx0_RCCTRL0_STATUS   0x3D

#define CCxxx0_PATABLE          0x3E	//用來選擇PA能量控制設置
#define CCxxx0_TXFIFO           0x3F	//單字節訪問TX FIFO
#define CCxxx0_RXFIFO           0x3F

uchar package[64];
void SPI_WAIT()	
{	
	uchar i;
	for (i=0; i<10; i++);
}
void halWait(uint timeout) 
{ 
    do { 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_(); 
                _nop_();  
    } while (--timeout); 
}
void	OpenSpi()
{
	SPI_SCK	=0;
	SPI_SI	=0;
	SPI_CS	=0;
	while (SPI_SO);
}

void	CloseSpi()
{
	SPI_CS	=1;
}
void WriteByte(uchar Data)
{
   	uchar i;//,temp_si;
	for (i=0; i<8; i++)
	{
		if (Data&0x80)
			SPI_SI=1;
		else
			SPI_SI=0;
        _nop_();
        _nop_();
        _nop_();
		
		SPI_SCK=1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
		SPI_SCK=0;

		Data<<=1;
	}
}
uchar	ReadByte()
{
	uchar i;
	uchar Data;

	for (i=0; i<8; i++)
	{

		Data<<=1;
        _nop_();
        _nop_();

		SPI_SCK=0;

		if (SPI_SO)
			Data |= 0x01;
		else
			Data &= 0xfe;

        _nop_();
        _nop_();
       _nop_();
        _nop_();

		SPI_SCK=1;

        _nop_();
        _nop_();
	}
	return Data;
}
/*
uchar _crc_ibutton_update(uchar crc,uchar data_t)
{	
    uchar i;

   crc = crc^data_t;
    for (i = 0; i < 8; i++)
    {
        if (crc & 0x01)
            crc = (crc >> 1)^0x8C;
        else
            crc >>= 1;
    }

   return crc;	 
}  
// 8位CRC檢驗碼
uchar crc8_ibutton(uchar *data_t, uchar n) 
{
	char crc = 0x00;
	while(n) 
	{
		crc = _crc_ibutton_update(crc, *data_t ++);
		--n;
	}

	return crc;

}*/
void SPI_Master_Init()
{
	//設置SS SI SCK為輸出(P0.2 P0.5 P0.4)(11開漏輸出,10僅為輸入(高阻),01推挽(上拉),準雙向口),其他為輸入P0.3
	P0M1 =0x08;		
	P0M2 =0x34;
	P1M1 =0x40;	//P1.2 P1.3只能配置為輸入口或開漏口。
	P2M2 =0x00;
}/*
void mcu_init()
{
	SPI_Master_Init();
}*/
void halSpiStrobe(BYTE strobe)
{
	OpenSpi();
	WriteByte(strobe);
	SPI_WAIT();
	CloseSpi();//拉高CS,數據發送完畢
}
BYTE halSpiReadReg(BYTE addr)
{
	uchar x;
	x=0;
	OpenSpi();
	WriteByte(addr|READ_SINGLE);
	SPI_WAIT();
	x=ReadByte();
	CloseSpi();

	return x;
}/**/

void halSpiWriteReg(BYTE addr,BYTE value)
{
	OpenSpi();
	WriteByte(addr);
	SPI_WAIT();
	WriteByte(value);
	SPI_WAIT();
	CloseSpi();
}
void halSpiWriteBurstReg(BYTE addr, BYTE *buffer, BYTE count)
{
	uchar i;
	OpenSpi();
	WriteByte(addr|WRITE_BURST);
	SPI_WAIT();
	for(i=0;i<count;i++)
	{
		WriteByte(buffer[i]);
		SPI_WAIT();
	}
	CloseSpi();
}
void halSpiReadBurstReg(BYTE addr, BYTE *buffer, BYTE count)
{
	uchar i;
	OpenSpi();
	WriteByte(addr|READ_BURST);
	SPI_WAIT();
	for(i=0;i<count;i++)
	{
		buffer[i]=ReadByte();
		SPI_WAIT();
	}
	CloseSpi();
}/**/
BYTE halSpiReadStatus(BYTE addr)
{
	uchar x;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av午夜一区麻豆| 在线免费一区三区| 国产精品综合一区二区三区| 麻豆中文一区二区| 亚洲欧洲综合另类| 日本一区二区三区在线观看| 久久久99精品久久| 欧美成人午夜电影| 国产欧美一区二区三区在线看蜜臀| 日韩精品在线网站| 久久亚洲精品国产精品紫薇| 久久久久久久久99精品| 国产三级欧美三级日产三级99| 欧美精品一区二区蜜臀亚洲| 678五月天丁香亚洲综合网| 制服.丝袜.亚洲.中文.综合 | 欧美日韩一区成人| 欧美电影精品一区二区 | 国产精品拍天天在线| 亚洲精品免费一二三区| 亚洲va国产va欧美va观看| 麻豆成人综合网| 97国产一区二区| 精品视频全国免费看| 精品国产91乱码一区二区三区| 久久久久久久综合| 天天免费综合色| 国产一区二区三区四区五区入口| 日韩二区三区四区| 99久久精品国产导航| 日韩欧美一区二区不卡| 国产精品美日韩| 高清成人免费视频| 久久亚洲私人国产精品va媚药| 中文字幕一区视频| 国产成人8x视频一区二区| 91麻豆福利精品推荐| 精品国产a毛片| 蜜臀a∨国产成人精品| 在线免费观看日本一区| 国产精品女同一区二区三区| 婷婷六月综合网| 91蝌蚪porny| 亚洲人成网站精品片在线观看| 久久精品99国产精品日本| 欧美亚洲国产一区在线观看网站| 精品入口麻豆88视频| 人人爽香蕉精品| 51精品视频一区二区三区| 一二三区精品福利视频| 色偷偷88欧美精品久久久 | 欧美激情一区二区三区| 免费不卡在线视频| 久久青草国产手机看片福利盒子| 亚洲黄一区二区三区| 天堂久久久久va久久久久| 欧美亚洲国产bt| 久久国产日韩欧美精品| 国产亚洲欧美日韩日本| 91豆麻精品91久久久久久| 亚洲h动漫在线| 久久亚洲免费视频| 欧美日韩精品二区第二页| 国产一区亚洲一区| 亚洲激情第一区| 欧美国产综合色视频| 91麻豆国产在线观看| 精品一区二区三区不卡| 日韩美女视频19| 欧美成人r级一区二区三区| 成人18精品视频| 久久99国内精品| 亚洲综合一区在线| 中文字幕不卡三区| 4438x成人网最大色成网站| 99精品国产91久久久久久| 激情综合网av| 午夜电影网亚洲视频| 国产精品久久毛片a| 久久精品一区八戒影视| 日韩亚洲欧美综合| 欧美四级电影网| 91毛片在线观看| 99精品热视频| 国产白丝网站精品污在线入口| 美腿丝袜一区二区三区| 午夜电影网一区| 蜜桃av一区二区| 久久超碰97人人做人人爱| 精品一区二区在线免费观看| 日日噜噜夜夜狠狠视频欧美人 | 国产精品嫩草99a| 亚洲国产欧美日韩另类综合| 国产高清精品久久久久| 国产东北露脸精品视频| 欧美美女激情18p| 1000部国产精品成人观看| 精品一区二区三区免费播放| 欧美日韩在线不卡| 亚洲综合免费观看高清完整版在线 | 欧美一区二区三区不卡| 亚洲激情男女视频| 色噜噜狠狠成人中文综合| 中文字幕一区二区三区不卡| 国产在线看一区| 国产色综合一区| 成人国产精品免费| 亚洲欧洲av在线| 99精品热视频| 亚洲精品视频免费看| 白白色亚洲国产精品| 亚洲欧洲国产专区| 色综合久久六月婷婷中文字幕| 国产精品妹子av| 色域天天综合网| 石原莉奈一区二区三区在线观看 | 日本久久一区二区| 丝袜美腿亚洲综合| 精品国产凹凸成av人网站| 国产一区二区三区美女| 国产精品乱码一区二区三区软件| 国产精品77777| 亚洲图片另类小说| 制服丝袜亚洲精品中文字幕| 男女激情视频一区| 国产精品美女一区二区三区 | 视频一区免费在线观看| 久久女同精品一区二区| 成人免费av网站| 亚洲va中文字幕| 久久精品欧美一区二区三区麻豆 | 亚洲成人av中文| 久久久国产综合精品女国产盗摄| 99久久综合色| 久久丁香综合五月国产三级网站| 欧美激情一区二区在线| 日韩欧美中文字幕制服| 波多野结衣中文一区| 亚洲视频免费在线观看| 日本一区二区综合亚洲| 亚洲欧美色综合| 日韩在线一区二区| 99久久国产综合精品女不卡| 在线不卡中文字幕播放| 狠狠色狠狠色合久久伊人| 久久精品一区二区三区不卡| 国产mv日韩mv欧美| 1区2区3区国产精品| 欧美日韩综合在线免费观看| 日产国产欧美视频一区精品| 亚洲精品一区二区三区福利| 成人黄色软件下载| 久久精品99国产精品日本| 亚洲欧美日韩国产手机在线| 欧美精品一卡二卡| 91影院在线免费观看| 青青草97国产精品免费观看| 国产日韩视频一区二区三区| 欧美日韩免费在线视频| 久久97超碰国产精品超碰| 自拍av一区二区三区| 精品盗摄一区二区三区| 欧美日韩国产经典色站一区二区三区 | 亚洲国产一区视频| 亚洲免费在线电影| 亚洲天堂av老司机| 国产精品久久久久久久裸模| 亚洲精品在线观| 欧美一区二区三区男人的天堂| 欧美性猛片aaaaaaa做受| www.av亚洲| 91视频在线看| 欧美亚洲丝袜传媒另类| 色猫猫国产区一区二在线视频| 99久久精品国产一区| 91亚洲精品久久久蜜桃| 色欧美片视频在线观看| 色偷偷成人一区二区三区91| 欧美性色黄大片手机版| 欧美日韩国产经典色站一区二区三区| 91福利在线播放| 久久亚洲精华国产精华液| 欧美一卡二卡三卡四卡| 91黄色激情网站| 国产麻豆视频一区二区| 亚洲精品视频自拍| 久久免费偷拍视频| 国产一区亚洲一区| 一区二区三区免费网站| 亚洲地区一二三色| 亚洲成av人片在线观看无码| 亚洲人成在线观看一区二区| 日韩伦理免费电影| 美女在线观看视频一区二区| 国产成人一区在线| 不卡av在线网| 精品少妇一区二区三区视频免付费| 26uuu精品一区二区| 亚洲国产毛片aaaaa无费看| 韩国中文字幕2020精品|