📄 12864f020.c
字号:
/************************************************************************************
* NOTICE:
* NAME: CRT905ANC.C
* USE: The nRF905 RF Module Test Board(both transmit and receive function)
* VERSION: V0.1
* MCU: AT89C2051 DIP20 (Atmel)
* CRYSTAL: 4.00MHz
* CHANNEL:
* FREQUENCY: 433MHz
* FUNCTION DESCRIPTION:
1. CRC16
2. Address length: 40Bit (5Byte)
3. Address: AA,BB,CC,DD,EE(H->L)
4. Payload length: 64Bit (8 Bytes,Max 25 Bytes)
5. Out Power: 10dBm
6. DATA RATE: 100KBps
************************************************************************************/
#include <c8051f020.h>
#define uchar unsigned char
#define uint unsigned int
//sbit Test_led=P2^0;
/********** 12864LCD引脚定义 **********
sbit CSs = P3^5;
sbit SID = P3^4;
sbit SCLK = P3^3;
sbit PSB = P3^2;
sbit RESET = P3^1;
*/
sbit CSs = P2^0;
sbit SID = P2^1;
sbit SCLK = P2^2;
sbit PSB = P2^3;
sbit RESET = P2^4;
uchar code DIS1[] = {" RT12864M-10 "};
uchar code DIS2[] = {" 欢迎使用 "};
uchar code DIS3[] = {" 河北工程大学 "};
uchar code DIS4[] = {"TEL:0310-88888888"};
#include "12864.h"
unsigned char xxx[64]={"我在河北上大学合肥染色法染色法发是大法师的发生的发生的发生的发生"};
void os_init()
{
int i = 0;
WDTCN=0xDE; //看门狗定时器控制寄存器 禁用看门狗
WDTCN=0xAD;
OSCXCN = 0x67; //外部11.0592M晶振 1
for (i = 0; i < 3000; i++); //等待外部晶振稳定 2
while ((OSCXCN & 0x80) == 0);
OSCICN=0X08; ///此晶振选择语句需放到等待外部晶振稳定后 3
/////// OSCICN=0X05; 上面 1 2 3句可用这一句替换,从而使用内部晶振,其他都不用改
XBR0 = 0x00;
XBR1 = 0x00;
XBR2 = 0x40;//要写P0到P3一定要将次设置为0x40
//禁止若上啦,又设置为推挽输出则高电平上不去。
EA=0;
P1MDOUT=0x1f; //只能将要作为输入口的写一,不要都写一,否则会出错//想对P1端口写1就要将(此寄存器)所对应的位设置为一
}
void main(void)
{
os_init();
lcdinit();
while (1)
{
display(xxx);
P7=0X00;
// transmit_mode(); //The test board working in the transmit mode
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -